Job Status
The job status API returns information about a job, including its completion status, whether or not it was successful, optionally the complete history (all jobs performed on that user), and also optionally, a signed link to the images captured during that job.Unlike the callback, where results are asynchronous and we POST to your server, the job status API is implemented on our servers and you make POST requests to it. Just like any other call to our servers, we use an encrypted signature to verify that you are the sender of the request, and the response will include a signature created by us for verification. You can find instructions on how to sign the request in our documentation.
Request Type: POST

Request Body

1
{
2
"timestamp": "<Put timestamp here>",
3
"signature": "<Put calculated sec_key here>",
4
"user_id": "<Put user_id here>",
5
"job_id": "<Put job_id here>",
6
"partner_id": "<Put your partner ID here>",
7
"image_links": <true || false>,
8
"history": <true || false>
9
}
10
}
Copied!

Return Values

Name
Description
timestamp
The timestamp used to create the signature.
signature
The signature for this response.
user_id
The unique user_id that was either assigned, or passed in to this job.
job_id
The unique job_id that was either assigned, or passed in to this job.
job_complete
Whether or not we have reported a final status for this job.
job_success
Whether or not we were able to achieve a successful match and have enrolled or authenticated this user.
result
This object will include the details of the final status.
result.ResultText
Textual value of the job outcome. A human readable result.
result.ResultType
The type of result
result.SmileJobID
Our internal job id. Should be supplied when raising support ticket for a job
result.PartnerParams
This should include the same user_id and job_id that you used to make the request.
result.ConfidenceValue
A number representing our confidence in the final determination.
result.IsMachineResult
A boolean indicating whether or not the final status was sent by a machine.
image_links
This object will contain the image captured during that job if the optional flag was passed in during the request.
image_links.selfie_image
An expiring link to the selfie image.
code
A code that maps to an error condition or success for the job_status call.

Example JSON Response

1
{
2
"timestamp": "2018-03-13T21:04:11.193Z",
3
"signature": "5445722f5af1791eb434949cce9a88dd321e5959fd24a8562ecb12bb00c33fe",
4
"job_complete": true,
5
"job_success": true,
6
"result": {
7
"ResultText": "Enroll User",
8
"ResultType": "SAIA",
9
"SmileJobID": "0000001897",
10
"JSONVersion": "1.0.0",
11
"IsFinalResult": "true",
12
"PartnerParams": {
13
"job_id": "52d0de86-be3b-4219-9e96-8195b0018944",
14
"user_id": "e54e0e98-8b8c-4215-89f5-7f9ea42bf650",
15
"job_type": 4
16
},
17
"ConfidenceValue": "100",
18
"IsMachineResult": "true",
19
},
20
"image_links": {
21
"selfie_image": "https://smile-fr-results.s3.us-west-2.amazonaws.com/test/000000/023/023-0000001897-LoRSpxJUzmYgYS2R00XpaHJYLOiNXN/SID_Preview_FULL.jpg"
22
},
23
"code": "2302",
24
"history": [
25
{
26
"ResultCode": "1210",
27
"ResultText": "Enroll User",
28
"ResultType": "DIVA",
29
"SmileJobID": "0000000857",
30
"JSONVersion": "1.0.0",
31
"IsFinalResult": "true",
32
"PartnerParams": {
33
"job_id": "52d0de86-be3b-4219-9e96-8195b0018944",
34
"user_id": "1511bf02-801a-4b57-ac8e-ef17e26bfeb4",
35
"job_type": "1",
36
"optional_info": "Partner can put whatever they want as long as it is a string",
37
"more_optional_info": "There can be as much or as little or no optional info"
38
}
39
},
40
{
41
"ResultCode": "0814",
42
"ResultText": "Provisional Enroll - Under Review",
43
"SmileJobID": "0000000857",
44
"ConfidenceValue": "97.000000",
45
"PartnerParams": {
46
"job_id": "52d0de86-be3b-4219-9e96-8195b0018944",
47
"user_id": "1511bf02-801a-4b57-ac8e-ef17e26bfeb4",
48
"job_type": "1",
49
"optional_info": "Partner can put whatever they want as long as it is a string",
50
"more_optional_info": "There can be as much or as little or no optional info",
51
}
52
},
53
{
54
"DOB": "1990-01-01",
55
"IDType": "BVN",
56
"Country": "Nigeria",
57
"FullName": "Peter Parker",
58
"ExpirationDate": "Not Available",
59
"IDNumber": "A01234567",
60
"ResultCode": "1012",
61
"ResultText": "ID Validated",
62
"ResultType": "ID Verification",
63
"SmileJobID": "0000000857",
64
"PartnerParams": {
65
"job_id": "52d0de86-be3b-4219-9e96-8195b0018944",
66
"user_id": "1511bf02-801a-4b57-ac8e-ef17e26bfeb4",
67
"job_type": "1",
68
"optional_info": "Partner can put whatever they want as long as it is a string",
69
"more_optional_info": "There can be as much or as little or no optional info",
70
"ExpirationDate": "Not Available"
71
}
72
}
73
]
74
}
Copied!

Job Status Codes

Depending on the outcome of the job_status call, there is a status code that will be returned. The status code is different from the result code which is the numerical value of the result of the job that was processed.
Code
Description
2301
System error
2302
Success
2303
Invalid JSON
2304
Job not found
2305
Invalid sec_key
2307
Enrolled user is disabled
2310
No enrolled user found
2313
Missing required parameters