Get Card Production Status
This API returns the batch identified by correlationId and one result line for every card produced in that batch. The permission name in the database is BATCH_STATUS, described as "Get card production request status".
| Item | Value |
|---|---|
| Method | GET |
| URL | /card-management/api/v1/batch-process/status |
| Header | Authorization: Bearer <accessToken> |
| Permission | BATCH_STATUS on the client id inside the token |
| Body | None |
Request Parameters description
| Field # | Field name | Data type | Required | Description |
|---|---|---|---|---|
| 1 | correlationId | string | true | Correlation id returned when the production batch was submitted. Example: c30a4734ce184363995c08cea35f5f3a. |
Sample Request
GET /card-management/api/v1/batch-process/status?correlationId=c30a4734ce184363995c08cea35f5f3a HTTP/1.1
Host: {host}
Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.example.signatureResponse Message field description
| Field | Type | Description |
|---|---|---|
| id | number | Internal batch row id. |
| status | string | Batch status. |
| batchId | number | Batch id. Card rows are loaded with this id. |
| count | number | Number of cards requested in the batch. |
| preparedCount | number | Number of cards prepared. |
| createdCount | number | Number of cards created. |
| responseCode | string | Batch response code. |
| responseMessage | string | Batch response message. |
| jobNo | number | Personalization job number. |
| autoUploadStatus | string | Auto-upload status. |
| dataPrepStatus | string | Data-prep status. |
| createdBy | string | User or system that created the batch. |
| preparedDate | string | Timestamp when the card file was prepared. |
| creationDate | string | Date and time the batch was created. |
| updatedDate | string | Date and time the batch was last updated. |
| correlationId | string | Correlation id from the query. |
| dataPrepResponse | string | Data-prep response text. |
| dataPrepRequestId | number | Data-prep request id. |
| cardDataFilename | string | Name of the prepared card-data file. |
| autoPersoUpload | boolean | Whether automatic personalization upload is enabled. |
| financialInstitution | string | Financial institution for the batch. |
| reconciliationStatus | string | Reconciliation status against the smart-card platform. |
| reconciliationAttemptCount | number | Number of reconciliation attempts. |
| lastScpQueryAt | string | Time of the last smart-card status query. |
| nextScpQueryAt | string | Time of the next smart-card status query. |
| reconciliationMessage | string | Reconciliation message. |
cardRequestResponses
| Field | Type | Description |
|---|---|---|
| cardRequestId | string | Card reference for that production row. |
| responseMessage | string | Result for that card. The value depends on the stored error code. |
Sample Response (Success)
{
"code": "200",
"description": "Successful",
"batchProcess": {
"id": 20114,
"status": "FAILED",
"batchId": 20114,
"count": 2,
"preparedCount": 0,
"createdCount": 0,
"responseCode": "99",
"responseMessage": "No cards produced.",
"jobNo": null,
"autoUploadStatus": null,
"dataPrepStatus": null,
"createdBy": "[email protected]",
"preparedDate": null,
"creationDate": "2025-01-29T12:32:34.56",
"updatedDate": "2025-01-29T12:32:38.713",
"correlationId": "e29bffe6e112447288031bd6m460c20d",
"dataPrepResponse": null,
"dataPrepRequestId": null,
"cardDataFilename": null,
"autoPersoUpload": true,
"financialInstitution": "Interswitch"
},
"cardRequestResponses": [
{
"cardRequestId": "d59c7fbe9869444d9f35d0f506d17020",
"responseMessage": "Account: 2849753061 already exists."
},
{
"cardRequestId": "b0630ffbc1574662b778f74c1c99b394",
"responseMessage": "Account: 4792861350 already exists."
}
]
}Error Responses
HTTP 400, query parameter omitted. correlationId is required by the API. code is 400 BAD_REQUEST. description is Required request parameter 'correlationId' for method parameter type String is not present. errors[0].message is correlationId. errors[0].fieldName is correlationId parameter is missing.
{
"code": "400 BAD_REQUEST",
"description": "Required request parameter 'correlationId' for method parameter type String is not present",
"correlationId": "",
"errors": [
{
"message": "correlationId",
"fieldName": "correlationId parameter is missing"
}
]
}
HTTP 400, correlation id is present but empty. code is 400. description is Correlation ID is required.
{
"code": "400",
"description": "Correlation ID is required."
}HTTP 401, token missing or rejected. The resource server rejects the call before the batch lookup. Send the accessToken from Card 360 Login in the Authorization header.
HTTP 403, client lacks BATCH_STATUS. The token is valid and the client is not allowed to call this path.
{
"code": "403",
"description": "Access denied. Required permission: BATCH_STATUS"
}HTTP 404, no batch for that correlation id.
{
"code": "404",
"description": "No batch found",
"correlationId": "c30a4734ce184363995c08cea35f5f3a"
}Call sequence
-
POST /card-management/login with clientId, clientSecret, and scope.
-
Read accessToken from the 200 response.
-
GET /card-management/api/v1/batch-process/status?correlationId={correlationId} with header Authorization: Bearer {accessToken}.
-
Read batchProcess for the batch, and cardRequestResponses for each card. Use responseMessage on each card as the production result for that card reference.
Updated about 5 hours ago
