POST
/api/v2/mor/public/cards/{cardId}/unassignRemove a user assignment from a merchant-owned card and cancel its pending load requests.
Company scope comes exclusively from the current API key. MOR success and business-error properties use camelCase. Validation may return application/problem+json; authentication may return plain text. The existing sensitive-operation 429 body uses Message, Code and Status. 429 means the configured request limit was exceeded; honor Retry-After when present.
Authentication
Send your API key in the x-api-key header on every request.
Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| cardId (path) | integer (int32) | Yes | |
| Idempotency-Key (header) | string | No | Optional for existing clients; strongly recommended for every mutation. Use a unique key per company/business operation and reuse it with the identical method, path, query, content type and body on retry. Completed requests replay the original status/body, including 207 and errors. A different request returns 409 IDEMPOTENCY_KEY_CONFLICT. A running/interrupted request returns 409 IDEMPOTENCY_OUTCOME_PENDING; reconcile, never switch keys to bypass it. Records have no automatic expiry. No key means legacy behavior without replay protection. LabelPrefix is not a deduplication key. |
Responses
200 — OK
| Field | Type | Required | Description |
|---|---|---|---|
| id | unknown | No | |
| externalCardId | string | No | |
| status | string | No | |
| cardType | string | No | |
| productName | string | No | |
| currency | string | No | |
| availableBalance | unknown | No | |
| pendingBalance | unknown | No | |
| maskedCardNumber | string | No | |
| cardNumberLastFour | string | No | |
| cardholderName | string | No | |
| companyCardholderId | string | No | |
| assignedUserId | unknown | No | |
| assignedUserEmail | string | No | |
| assignedUserName | string | No | |
| isVirtual | boolean | No | |
| isPhysical | boolean | No | |
| isLocked | boolean | No | |
| pendingLoadRequest | object | No | |
| createdAt | string (date-time) | No |
400 — Bad Request
| Field | Type | Required | Description |
|---|---|---|---|
| message | string | No | |
| code | string | No |
401 — Unauthorized
| Field | Type | Required | Description |
|---|---|---|---|
| type | string | No | |
| title | string | No | |
| status | unknown | No | |
| detail | string | No | |
| instance | string | No |
403 — Forbidden
| Field | Type | Required | Description |
|---|---|---|---|
| message | string | No | |
| code | string | No |
404 — Not Found
| Field | Type | Required | Description |
|---|---|---|---|
| message | string | No | |
| code | string | No |
409 — Conflict
| Field | Type | Required | Description |
|---|---|---|---|
| message | string | No | |
| code | string | No |
429 — Too Many Requests
| Field | Type | Required | Description |
|---|---|---|---|
| type | string | No | |
| title | string | No | |
| status | unknown | No | |
| detail | string | No | |
| instance | string | No |
500 — Internal Server Error
| Field | Type | Required | Description |
|---|---|---|---|
| message | string | No | |
| code | string | No |
503 — Service Unavailable
| Field | Type | Required | Description |
|---|---|---|---|
| message | string | No | |
| code | string | No |
Example request
curl -X POST "https://{base_url}/api/v2/mor/public/cards/{cardId}/unassign" \
-H "x-api-key: YOUR_API_KEY"This page is generated from the live OpenAPI specification and always matches the current API.