Create a Credential for a User
Create a new credential for a specified ACS user
Creates a new credential for a specified ACS user.
Creates a new credential for a specified ACS user.
ACS system ID of the credential manager for the new credential.
ID of the access system user to whom the new credential belongs. You must provide either acs_user_id or the combination of user_identity_id and acs_system_id.
ID of the user identity to whom the new credential belongs. You must provide either acs_user_id or the combination of user_identity_id and acs_system_id. If the access system contains a user with the same email_address or phone_number as the user identity that you specify, they are linked, and the credential belongs to the access system user. If the access system does not have a corresponding user, one is created.
ID of the access system to which the new credential belongs. You must provide either acs_user_id or the combination of user_identity_id and acs_system_id.
Access method for the new credential. Supported values: code, card, mobile_key.
Access (PIN) code for the new credential. There may be manufacturer-specific code restrictions. For details, see the applicable device or system integration guide.
^\d+$Indicates whether the new credential is a multi-phone sync credential.
falseSet of IDs of the entrances for which the new credential grants access.
[]Date and time at which the validity of the new credential starts, in ISO 8601 format.
Date and time at which the validity of the new credential ends, in ISO 8601 format. Must be a time in the future and after starts_at.
OK
Bad Request
Unauthorized
POST /acs/credentials/create HTTP/1.1
Host: connect.getseam.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 963
{
"credential_manager_acs_system_id": "123e4567-e89b-12d3-a456-426614174000",
"acs_user_id": "123e4567-e89b-12d3-a456-426614174000",
"user_identity_id": "123e4567-e89b-12d3-a456-426614174000",
"acs_system_id": "123e4567-e89b-12d3-a456-426614174000",
"access_method": "code",
"code": "text",
"is_multi_phone_sync_credential": false,
"allowed_acs_entrance_ids": [
"123e4567-e89b-12d3-a456-426614174000"
],
"visionline_metadata": {
"card_format": "TLCode",
"card_function_type": "guest",
"override": true,
"auto_join": true,
"joiner_acs_credential_ids": [
"123e4567-e89b-12d3-a456-426614174000"
]
},
"assa_abloy_vostio_metadata": {
"auto_join": true,
"override_all_guest_acs_entrances": true,
"join_all_guest_acs_entrances": true,
"override_guest_acs_entrance_ids": [
"123e4567-e89b-12d3-a456-426614174000"
]
},
"hotek_metadata": {
"override": true,
"auto_join": true
},
"salto_space_metadata": {
"assign_new_key": true,
"update_current_key": true
},
"starts_at": "2025-11-03T08:04:54.187Z",
"ends_at": "2025-11-03T08:04:54.187Z"
}{
"acs_credential": {
"acs_credential_id": "123e4567-e89b-12d3-a456-426614174000",
"acs_user_id": "123e4567-e89b-12d3-a456-426614174000",
"user_identity_id": "123e4567-e89b-12d3-a456-426614174000",
"connected_account_id": "123e4567-e89b-12d3-a456-426614174000",
"acs_credential_pool_id": "123e4567-e89b-12d3-a456-426614174000",
"acs_system_id": "123e4567-e89b-12d3-a456-426614174000",
"parent_acs_credential_id": "123e4567-e89b-12d3-a456-426614174000",
"display_name": "text",
"code": "text",
"is_one_time_use": true,
"card_number": "text",
"is_issued": true,
"issued_at": "2025-11-03T08:04:54.187Z",
"access_method": "code",
"external_type": "pti_card",
"external_type_display_name": "text",
"created_at": "2025-11-03T08:04:54.187Z",
"workspace_id": "123e4567-e89b-12d3-a456-426614174000",
"starts_at": "text",
"ends_at": "text",
"errors": [
{
"error_code": "text",
"message": "text"
}
],
"warnings": [
{
"created_at": "2025-11-03T08:04:54.187Z",
"message": "text",
"warning_code": "waiting_to_be_issued"
}
],
"is_multi_phone_sync_credential": true,
"is_latest_desired_state_synced_with_provider": true,
"latest_desired_state_synced_with_provider_at": "2025-11-03T08:04:54.187Z",
"visionline_metadata": {
"card_function_type": "guest",
"joiner_acs_credential_ids": [
"123e4567-e89b-12d3-a456-426614174000"
],
"guest_acs_entrance_ids": [
"123e4567-e89b-12d3-a456-426614174000"
],
"common_acs_entrance_ids": [
"123e4567-e89b-12d3-a456-426614174000"
],
"is_valid": true,
"auto_join": true,
"card_id": "text",
"credential_id": "text"
},
"assa_abloy_vostio_metadata": {
"auto_join": true,
"override_guest_acs_entrance_ids": [
"text"
],
"key_id": "text",
"key_issuing_request_id": "text",
"door_names": [
"text"
],
"endpoint_id": "text"
},
"is_managed": true
},
"ok": true
}Request
Specify the user to which the new credential belongs and the access method for the new credential by including the corresponding acs_user_id and access_method in the request body. You can also specify additional parameters, such as a code for the credential. Note that the access_method determines the additional required and useful parameters.
Request Body Parameters
acs_user_id
String (UUID) Required
ID of the user to whom the new credential belongs
access_method
Enum (string) Required
Access method for the new credential. Supported values: code, card, mobile_key
code
String Optional
Access (PIN) code for the new credential There may be manufacturer-specific code restrictions. For details, see the applicable device or system integration guide.
is_multi_phone_sync_credential
Boolean Optional
Indicates whether the new credential is a multi-phone sync credential
allowed_acs_entrance_ids
Array of strings (UUIDs) Optional
Set of IDs of the entrances for which the new credential grants access
credential_manager_acs_system_id
Enum (string) Optional
ACS system ID of the credential manager for the new user
XXX_metadata
Object Optional
ACS manufacturer-specific metadata for the new credential, where XXX is the manufacturer
starts_at
Datetime Optional
Date and time at which the validity of the new credential starts, in ISO 8601 format
ends_at
Datetime Optional
Date and time at which the validity of the new credential ends, in ISO 8601 format
Sample Request
PIN Code-Based Credential
seam.acs.credentials.create(
acs_user_id="33333333-3333-3333-3333-333333333333",
access_method="code",
code="824759"
)curl -X 'POST' \
'https://connect.getseam.com/acs/credentials/create' \
-H 'accept: application/json' \
-H "Authorization: Bearer ${API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"acs_user_id": "33333333-3333-3333-3333-333333333333",
"access_method": "code",
"code": "824759"
}'await seam.acs.credentials.create({
acs_user_id: "33333333-3333-3333-3333-333333333333",
access_method: "code",
code: "824759"
});# Coming soon!$seam->acs->credentials->create(
acs_user_id: "33333333-3333-3333-3333-333333333333",
access_method: "code",
code: "824759"
);seam.CredentialsAcs.Create(
acsUserId: "33333333-3333-3333-3333-333333333333",
accessMethod: "code",
code: "824759"
);// Coming soon!credential, uErr := client.Acs.Credentials.Create(
context.Background(), &acs.CredentialsCreateRequest{
AcsUserId: "33333333-3333-3333-3333-333333333333",
AccessMethod: "code",
Code: api.String("824759"),
},
);Key Card-Based Credential
seam.acs.credentials.create(
acs_user_id="33333333-3333-3333-3333-333333333333",
access_method="card",
code="123456"
)curl -X 'POST' \
'https://connect.getseam.com/acs/credentials/create' \
-H 'accept: application/json' \
-H "Authorization: Bearer ${API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"acs_user_id": "33333333-3333-3333-3333-333333333333",
"access_method": "card",
"code": "123456"
}'await seam.acs.credentials.create({
acs_user_id: "33333333-3333-3333-3333-333333333333",
access_method: "card",
code: "123456"
});# Coming soon!$seam->acs->credentials->create(
acs_user_id: "33333333-3333-3333-3333-333333333333",
access_method: "card",
code: "123456"
);seam.CredentialsAcs.Create(
acsUserId: "33333333-3333-3333-3333-333333333333",
accessMethod: "card",
code: "123456"
);// Coming soon!credential, uErr := client.Acs.Credentials.Create(
context.Background(), &acs.CredentialsCreateRequest{
AcsUserId: "33333333-3333-3333-3333-333333333333",
AccessMethod: "card",
Code: api.String("123456"),
},
);Seam Mobile Key
seam.acs.credentials.create(
acs_user_id="33333333-3333-3333-3333-333333333333",
allowed_acs_entrance_ids=[
"55555555-5555-5555-5555-555555555555",
"55555555-5555-5555-5555-000000000000"
],
credential_manager_acs_system_id="88888888-8888-8888-8888-888888888888",
access_method="mobile_key",
is_multi_phone_sync_credential=True,
starts_at="2024-03-01T10:40:00Z",
ends_at="2024-03-04T10:40:00Z",
# manufacturer-specific metadata
)curl -X 'POST' \
'https://connect.getseam.com/acs/credentials/create' \
-H 'accept: application/json' \
-H "Authorization: Bearer ${API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"acs_user_id": "33333333-3333-3333-3333-333333333333",
"allowed_acs_entrance_ids": [
"55555555-5555-5555-5555-555555555555",
"55555555-5555-5555-5555-000000000000"
],
"credential_manager_acs_system_id": "88888888-8888-8888-8888-888888888888",
"access_method": "mobile_key",
"is_multi_phone_sync_credential": true,
"starts_at": "2024-03-01T10:40:00Z",
"ends_at": "2024-03-04T10:40:00Z",
# manufacturer-specific metadata
}'await seam.acs.credentials.create({
acs_user_id: "33333333-3333-3333-3333-333333333333",
allowed_acs_entrance_ids: [
"55555555-5555-5555-5555-555555555555",
"55555555-5555-5555-5555-000000000000"
],
credential_manager_acs_system_id: "88888888-8888-8888-8888-888888888888",
access_method: "mobile_key",
is_multi_phone_sync_credential: true,
starts_at: "2024-03-01T10:40:00Z",
ends_at: "2024-03-04T10:40:00Z",
// manufacturer-specific metadata
});# Coming soon!$seam->acs->credentials->create(
acs_user_id: "33333333-3333-3333-3333-333333333333",
allowed_acs_entrance_ids: [
"55555555-5555-5555-5555-555555555555",
"55555555-5555-5555-5555-000000000000"
],
credential_manager_acs_system_id: "88888888-8888-8888-8888-888888888888",
access_method: "mobile_key",
is_multi_phone_sync_credential: true,
starts_at: "2024-03-01T10:40:00Z",
ends_at: "2024-03-04T10:40:00Z",
// manufacturer-specific metadata
);seam.CredentialsAcs.Create(
acsUserId: "33333333-3333-3333-3333-333333333333",
allowedAcsEntranceIds: new List<string>
{
"55555555-5555-5555-5555-555555555555",
"55555555-5555-5555-5555-000000000000"
},
credentialManagerAcsSystemId: "88888888-8888-8888-8888-888888888888",
accessMethod: "mobile_key",
isMultiPhoneSyncCredential: true,
startsAt: "2024-03-01T10:40:00Z",
endsAt: "2024-03-04T10:40:00Z",
// manufacturer-specific metadata
);// Coming soon!startsAt, err := time.Parse(time.RFC3339, "2024-03-01T10:40:00Z")
endsAt, err := time.Parse(time.RFC3339, "2024-03-04T10:40:00Z")
if err != nil {
return err
}
credential, uErr := client.Acs.Credentials.Create(
context.Background(), &acs.CredentialsCreateRequest{
AcsUserId: "33333333-3333-3333-3333-333333333333",
AllowedAcsEntranceIds: {
"55555555-5555-5555-5555-555555555555",
"55555555-5555-5555-5555-000000000000",
},
CredentialManagerAcsSystemId: api.String("88888888-8888-8888-8888-888888888888"),
AccessMethod: "mobile_key",
IsMultiPhoneSyncCredential: api.Bool(true),
StartsAt: api.Time(startsAt),
EndsAt: api.Time(endsAt),
// manufacturer-specific metadata
},
)Response
Returns an acs_credential containing the following properties:
acs_credential_id
ID of the credential
acs_user_id
ID of the user to whom the credential belongs
display_name
Display name that corresponds to the credential type
code
Access (PIN) code for the credential
acs_system_id
ID of the access control system that contains the credential
access_method
Access method for the credential. Supported values: code, card, mobile_key
external_type
Brand-specific terminology for the credential type
external_type_display_name
Display name that corresponds to the brand-specific terminology for the credential type
workspace_id
ID of the workspace that contains the credential
created_at
Date and time at which the credential was created
is_multi_phone_sync_credential
Indicates whether the credential is a multi-phone sync credential
starts_at
Date and time at which the credential validity starts, in ISO 8601 format
ends_at
Date and time at which the credential validity ends, in ISO 8601 format
XXX_metadata
ACS manufacturer-specific metadata for the credential, where XXX is the manufacturer
Sample Response
AcsCredential(
acs_credential_id='99999999-9999-9999-9999-999999999999',
acs_user_id='33333333-3333-3333-3333-333333333333',
display_name='Multi Phone Sync Credential',
code=null,
acs_system_id='11111111-1111-1111-1111-111111111111',
access_method='mobile_key',
workspace_id='00000000-0000-0000-0000-000000000000',
created_at='2024-04-12T03:56:22.396Z',
is_multi_phone_sync_credential=True,
# manufacturer-specific metadata
){
"acs_credential": {
"acs_credential_id": "99999999-9999-9999-9999-999999999999",
"acs_user_id": "33333333-3333-3333-3333-333333333333",
"display_name": "Multi Phone Sync Credential",
"code": null,
"acs_system_id": "11111111-1111-1111-1111-111111111111",
"access_method": "mobile_key",
"workspace_id": "00000000-0000-0000-0000-000000000000",
"created_at": "2024-04-12T03:56:22.396Z",
"is_multi_phone_sync_credential": true,
# manufacturer-specific metadata
},
"ok": true
}{
acs_credential_id: '99999999-9999-9999-9999-999999999999',
acs_user_id: '33333333-3333-3333-3333-333333333333',
display_name: 'Multi Phone Sync Credential',
code: null,
acs_system_id: '11111111-1111-1111-1111-111111111111',
access_method: 'mobile_key',
workspace_id: '00000000-0000-0000-0000-000000000000',
created_at: '2024-04-12T03:56:22.396Z',
is_multi_phone_sync_credential: true,
// manufacturer-specific metadata
}# Coming soon!{
"acs_credential_id": "99999999-9999-9999-9999-999999999999",
"acs_user_id": "33333333-3333-3333-3333-333333333333",
"display_name": "Multi Phone Sync Credential",
"code": null,
"acs_system_id": "11111111-1111-1111-1111-111111111111",
"access_method": "mobile_key",
"workspace_id": "00000000-0000-0000-0000-000000000000",
"created_at": "2024-04-12T03:56:22.396Z",
"is_multi_phone_sync_credential": true,
// manufacturer-specific metadata
}{
"acs_credential_id": "99999999-9999-9999-9999-999999999999",
"acs_user_id": "33333333-3333-3333-3333-333333333333",
"display_name": "Multi Phone Sync Credential",
"code": null,
"acs_system_id": "11111111-1111-1111-1111-111111111111",
"access_method": "mobile_key",
"workspace_id": "00000000-0000-0000-0000-000000000000",
"created_at": "2024-04-12T03:56:22.396Z",
"is_multi_phone_sync_credential": true,
// manufacturer-specific metadata
}// Coming soon!{
"acs_credential": {
"acs_credential_id": "99999999-9999-9999-9999-999999999999",
"acs_user_id": "33333333-3333-3333-3333-333333333333",
"display_name": "Multi Phone Sync Credential",
"code": null,
"acs_system_id": "11111111-1111-1111-1111-111111111111",
"access_method": "mobile_key",
"workspace_id": "00000000-0000-0000-0000-000000000000",
"created_at": "2024-04-12T03:56:22.396Z",
"is_multi_phone_sync_credential": true,
# manufacturer-specific metadata
},
"ok": true
}Last updated
Was this helpful?

