Appearance
Create Company AML Screening Request.
Accepts requests for creating Company AML Screening Request.
| Environment | URL |
|---|---|
| Sandbox | https://api-test.streamline.laboremus.ug/aml-pep/screening/company/aml?v=1.0 |
| Production | https://api.streamline.laboremus.ug/screenings/company?v=1.0 |
Request
Request Type : POST
Authorization
This API uses OAuth 2.0 Client Credentials grant for authentication. You must obtain an access token from the authorization server before making API requests.
Obtaining an Access Token
Make a POST request to the token endpoint with your client credentials:
Token Endpoint: https://auth-api-demo.streamline.laboremus.ug/realms/streamline-test-realm/protocol/openid-connect/token
bash
curl --request POST \
--url https://auth-api-demo.streamline.laboremus.ug/realms/streamline-test-realm/protocol/openid-connect/token \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data 'client_id=YOUR_CLIENT_ID' \
--data 'client_secret=YOUR_CLIENT_SECRET' \
--data 'grant_type=client_credentials'curl --request POST \
--url https://auth-api-demo.streamline.laboremus.ug/realms/streamline-test-realm/protocol/openid-connect/token \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data 'client_id=YOUR_CLIENT_ID' \
--data 'client_secret=YOUR_CLIENT_SECRET' \
--data 'grant_type=client_credentials'js
const response = await fetch(
'https://auth-api-demo.streamline.laboremus.ug/realms/streamline-test-realm/protocol/openid-connect/token',
{
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
},
body: new URLSearchParams({
client_id: 'YOUR_CLIENT_ID',
client_secret: 'YOUR_CLIENT_SECRET',
grant_type: 'client_credentials',
}),
}
)
const { access_token } = await response.json()const response = await fetch(
'https://auth-api-demo.streamline.laboremus.ug/realms/streamline-test-realm/protocol/openid-connect/token',
{
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
},
body: new URLSearchParams({
client_id: 'YOUR_CLIENT_ID',
client_secret: 'YOUR_CLIENT_SECRET',
grant_type: 'client_credentials',
}),
}
)
const { access_token } = await response.json()python
import requests
response = requests.post(
'https://auth-api-demo.streamline.laboremus.ug/realms/streamline-test-realm/protocol/openid-connect/token',
data={
'client_id': 'YOUR_CLIENT_ID',
'client_secret': 'YOUR_CLIENT_SECRET',
'grant_type': 'client_credentials',
}
)
access_token = response.json()['access_token']import requests
response = requests.post(
'https://auth-api-demo.streamline.laboremus.ug/realms/streamline-test-realm/protocol/openid-connect/token',
data={
'client_id': 'YOUR_CLIENT_ID',
'client_secret': 'YOUR_CLIENT_SECRET',
'grant_type': 'client_credentials',
}
)
access_token = response.json()['access_token']Token Response
json
{
"access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
"expires_in": 300,
"token_type": "Bearer"
}{
"access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
"expires_in": 300,
"token_type": "Bearer"
}Using the Access Token
Include the token in the Authorization header for all API requests:
Authorization: Bearer <access_token>Authorization: Bearer <access_token>Token Expiration
Access tokens expire after the duration specified in expires_in (in seconds). Request a new token when the current one expires.
INFO
Always add your Subscription key to the request.
Subscription Key
Include your subscription key in every request using one of these methods:
| Method | Header/Parameter |
|---|---|
| Header (recommended) | Ocp-Apim-Subscription-Key: <your_key> |
| Query parameter | ?subscription-key=<your_key> |
bash
curl --request POST \
--url 'https://api.example.com/endpoint' \
--header 'Authorization: Bearer <access_token>' \
--header 'Ocp-Apim-Subscription-Key: <your_subscription_key>' \
--header 'Content-Type: application/json' \
--data '{"key": "value"}'curl --request POST \
--url 'https://api.example.com/endpoint' \
--header 'Authorization: Bearer <access_token>' \
--header 'Ocp-Apim-Subscription-Key: <your_subscription_key>' \
--header 'Content-Type: application/json' \
--data '{"key": "value"}'js
const response = await fetch(API_ENDPOINT, {
method: 'POST',
headers: {
'Authorization': `Bearer ${accessToken}`,
'Ocp-Apim-Subscription-Key': '<your_subscription_key>',
'Content-Type': 'application/json'
},
body: JSON.stringify(data)
})const response = await fetch(API_ENDPOINT, {
method: 'POST',
headers: {
'Authorization': `Bearer ${accessToken}`,
'Ocp-Apim-Subscription-Key': '<your_subscription_key>',
'Content-Type': 'application/json'
},
body: JSON.stringify(data)
})python
import requests
response = requests.post(
API_ENDPOINT,
headers={
'Authorization': f'Bearer {access_token}',
'Ocp-Apim-Subscription-Key': '<your_subscription_key>',
'Content-Type': 'application/json'
},
json=data
)import requests
response = requests.post(
API_ENDPOINT,
headers={
'Authorization': f'Bearer {access_token}',
'Ocp-Apim-Subscription-Key': '<your_subscription_key>',
'Content-Type': 'application/json'
},
json=data
)csharp
var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new AuthenticationHeaderValue("Bearer", accessToken);
client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", "<your_subscription_key>");
var content = new StringContent(
JsonSerializer.Serialize(data),
Encoding.UTF8,
"application/json"
);
var response = await client.PostAsync(API_ENDPOINT, content);var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new AuthenticationHeaderValue("Bearer", accessToken);
client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", "<your_subscription_key>");
var content = new StringContent(
JsonSerializer.Serialize(data),
Encoding.UTF8,
"application/json"
);
var response = await client.PostAsync(API_ENDPOINT, content);java
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(API_ENDPOINT))
.header("Authorization", "Bearer " + accessToken)
.header("Ocp-Apim-Subscription-Key", "<your_subscription_key>")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(jsonBody))
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(API_ENDPOINT))
.header("Authorization", "Bearer " + accessToken)
.header("Ocp-Apim-Subscription-Key", "<your_subscription_key>")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(jsonBody))
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());Request Values
| Name | Type | Required | Description |
|---|---|---|---|
| referenceId | string or null | no | A Guid / uuid / A set of unique Alphanumerical characters assigned to this verification request. |
| requesterId | string | no | The unique Id of the request initiator. |
| companyName | string or null (date-time) | yes | The name of the company. |
| option | string (Pep,Aml,Both) | yes | The option for screening . |
Example Request Body
json
{
"referenceId": "string",
"requesterId": "string",
"companyName": "string",
"option": "Pep"
}{
"referenceId": "string",
"requesterId": "string",
"companyName": "string",
"option": "Pep"
}Response
Response Values
Content type
application/json
| Name | Type | Description |
|---|---|---|
| id | string (uuid) | A Guid / uuid / A set of unique Alphanumerical characters assigned to this verification request. |
| createdAt | string (date-time) | The date when the screening request was created. |
| requesterId | string or null | The unique Id of the request. |
| status | string(Enum : Enum: Pending, Completed, Failed) | Status of the request sent to verify |
| totalHits | integer(int32) | The total number of hits from a specific candidate's screening. |
| option | string(Enum : Pep, Aml, Both) | The URL to find the request |
| processedAt | string or null (date-time) | Date at which the verification request was processed. |
| details | Array of objects or null | Specific attributes which are returned in the screening response. (Empty if no hit is returned) |
details
| Name | Type | Description |
|---|---|---|
| aliasNames | Array of string or null | A list of alias names of the entity |
| aliasGivenNames | Array of string or null | A list of alias given names of the entity |
| links | Array of string or null | A list of links for the entity This can be websites but also email addresses. |
| sourceType | string or null | The source type (Sanction, PEP, Criminal or Other). |
| address | Array of string or null | A list of addresses for entity |
| addressRemarks | Array of string or null | A list of address remarks for entity |
| companyNumber | Array of string or null | A list of company numbers for this entity. |
| jurisdiction | Array of string or null | A list of jurisdictions for this entity. |
| entityType | string or null | The entity type for the entity |
| pepType | string or null | The Pep type for the entity |
| name | string or null | The name of the entity |
| nameRemarks | Array of string or null | A list of name remarks for this entity. |
| sourceId | string or null | The source id of the list that can be queried by the listSources API method call |
| sanctionDetails | Array of string or null | A list of sanction details for the entity |
| otherInformation | Array of string or null | A list of other information for the screening candidate that cannot be categorized otherwise. |
| tlName | string or null | A third party tool is used for the transliteration of the name from Arabic or Chinese script into Latin script. |
Example Response Body
json
{
"requesterId": "7eac581f-5f1a-4336-a052-2704fbbf2fb8",
"status": "Successful",
"totalHits": 2,
"option": "Aml",
"processedAt": "2023-07-21T10:43:21.7198813+03:00",
"details": [
{
"aliasNames": null,
"aliasGivenNames": null,
"links": null,
"sourceType": "SANCTION",
"address": [
"Plot ##, Kanjokya Street, Kamwokya, Kampala, Uganda (Tel.: +256 51 543 578/9); PO BOX 33709, Kampala, Uganda Listed on: 29 Mar. 2007 (amended on 19 August 2020)"
],
"addressRemarks": null,
"companyNumber": null,
"jurisdiction": null,
"entityType": "UNKNOWN",
"pepType": null,
"name": " COMMERCIAL IMPEX (UCI) LTD",
"nameRemarks": null,
"sourceId": "ua_blacklist_sanction_list",
"sanctionDetails": [
"РБ ООН (Комітет 1533 (2004))"
],
"otherInformation": [
" “Inactive – status inactive” by the authorities of the Republic of Uganda. INTERPOL-UN Security Council Special Notice web link: https://www.interpol.int/en/How-we-work/Notices/View-UN-Notices-Entities."
],
"tlName": null
},
{
"aliasNames": [
" COMMERCIAL IMPEX (UCI) LTD"
],
"aliasGivenNames": null,
"links": [
"https://www.gov.uk/government/publications/financial-sanctions-consolidated-list-of-targets/consolidated-list-of-targets"
],
"sourceType": "SANCTION",
"address": [
"Plot 33",
"Kanjokya Street",
"Kamwokya",
"Kampala",
"Uganda",
"PO Box 33709"
],
"addressRemarks": null,
"companyNumber": null,
"jurisdiction": null,
"entityType": "ENTITY",
"pepType": null,
"name": "COMMERCIAL IMPEX (UCI) LTD",
"nameRemarks": null,
"sourceId": "uk_hmt_financial_sanction_list",
"sanctionDetails": [
"Date listed: 30/03/2007",
"Date designated: 29/03/2007",
"DRC0023",
"CDe.009",
"Group status: Asset Freeze Targets"
],
"otherInformation": [
"INTERPOL-UN Security Council Special Notice web link: https://www.interpol.int/en/How-we-work/Notices/View-UN-Notices-Entities.",
"Democratic Republic of the Congo",
"+256 41 533 578/9"
],
"tlName": null
}
],
"id": "303b28bb-7488-49db-ad6c-08db89be27fb",
"createdAt": "2023-07-21T07:43:21.0088895Z"
}{
"requesterId": "7eac581f-5f1a-4336-a052-2704fbbf2fb8",
"status": "Successful",
"totalHits": 2,
"option": "Aml",
"processedAt": "2023-07-21T10:43:21.7198813+03:00",
"details": [
{
"aliasNames": null,
"aliasGivenNames": null,
"links": null,
"sourceType": "SANCTION",
"address": [
"Plot ##, Kanjokya Street, Kamwokya, Kampala, Uganda (Tel.: +256 51 543 578/9); PO BOX 33709, Kampala, Uganda Listed on: 29 Mar. 2007 (amended on 19 August 2020)"
],
"addressRemarks": null,
"companyNumber": null,
"jurisdiction": null,
"entityType": "UNKNOWN",
"pepType": null,
"name": " COMMERCIAL IMPEX (UCI) LTD",
"nameRemarks": null,
"sourceId": "ua_blacklist_sanction_list",
"sanctionDetails": [
"РБ ООН (Комітет 1533 (2004))"
],
"otherInformation": [
" “Inactive – status inactive” by the authorities of the Republic of Uganda. INTERPOL-UN Security Council Special Notice web link: https://www.interpol.int/en/How-we-work/Notices/View-UN-Notices-Entities."
],
"tlName": null
},
{
"aliasNames": [
" COMMERCIAL IMPEX (UCI) LTD"
],
"aliasGivenNames": null,
"links": [
"https://www.gov.uk/government/publications/financial-sanctions-consolidated-list-of-targets/consolidated-list-of-targets"
],
"sourceType": "SANCTION",
"address": [
"Plot 33",
"Kanjokya Street",
"Kamwokya",
"Kampala",
"Uganda",
"PO Box 33709"
],
"addressRemarks": null,
"companyNumber": null,
"jurisdiction": null,
"entityType": "ENTITY",
"pepType": null,
"name": "COMMERCIAL IMPEX (UCI) LTD",
"nameRemarks": null,
"sourceId": "uk_hmt_financial_sanction_list",
"sanctionDetails": [
"Date listed: 30/03/2007",
"Date designated: 29/03/2007",
"DRC0023",
"CDe.009",
"Group status: Asset Freeze Targets"
],
"otherInformation": [
"INTERPOL-UN Security Council Special Notice web link: https://www.interpol.int/en/How-we-work/Notices/View-UN-Notices-Entities.",
"Democratic Republic of the Congo",
"+256 41 533 578/9"
],
"tlName": null
}
],
"id": "303b28bb-7488-49db-ad6c-08db89be27fb",
"createdAt": "2023-07-21T07:43:21.0088895Z"
}