POST api/v1/Users/{id}/UserCards/ReplaceCardIfExists
Adds a Card to an existing User. If the card is assigned to another user un-assigns it first. Returns Success/Error code plus primary key of UserCard entry made.
Request Information
URI Parameters
| Name | Description | Type | Additional information |
|---|---|---|---|
| id | string |
None. |
Body Parameters
ReplaceUserCardIfExistsViewModel| Name | Description | Type | Additional information |
|---|---|---|---|
| UserId |
Required: The PK of the existing User that you want to add the card to. |
globally unique identifier |
None. |
| CardId |
Optional: The PK of an existing card that you want to assign to the User. Retrieve possible values from /Card/GetAllCards. If null, CardType, CardACSystem, InternalCardNumber, ExternalCardNumber and Facility code are required. |
globally unique identifier |
None. |
| CardType |
Conditional: If CardId is null, this is required. Represents the type of card being added dynamically. Retrieve possible values from /Card/GetAllCardTypes |
integer |
None. |
| CardACSystemId |
Conditional: If CardId is null, this is required. Represents the Access Control System of the card being added dynamically. Retrieve possible values from /ACSystem/GetAllSystems |
globally unique identifier |
None. |
| InternalCardNumber |
Conditional: If CardId is null, this is required. Represents the internal/encoded number of the card being added dynamically. |
integer |
None. |
| ExternalCardNumber |
Conditional: If CardId is null, this is required. Represents the external number printed on the card being added dynamically. |
string |
None. |
| CardSerialNumber |
Conditional: If CardType supports it, this is required. Represents the serial number of the smart card being added dynamically. |
integer |
None. |
| FacilityCode |
Conditional: If CardType supports it, this is required. Represents the facility code of the smart card being added dynamically. |
integer |
None. |
| IssueCode |
Conditional: If CardType supports it, this is required. Represents the issue code of the smart card being added dynamically. |
integer |
None. |
| PIN |
Optional: The PIN that the User may use in conjunction with this Card for Card + PIN mode or for when Readers are in PIN mode only. |
string |
None. |
| EnforceOccupancySystem |
Optional: Requests to verify if the CardACSystemId matches the system the User's Occupancy belongs to |
boolean |
None. |
| CardActivationStartDateTime |
Optional: Date and time of the card activation |
date |
None. |
| CardDeactivationStartDateTime |
Optional: Date and time of the card de-activation |
date |
None. |
| CardUserFlags |
Card User Flags |
CardUserFlags |
None. |
Request Formats
application/json, text/json
{
"UserId": "2b550dfb-1bf5-4ed0-ab2f-a1d8e4fbce0d",
"CardId": "4b633116-a810-4a59-b730-bbf674d26f50",
"CardType": 2,
"CardACSystemId": "c1032439-1aec-478e-a791-9180f0344297",
"InternalCardNumber": 3,
"ExternalCardNumber": "sample string 4",
"CardSerialNumber": 1,
"FacilityCode": 1,
"IssueCode": 1,
"PIN": "sample string 5",
"EnforceOccupancySystem": true,
"CardActivationStartDateTime": "2025-11-07T01:35:52.3887204+00:00",
"CardDeactivationStartDateTime": "2025-11-07T01:35:52.3887204+00:00",
"CardUserFlags": 1
}
application/xml, text/xml
<ReplaceUserCardIfExistsViewModel xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/APIWebRole.Controllers"> <CardACSystemId>c1032439-1aec-478e-a791-9180f0344297</CardACSystemId> <CardActivationStartDateTime>2025-11-07T01:35:52.3887204+00:00</CardActivationStartDateTime> <CardDeactivationStartDateTime>2025-11-07T01:35:52.3887204+00:00</CardDeactivationStartDateTime> <CardId>4b633116-a810-4a59-b730-bbf674d26f50</CardId> <CardSerialNumber>1</CardSerialNumber> <CardType>2</CardType> <CardUserFlags>ActiveCardholderRecord</CardUserFlags> <EnforceOccupancySystem>true</EnforceOccupancySystem> <ExternalCardNumber>sample string 4</ExternalCardNumber> <FacilityCode>1</FacilityCode> <InternalCardNumber>3</InternalCardNumber> <IssueCode>1</IssueCode> <PIN>sample string 5</PIN> <UserId>2b550dfb-1bf5-4ed0-ab2f-a1d8e4fbce0d</UserId> </ReplaceUserCardIfExistsViewModel>
application/x-www-form-urlencoded
Sample not available.
Response Information
Resource Description
ReplaceCardIfExistsResult| Name | Description | Type | Additional information |
|---|---|---|---|
| PreviousUserId |
Represents a UserId for a user the card previously belonged to |
globally unique identifier |
None. |
| CurrentUserId |
Represents a UserId for a user the card has been assigned to |
globally unique identifier |
None. |
| ExternalCardNumber |
Represents the serial number of the smart card being added dynamically |
string |
None. |
| InternalCardNumber |
Represents the internal/encoded number of the card being added dynamically. |
integer |
None. |
| FacilityCode |
Represents the facility code of the smart card being added dynamically. |
integer |
None. |
| CardType |
Represents the type of card being added dynamically. Retrieve possible values from /Card/GetAllCardTypes |
integer |
None. |
| Value |
Represents the PK value that was created as a result of an add |
globally unique identifier |
None. |
| ResultCode |
Represents the result code |
integer |
None. |
| Description |
Represents a description of the result code |
string |
None. |
Response Formats
application/json, text/json
{
"PreviousUserId": "a573ed27-61a2-4ee8-a10a-5fb351f31af4",
"CurrentUserId": "101b474d-85d1-4038-9c15-6b22a5731f5d",
"ExternalCardNumber": "sample string 1",
"InternalCardNumber": 1,
"FacilityCode": 1,
"CardType": 1,
"Value": "578c2b32-8455-4eb6-9f92-669dd3e90195",
"ResultCode": 3,
"Description": "sample string 4"
}
application/xml, text/xml
<ReplaceCardIfExistsResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/APIWebRole.Controllers"> <Description>sample string 4</Description> <HttpStatusCode>Continue</HttpStatusCode> <ResultCode>3</ResultCode> <Value>578c2b32-8455-4eb6-9f92-669dd3e90195</Value> <CardType>1</CardType> <CurrentUserId>101b474d-85d1-4038-9c15-6b22a5731f5d</CurrentUserId> <ExternalCardNumber>sample string 1</ExternalCardNumber> <FacilityCode>1</FacilityCode> <InternalCardNumber>1</InternalCardNumber> <PreviousUserId>a573ed27-61a2-4ee8-a10a-5fb351f31af4</PreviousUserId> </ReplaceCardIfExistsResult>