/* * Automatically generated by codegen/smith.ts. * Do not edit this file. */ /** * Locking a door is pending. */ export type ActionAttempt = | { /** * ID of the action attempt. */ action_attempt_id: string /** * Action attempt to track the status of locking a door. */ action_type: 'LOCK_DOOR' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: { /** * Indicates whether the device confirmed that the lock action occurred. */ was_confirmed_by_device?: boolean | undefined } status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Action attempt to track the status of unlocking a door. */ action_type: 'UNLOCK_DOOR' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: { /** * Indicates whether the device confirmed that the unlock action occurred. */ was_confirmed_by_device?: boolean | undefined } status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Action attempt to track the status of scanning a credential. */ action_type: 'SCAN_CREDENTIAL' error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Error type to indicate that the Seam Bridge is disconnected or cannot reach the access control system. */ type: | 'uncategorized_error' | 'action_attempt_expired' | 'no_credential_on_encoder' | 'encoder_not_online' | 'encoder_communication_timeout' | 'bridge_disconnected' } /** * Result of scanning a card. If the attempt was successful, includes a snapshot of credential data read from the physical encoder, the corresponding data stored on Seam and the access system, and any associated warnings. */ result: { /** * Snapshot of credential data read from the physical encoder. */ acs_credential_on_encoder: { /** * A number or string that physically identifies the card associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ card_number: string | null /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) was created. */ created_at: string | null /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) will stop being usable. */ ends_at: string | null /** * Indicates whether the credential has been issued (encoded onto a card). */ is_issued: boolean | null /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) becomes usable. */ starts_at: string | null /** * Visionline-specific metadata for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ visionline_metadata?: | { /** * Indicates whether the card associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) is cancelled. */ cancelled?: boolean | undefined /** * Format of the card associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ card_format?: 'TLCode' | 'rfid48' | undefined /** * Holder of the card associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ card_holder?: string | undefined /** * Card ID for the Visionline card associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ card_id?: string | undefined /** * IDs of the common [entrances](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details) for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ common_acs_entrance_ids?: Array | undefined /** * Indicates whether the card associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) is discarded. */ discarded?: boolean | undefined /** * Indicates whether the card associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) is expired. */ expired?: boolean | undefined /** * IDs of the guest [entrances](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details) for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ guest_acs_entrance_ids?: Array | undefined /** * Number of issued cards associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ number_of_issued_cards?: number | undefined /** * Indicates whether the card associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) is overridden. */ overridden?: boolean | undefined /** * Indicates whether the card associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) is overwritten. */ overwritten?: boolean | undefined /** * Indicates whether the card associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) is pending auto-update. */ pending_auto_update?: boolean | undefined } | undefined } | null /** * Corresponding credential data as stored on Seam and the access system. */ acs_credential_on_seam: { /** * Access method for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). Supported values: `code`, `card`, `mobile_key`, `cloud_key`. */ access_method: 'code' | 'card' | 'mobile_key' | 'cloud_key' /** * ID of the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ acs_credential_id: string /** * ID of the credential pool to which the credential belongs. */ acs_credential_pool_id?: string | undefined /** * ID of the [access control system](https://docs.seam.co/low-level-apis/access-systems) that contains the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ acs_system_id: string /** * ID of the [ACS user](https://docs.seam.co/low-level-apis/access-systems/user-management) to whom the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) belongs. */ acs_user_id?: string | undefined /** * Vostio-specific metadata for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ assa_abloy_vostio_metadata?: | { /** * Indicates whether the credential should auto-join. For an auto-join credential, Seam automatically issues an override card if there are no other cards and a joiner card if there are existing cards on the doors. */ auto_join?: boolean | undefined /** * Names of the doors to which to grant access in the Vostio access system. */ door_names?: Array | undefined /** * Endpoint ID in the Vostio access system. */ endpoint_id?: string | undefined /** * Key ID in the Vostio access system. */ key_id?: string | undefined /** * Key issuing request ID in the Vostio access system. */ key_issuing_request_id?: string | undefined /** * IDs of the guest entrances to override in the Vostio access system. */ override_guest_acs_entrance_ids?: Array | undefined } | undefined /** * Number of the card associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ card_number?: string | null | undefined /** * Access (PIN) code for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ code?: string | null | undefined /** * ID of the [connected account](https://docs.seam.co/core-concepts/connected-accounts) to which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) belongs. */ connected_account_id: string /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) was created. */ created_at: string /** * Display name that corresponds to the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) type. */ display_name: string /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) validity 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`. */ ends_at?: string | undefined /** * Errors associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ errors: Array<{ /** * Date and time at which Seam created the error. */ created_at: string error_code: string message: string }> /** * Brand-specific terminology for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) type. Supported values: `pti_card`, `brivo_credential`, `hid_credential`, `visionline_card`. */ external_type?: | 'pti_card' | 'brivo_credential' | 'hid_credential' | 'visionline_card' | 'salto_ks_credential' | 'assa_abloy_vostio_key' | 'salto_space_key' | 'latch_access' | 'dormakaba_ambiance_credential' | 'hotek_card' | 'salto_ks_tag' | 'avigilon_alta_credential' | 'kisi_credential' | undefined /** * Display name that corresponds to the brand-specific terminology for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) type. */ external_type_display_name?: string | undefined /** * Indicates whether the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) has been encoded onto a card. */ is_issued?: boolean | undefined /** * Indicates whether the latest state of the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) has been synced from Seam to the provider. */ is_latest_desired_state_synced_with_provider?: boolean | null | undefined is_managed: boolean /** * Indicates whether the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) is a [multi-phone sync credential](https://docs.seam.co/capability-guides/mobile-access/issuing-mobile-credentials-from-an-access-control-system#what-are-multi-phone-sync-credentials). */ is_multi_phone_sync_credential?: boolean | undefined /** * Indicates whether the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) can only be used once. If `true`, the code becomes invalid after the first use. */ is_one_time_use?: boolean | undefined /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) was encoded onto a card. */ issued_at?: string | null | undefined /** * Date and time at which the state of the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) was most recently synced from Seam to the provider. */ latest_desired_state_synced_with_provider_at?: string | null | undefined /** * ID of the parent [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ parent_acs_credential_id?: string | undefined /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) validity starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */ starts_at?: string | undefined /** * ID of the [user identity](https://docs.seam.co/api/user_identities) to whom the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) belongs. */ user_identity_id?: string | undefined /** * Visionline-specific metadata for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ visionline_metadata?: | { /** * Indicates whether the credential should auto-join. For an auto-join credential, Seam automatically issues an override card if there are no other cards and a joiner card if there are existing cards on the doors. */ auto_join?: boolean | undefined /** * Card function type in the Visionline access system. */ card_function_type?: 'guest' | 'staff' | undefined /** * ID of the card in the Visionline access system. */ card_id?: string | undefined /** * Common entrance IDs in the Visionline access system. */ common_acs_entrance_ids?: Array | undefined /** * ID of the credential in the Visionline access system. */ credential_id?: string | undefined /** * Guest entrance IDs in the Visionline access system. */ guest_acs_entrance_ids?: Array | undefined /** * Indicates whether the credential is valid. */ is_valid?: boolean | undefined /** * IDs of the credentials to which you want to join. */ joiner_acs_credential_ids?: Array | undefined } | undefined /** * Warnings associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ warnings: Array<{ /** * Date and time at which Seam created the warning. */ created_at: string /** * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */ warning_code: | 'waiting_to_be_issued' | 'schedule_externally_modified' | 'schedule_modified' | 'being_deleted' | 'unknown_issue_with_acs_credential' | 'needs_to_be_reissued' }> /** * ID of the workspace that contains the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ workspace_id: string } /** * Warnings related to scanning the credential, such as mismatches between the credential data currently encoded on the card and the corresponding data stored on Seam and the access system. */ warnings: Array<{ /** * Indicates a warning related to scanning a credential. */ warning_code: | 'acs_credential_on_encoder_out_of_sync' | 'acs_credential_on_seam_not_found' /** * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */ warning_message: string }> } status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Action attempt to track the status of encoding credential data from the physical encoder onto a card. */ action_type: 'ENCODE_CREDENTIAL' error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Error type to indicate that the credential was deleted and can no longer be encoded. */ type: | 'uncategorized_error' | 'action_attempt_expired' | 'no_credential_on_encoder' | 'incompatible_card_format' | 'credential_cannot_be_reissued' | 'encoder_not_online' | 'encoder_communication_timeout' | 'bridge_disconnected' | 'encoding_interrupted' | 'credential_deleted' } /** * Result of an encoding attempt. If the attempt was successful, includes the credential data that was encoded onto the card. */ result: { /** * Access method for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). Supported values: `code`, `card`, `mobile_key`, `cloud_key`. */ access_method: 'code' | 'card' | 'mobile_key' | 'cloud_key' /** * ID of the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ acs_credential_id: string /** * ID of the credential pool to which the credential belongs. */ acs_credential_pool_id?: string | undefined /** * ID of the [access control system](https://docs.seam.co/low-level-apis/access-systems) that contains the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ acs_system_id: string /** * ID of the [ACS user](https://docs.seam.co/low-level-apis/access-systems/user-management) to whom the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) belongs. */ acs_user_id?: string | undefined /** * Vostio-specific metadata for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ assa_abloy_vostio_metadata?: | { /** * Indicates whether the credential should auto-join. For an auto-join credential, Seam automatically issues an override card if there are no other cards and a joiner card if there are existing cards on the doors. */ auto_join?: boolean | undefined /** * Names of the doors to which to grant access in the Vostio access system. */ door_names?: Array | undefined /** * Endpoint ID in the Vostio access system. */ endpoint_id?: string | undefined /** * Key ID in the Vostio access system. */ key_id?: string | undefined /** * Key issuing request ID in the Vostio access system. */ key_issuing_request_id?: string | undefined /** * IDs of the guest entrances to override in the Vostio access system. */ override_guest_acs_entrance_ids?: Array | undefined } | undefined /** * Number of the card associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ card_number?: string | null | undefined /** * Access (PIN) code for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ code?: string | null | undefined /** * ID of the [connected account](https://docs.seam.co/core-concepts/connected-accounts) to which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) belongs. */ connected_account_id: string /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) was created. */ created_at: string /** * Display name that corresponds to the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) type. */ display_name: string /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) validity 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`. */ ends_at?: string | undefined /** * Errors associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ errors: Array<{ /** * Date and time at which Seam created the error. */ created_at: string error_code: string message: string }> /** * Brand-specific terminology for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) type. Supported values: `pti_card`, `brivo_credential`, `hid_credential`, `visionline_card`. */ external_type?: | 'pti_card' | 'brivo_credential' | 'hid_credential' | 'visionline_card' | 'salto_ks_credential' | 'assa_abloy_vostio_key' | 'salto_space_key' | 'latch_access' | 'dormakaba_ambiance_credential' | 'hotek_card' | 'salto_ks_tag' | 'avigilon_alta_credential' | 'kisi_credential' | undefined /** * Display name that corresponds to the brand-specific terminology for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) type. */ external_type_display_name?: string | undefined /** * Indicates whether the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) has been encoded onto a card. */ is_issued?: boolean | undefined /** * Indicates whether the latest state of the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) has been synced from Seam to the provider. */ is_latest_desired_state_synced_with_provider?: boolean | null | undefined is_managed: boolean /** * Indicates whether the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) is a [multi-phone sync credential](https://docs.seam.co/capability-guides/mobile-access/issuing-mobile-credentials-from-an-access-control-system#what-are-multi-phone-sync-credentials). */ is_multi_phone_sync_credential?: boolean | undefined /** * Indicates whether the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) can only be used once. If `true`, the code becomes invalid after the first use. */ is_one_time_use?: boolean | undefined /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) was encoded onto a card. */ issued_at?: string | null | undefined /** * Date and time at which the state of the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) was most recently synced from Seam to the provider. */ latest_desired_state_synced_with_provider_at?: string | null | undefined /** * ID of the parent [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ parent_acs_credential_id?: string | undefined /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) validity starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */ starts_at?: string | undefined /** * ID of the [user identity](https://docs.seam.co/api/user_identities) to whom the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) belongs. */ user_identity_id?: string | undefined /** * Visionline-specific metadata for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ visionline_metadata?: | { /** * Indicates whether the credential should auto-join. For an auto-join credential, Seam automatically issues an override card if there are no other cards and a joiner card if there are existing cards on the doors. */ auto_join?: boolean | undefined /** * Card function type in the Visionline access system. */ card_function_type?: 'guest' | 'staff' | undefined /** * ID of the card in the Visionline access system. */ card_id?: string | undefined /** * Common entrance IDs in the Visionline access system. */ common_acs_entrance_ids?: Array | undefined /** * ID of the credential in the Visionline access system. */ credential_id?: string | undefined /** * Guest entrance IDs in the Visionline access system. */ guest_acs_entrance_ids?: Array | undefined /** * Indicates whether the credential is valid. */ is_valid?: boolean | undefined /** * IDs of the credentials to which you want to join. */ joiner_acs_credential_ids?: Array | undefined } | undefined /** * Warnings associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ warnings: Array<{ /** * Date and time at which Seam created the warning. */ created_at: string /** * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */ warning_code: | 'waiting_to_be_issued' | 'schedule_externally_modified' | 'schedule_modified' | 'being_deleted' | 'unknown_issue_with_acs_credential' | 'needs_to_be_reissued' }> /** * ID of the workspace that contains the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ workspace_id: string } status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Action attempt to track the status of scanning a physical card and assigning the credential to an ACS user. */ action_type: 'SCAN_TO_ASSIGN_CREDENTIAL' error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Error type to indicate that there is no credential on the encoder. */ type: | 'uncategorized_error' | 'action_attempt_expired' | 'no_credential_on_encoder' } /** * Result of a scan to assign attempt. If the attempt was successful, includes the credential data that was scanned and assigned. */ result: { /** * Access method for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). Supported values: `code`, `card`, `mobile_key`, `cloud_key`. */ access_method: 'code' | 'card' | 'mobile_key' | 'cloud_key' /** * ID of the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ acs_credential_id: string /** * ID of the credential pool to which the credential belongs. */ acs_credential_pool_id?: string | undefined /** * ID of the [access control system](https://docs.seam.co/low-level-apis/access-systems) that contains the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ acs_system_id: string /** * ID of the [ACS user](https://docs.seam.co/low-level-apis/access-systems/user-management) to whom the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) belongs. */ acs_user_id?: string | undefined /** * Vostio-specific metadata for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ assa_abloy_vostio_metadata?: | { /** * Indicates whether the credential should auto-join. For an auto-join credential, Seam automatically issues an override card if there are no other cards and a joiner card if there are existing cards on the doors. */ auto_join?: boolean | undefined /** * Names of the doors to which to grant access in the Vostio access system. */ door_names?: Array | undefined /** * Endpoint ID in the Vostio access system. */ endpoint_id?: string | undefined /** * Key ID in the Vostio access system. */ key_id?: string | undefined /** * Key issuing request ID in the Vostio access system. */ key_issuing_request_id?: string | undefined /** * IDs of the guest entrances to override in the Vostio access system. */ override_guest_acs_entrance_ids?: Array | undefined } | undefined /** * Number of the card associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ card_number?: string | null | undefined /** * Access (PIN) code for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ code?: string | null | undefined /** * ID of the [connected account](https://docs.seam.co/core-concepts/connected-accounts) to which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) belongs. */ connected_account_id: string /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) was created. */ created_at: string /** * Display name that corresponds to the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) type. */ display_name: string /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) validity 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`. */ ends_at?: string | undefined /** * Errors associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ errors: Array<{ /** * Date and time at which Seam created the error. */ created_at: string error_code: string message: string }> /** * Brand-specific terminology for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) type. Supported values: `pti_card`, `brivo_credential`, `hid_credential`, `visionline_card`. */ external_type?: | 'pti_card' | 'brivo_credential' | 'hid_credential' | 'visionline_card' | 'salto_ks_credential' | 'assa_abloy_vostio_key' | 'salto_space_key' | 'latch_access' | 'dormakaba_ambiance_credential' | 'hotek_card' | 'salto_ks_tag' | 'avigilon_alta_credential' | 'kisi_credential' | undefined /** * Display name that corresponds to the brand-specific terminology for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) type. */ external_type_display_name?: string | undefined /** * Indicates whether the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) has been encoded onto a card. */ is_issued?: boolean | undefined /** * Indicates whether the latest state of the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) has been synced from Seam to the provider. */ is_latest_desired_state_synced_with_provider?: boolean | null | undefined /** * Indicates whether Seam manages the credential. */ is_managed: boolean /** * Indicates whether the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) is a [multi-phone sync credential](https://docs.seam.co/capability-guides/mobile-access/issuing-mobile-credentials-from-an-access-control-system#what-are-multi-phone-sync-credentials). */ is_multi_phone_sync_credential?: boolean | undefined /** * Indicates whether the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) can only be used once. If `true`, the code becomes invalid after the first use. */ is_one_time_use?: boolean | undefined /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) was encoded onto a card. */ issued_at?: string | null | undefined /** * Date and time at which the state of the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) was most recently synced from Seam to the provider. */ latest_desired_state_synced_with_provider_at?: string | null | undefined /** * ID of the parent [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ parent_acs_credential_id?: string | undefined /** * Date and time at which the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) validity starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */ starts_at?: string | undefined /** * ID of the [user identity](https://docs.seam.co/api/user_identities) to whom the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) belongs. */ user_identity_id?: string | undefined /** * Visionline-specific metadata for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ visionline_metadata?: | { /** * Indicates whether the credential should auto-join. For an auto-join credential, Seam automatically issues an override card if there are no other cards and a joiner card if there are existing cards on the doors. */ auto_join?: boolean | undefined /** * Card function type in the Visionline access system. */ card_function_type?: 'guest' | 'staff' | undefined /** * ID of the card in the Visionline access system. */ card_id?: string | undefined /** * Common entrance IDs in the Visionline access system. */ common_acs_entrance_ids?: Array | undefined /** * ID of the credential in the Visionline access system. */ credential_id?: string | undefined /** * Guest entrance IDs in the Visionline access system. */ guest_acs_entrance_ids?: Array | undefined /** * Indicates whether the credential is valid. */ is_valid?: boolean | undefined /** * IDs of the credentials to which you want to join. */ joiner_acs_credential_ids?: Array | undefined } | undefined /** * Warnings associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ warnings: Array<{ /** * Date and time at which Seam created the warning. */ created_at: string /** * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */ warning_code: | 'waiting_to_be_issued' | 'schedule_externally_modified' | 'schedule_modified' | 'being_deleted' | 'unknown_issue_with_acs_credential' | 'needs_to_be_reissued' }> /** * ID of the workspace that contains the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). */ workspace_id: string } status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Action attempt to track the status of assigning a pre-registered card credential to an access method. */ action_type: 'ASSIGN_CREDENTIAL' error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Error type to indicate that no matching credential was found. */ type: | 'uncategorized_error' | 'action_attempt_expired' | 'credential_not_found' } /** * Result of assigning a credential. If successful, includes the updated access method with the assigned credential. */ result: { /** * ID of the access method. */ access_method_id: string /** * Token of the client session associated with the access method. */ client_session_token?: string | undefined /** * The actual PIN code for code access methods. */ code?: string | null | undefined /** * Date and time at which the access method was created. */ created_at: string /** * ID of the customization profile associated with the access method. */ customization_profile_id?: string | undefined /** * Display name of the access method. */ display_name: string /** * Errors associated with the [access method](https://docs.seam.co/use-cases/granting-access/creating-an-access-grant). */ errors: Array<{ /** * Date and time at which Seam created the error. */ created_at: string /** * Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */ error_code: 'failed_to_issue' /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string }> /** * URL of the Instant Key for mobile key access methods. */ instant_key_url?: string | undefined /** * Indicates whether an existing card credential must be assigned to this access method before it can be issued. Only applies to card-mode access methods on systems that support credential assignment. */ is_assignment_required?: boolean | undefined /** * Indicates whether encoding with an card encoder is required to issue or reissue the plastic card associated with the access method. */ is_encoding_required?: boolean | undefined /** * Indicates whether the access method has been issued. */ is_issued: boolean /** * Indicates whether the access method is ready for card assignment. This is true when the access method is in card mode, has not yet been issued, and the system supports credential assignment. */ is_ready_for_assignment?: boolean | undefined /** * Indicates whether the access method is ready to be encoded. This is true when the credential has been created and the card has not yet been issued. */ is_ready_for_encoding?: boolean | undefined /** * Date and time at which the access method was issued. */ issued_at: string | null /** * Access method mode. Supported values: `code`, `card`, `mobile_key`, `cloud_key`. */ mode: 'code' | 'card' | 'mobile_key' | 'cloud_key' /** * Pending mutations for the [access method](https://docs.seam.co/use-cases/granting-access/creating-an-access-grant). Indicates operations that are in progress. */ pending_mutations: Array<{ /** * Date and time at which the mutation was created. */ created_at: string /** * Previous access time configuration. */ from: { /** * Previous end time for access. */ ends_at: string | null /** * Previous start time for access. */ starts_at: string | null } /** * Detailed description of the mutation. */ message: string /** * Mutation code to indicate that Seam is in the process of updating the access times for this access method. */ mutation_code: 'provisioning_access' | 'revoking_access' | 'updating_access_times' /** * New access time configuration. */ to: { /** * New end time for access. */ ends_at: string | null /** * New start time for access. */ starts_at: string | null } }> /** * Warnings associated with the [access method](https://docs.seam.co/use-cases/granting-access/creating-an-access-grant). */ warnings: Array<{ /** * Date and time at which Seam created the warning. */ created_at: string /** * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */ warning_code: | 'being_deleted' | 'updating_access_times' | 'pulled_backup_access_code' | 'delay_in_issuing' /** * ID of the original access method from which this backup access method was split, if applicable. */ original_access_method_id?: string | undefined }> /** * ID of the Seam workspace associated with the access method. */ workspace_id: string } status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Action attempt to track the status of resetting a sandbox workspace. */ action_type: 'RESET_SANDBOX_WORKSPACE' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Action attempt to track the status of setting the fan mode on a thermostat. */ action_type: 'SET_FAN_MODE' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Action attempt to track the status of setting the HVAC mode on a thermostat. */ action_type: 'SET_HVAC_MODE' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Action attempt to track the status of a climate preset activation. */ action_type: 'ACTIVATE_CLIMATE_PRESET' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Action attempt to track the status of simulating a keypad code entry. */ action_type: 'SIMULATE_KEYPAD_CODE_ENTRY' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Action attempt to track the status of simulating a manual lock action using a keypad. */ action_type: 'SIMULATE_MANUAL_LOCK_VIA_KEYPAD' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Action attempt to track the status of pushing thermostat programs. */ action_type: 'PUSH_THERMOSTAT_PROGRAMS' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Action attempt to track the status of configuring the auto-lock on a lock. */ action_type: 'CONFIGURE_AUTO_LOCK' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Syncing access codes is pending. */ action_type: 'SYNC_ACCESS_CODES' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Creating an access code is pending. */ action_type: 'CREATE_ACCESS_CODE' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Deleting an access code is pending. */ action_type: 'DELETE_ACCESS_CODE' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Updating an access code is pending. */ action_type: 'UPDATE_ACCESS_CODE' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Creating a noise threshold is pending. */ action_type: 'CREATE_NOISE_THRESHOLD' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Deleting a noise threshold is pending. */ action_type: 'DELETE_NOISE_THRESHOLD' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' } | { /** * ID of the action attempt. */ action_attempt_id: string /** * Updating a noise threshold is pending. */ action_type: 'UPDATE_NOISE_THRESHOLD' /** * Error associated with the action. */ error: { /** * Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */ message: string /** * Type of the error. */ type: string } /** * Result of the action. */ result: {} status: 'success' | 'pending' | 'error' }