Monitoring jobs
Monitoring your categorization jobs is straightforward with our API endpoints. You can query the status of a single job, or of all jobs linked to a specific consent or user.
Single Job Monitoring
To track the status of a specific Categorization Job, make a GET request to the following endpoint and replace <jobId> with the unique ID of your job:
https://api.enablenow.nl/cfa/v2/categorization-jobs/<jobId>
For example, to retrieve the status of the job with ID e3a44fea-f156-4fc5-dd04-08db5d03478a
, the API call would look like this:
https://api.enablenow.nl/cfa/v2/categorization-jobs/e3a44fea-f156-4fc5-dd04-08db5d03478a
Monitoring Jobs linked to Consent
To retrieve the status of all jobs linked to a specific consent, use the following endpoint replacing <consentId> with the unique consent ID:
https://api.enablenow.nl/cfa/v2/categorization-jobs?consentId=<consentId>
For instance, if the consentId is 57ee0578-5bf4-4dcf-e1fa-08db5aa0e6b2
, your API call would look like this:
https://api.enablenow.nl/cfa/v2/categorization-jobs?consentId=57ee0578-5bf4-4dcf-e1fa-08db5aa0e6b2
Monitoring Jobs linked to External User
You can also retrieve the status of all jobs associated with a user by using the parameter <userId> or <externalUserId>:
https://api.enablenow.nl/cfa/v2/categorization-jobs?externalUserId=<externalUserId>
For example, if the externalUserId is af86536d-34e3-4ebc-6c64-08db56ccef25
, you would make the following API call:
https://api.enablenow.nl/cfa/v2/categorization-jobs?externalUserId=af86536d-34e3-4ebc-6c64-08db56ccef25
Monitoring Jobs linked to an accountId
You can also retrieve the status of all jobs associated with an accountId by using the parameter <accountId>:
https://api.enablenow.nl/cfa/v2/categorization-jobs?accountId=<accountId>
For example, if the accountId is af86536d-34e3-4ebc-6c64-08db56ccef25
, you would make the following API call:
https://api.enablenow.nl/cfa/v2/categorization-jobs?accountId=af86536d-34e3-4ebc-6c64-08db56ccef25
Response
The status of a job (or jobs) will be returned in an object with the following structure:
Field | Description | Type |
---|---|---|
Id | The Job's unique ID | UUID |
ParentId | Id of the Parent job. If multiple jobs are dependent on each other it will be linked to one main parent job. | UUID |
Status | The Job's current status: PENDING, INPROGRESS, COMPLETED, FAILED | String |
EngineVersion | Version of the categorization engine used for this job | String |
ConsentId | The consent ID associated with the job (Not returned when empty or null) | UUID |
UserId | The user ID associated with the job (Not returned when empty or null) | UUID |
ExternalUserId | The external user ID associated with the job (Not returned when empty or null) | String |
AccountIds | The AccountIds ID associated with the job (Not returned when empty or null) | Array(UUID) |
MetaData | Dynamic metadata used for categorization-jobs | Object |
Fields that are not always present (ParentId, ConsentId, UserId, ExternalUserId, AccountIds) will be excluded from the response when they contain null values.
Example
{
"data": {
"id": "4c15cf76-9280-4ec5-2d46-08dde9517262",
"status": "COMPLETED",
"engine": "z1",
"profile": "retail",
"consentId": "5d0efa79-341f-4eee-9af6-08dde9531163",
"parentId": "7860a7ae-9799-4c15-9cb2-e02208253914",
"MetaData": {}
}
}