> ## Documentation Index
> Fetch the complete documentation index at: https://docs.seam.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Update Multiple Linked Access Codes

> Updates [access codes](https://docs.seam.co/low-level-apis/smart-locks/access-codes) that share a common code across multiple devices.

Specify the `common_code_key` to identify the set of access codes that you want to update.

See also [Update Linked Access Codes](https://docs.seam.co/low-level-apis/smart-locks/access-codes/creating-and-updating-multiple-linked-access-codes#update-linked-access-codes).



## OpenAPI

````yaml /openapi.json post /access_codes/update_multiple
openapi: 3.0.0
info:
  title: Seam Connect
  version: 1.0.0
servers:
  - url: https://connect.getseam.com
security: []
tags:
  - description: access_codes
    name: /access_codes
  - description: acs
    name: /acs
  - description: action_attempts
    name: /action_attempts
  - description: client_sessions
    name: /client_sessions
  - description: connected_accounts
    name: /connected_accounts
  - description: connect_webviews
    name: /connect_webviews
  - description: devices
    name: /devices
  - description: events
    name: /events
  - description: health
    name: /health
  - description: locks
    name: /locks
  - description: networks
    name: /networks
  - description: noise_sensors
    name: /noise_sensors
  - description: phones
    name: /phones
  - description: thermostats
    name: /thermostats
  - description: user_identities
    name: /user_identities
  - description: webhooks
    name: /webhooks
  - description: workspaces
    name: /workspaces
paths:
  /access_codes/update_multiple:
    post:
      tags:
        - /access_codes
      summary: Update Multiple Linked Access Codes
      description: >-
        Updates [access
        codes](https://docs.seam.co/low-level-apis/smart-locks/access-codes)
        that share a common code across multiple devices.


        Specify the `common_code_key` to identify the set of access codes that
        you want to update.


        See also [Update Linked Access
        Codes](https://docs.seam.co/low-level-apis/smart-locks/access-codes/creating-and-updating-multiple-linked-access-codes#update-linked-access-codes).
      operationId: accessCodesUpdateMultiplePost
      requestBody:
        content:
          application/json:
            schema:
              properties:
                common_code_key:
                  description: >-
                    Key that links the group of access codes, assigned on
                    creation by `/access_codes/create_multiple`.
                  type: string
                ends_at:
                  description: >-
                    Date and time at which the validity of the new access code
                    ends, in [ISO
                    8601](https://www.iso.org/iso-8601-date-and-time-format.html)
                    format. Must be a time in the future and after `starts_at`.
                  type: string
                name:
                  description: >-
                    Name of the new access code. Enables administrators and
                    users to identify the access code easily, especially when
                    there are numerous access codes.

                           Note that the name provided on Seam is used to identify the code on Seam and is not necessarily the name that will appear in the lock provider's app or on the device. This is because lock providers may have constraints on names, such as length, uniqueness, or characters that can be used. In addition, some lock providers may break down names into components such as `first_name` and `last_name`.

                           To provide a consistent experience, Seam identifies the code on Seam by its name but may modify the name that appears on the lock provider's app or on the device. For example, Seam may add additional characters or truncate the name to meet provider constraints.

                           To help your users identify codes set by Seam, Seam provides the name exactly as it appears on the lock provider's app or on the device as a separate property called `appearance`. This is an object with a `name` property and, optionally, `first_name` and `last_name` properties (for providers that break down a name into components).
                  type: string
                starts_at:
                  description: >-
                    Date and time at which the validity of the new access code
                    starts, in [ISO
                    8601](https://www.iso.org/iso-8601-date-and-time-format.html)
                    format.
                  type: string
              required:
                - common_code_key
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  ok:
                    type: boolean
                required:
                  - ok
                type: object
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      security:
        - client_session: []
        - client_session_with_customer: []
        - pat_with_workspace: []
        - console_session_with_workspace: []
        - api_key: []
      x-codeSamples:
        - lang: javascript
          label: Seam SDK
          source: |-
            await seam.accessCodes.updateMultiple({
              ends_at: "2025-06-22T05:05:47.000Z",
              starts_at: "2025-06-18T19:14:13.000Z",
              name: "My Updated Linked Access Code",
              common_code_key:
                "auto_set_by_create_multiple_550e8400-e29b-41d4-a716-446655440000",
            });

            /*
            // void
            */
        - lang: bash
          label: cURL
          source: >-
            curl --include --request POST
            "https://connect.getseam.com/access_codes/update_multiple" \
              --header "Authorization: Bearer $SEAM_API_KEY" \
              --json @- <<EOF
            {
              "ends_at": "2025-06-22T05:05:47.000Z",
              "starts_at": "2025-06-18T19:14:13.000Z",
              "name": "My Updated Linked Access Code",
              "common_code_key": "auto_set_by_create_multiple_550e8400-e29b-41d4-a716-446655440000"
            }

            EOF


            # Response:

            # {}
        - lang: python
          label: Seam SDK
          source: |-
            seam.access_codes.update_multiple(
                ends_at="2025-06-22T05:05:47.000Z",
                starts_at="2025-06-18T19:14:13.000Z",
                name="My Updated Linked Access Code",
                common_code_key="auto_set_by_create_multiple_550e8400-e29b-41d4-a716-446655440000",
            )

            # None
        - lang: ruby
          label: Seam SDK
          source: |-
            seam.access_codes.update_multiple(
              ends_at: "2025-06-22T05:05:47.000Z",
              starts_at: "2025-06-18T19:14:13.000Z",
              name: "My Updated Linked Access Code",
              common_code_key: "auto_set_by_create_multiple_550e8400-e29b-41d4-a716-446655440000",
            )

            # => nil
        - lang: php
          label: Seam SDK
          source: |-
            $seam->access_codes->update_multiple(
                ends_at: "2025-06-22T05:05:47.000Z",
                starts_at: "2025-06-18T19:14:13.000Z",
                name: "My Updated Linked Access Code",
                common_code_key: "auto_set_by_create_multiple_550e8400-e29b-41d4-a716-446655440000",
            );
        - lang: bash
          label: Seam CLI
          source: >-
            seam access-codes update-multiple --ends_at
            "2025-06-22T05:05:47.000Z" --starts_at "2025-06-18T19:14:13.000Z"
            --name "My Updated Linked Access Code" --common_code_key
            "auto_set_by_create_multiple_550e8400-e29b-41d4-a716-446655440000"


            # {}
components:
  securitySchemes:
    client_session:
      bearerFormat: Client Session Token
      scheme: bearer
      type: http
    client_session_with_customer:
      bearerFormat: Customer Client Session Token
      scheme: bearer
      type: http
    pat_with_workspace:
      bearerFormat: API Token
      scheme: bearer
      type: http
    console_session_with_workspace:
      bearerFormat: Console Session Token
      scheme: bearer
      type: http
    api_key:
      bearerFormat: API Key
      scheme: bearer
      type: http

````