Documentation Index
Fetch the complete documentation index at: https://docs.go.gbgplc.com/llms.txt
Use this file to discover all available pages before exploring further.
Overview
This quickstart guides you through the following:- Create a journey with the PEPs and Sanctions module.
- Set up authentication.
- Execute your first customer journey.
- Retrieve tasks, submit data, and confirm the journey completes.
Prerequisites
Before running this quickstart, complete the following:- Your GBG account manager has provided your API credentials. These credentials are required to authenticate your API requests. They include:
client_id: Your unique API client identifier.client_secret: Your secret key for API authentication.username: Your API username.password: Your API password.grant_type: Type in password (this is fixed and does not change).
API credentials are different from your personal GBG GO platform login. API credentials are specifically for programmatic access and should not be confused with the username/password you use to log into the GBG GO dashboard.
- Your password has been reset from the temporary one (required before API authentication). Ask your account manager for help with password reset.
- You have a development environment capable of making HTTP requests, for example, Postman.
Step 1: Create a journey with the PEPs and Sanctions module
Before you can execute a journey using the API, you need to create one in the GBG GO platform. In this quickstart, you’ll use the PEPs and Sanctions module, which screens individuals against global watchlists for Politically Exposed Persons (PEPs) and sanctioned entities. This helps your organisation meet Anti-Money Laundering (AML) and Counter-Terrorism Financing (CTF) obligations. When a customer’s data is submitted, the module compares it against international databases and returns a result, either a hit (match found), no hit (no match), or not available. To create the journey:- Log in to the GBG GO platform and create a new journey in the journey builder.
- Click Browse and add modules.
- Search for PEPs and Sanctions or navigate to the Compliance Screening category.
- Select the PEPs and Sanctions module and choose the UK Instance (with Adverse Media and OGM) variant.
- Click Add to journey.
- Click Configure outcomes and set up rules for match and no-match results. For example, set the outcome to “Match” when PEPs and Sanctions Results is PEPs and Sanctions Hit.
- Publish the journey to Preview.
- Note the journey’s resource ID and version from the journey dashboard. You’ll need these for the API calls. See Publish a journey for details on how to find these values.
Step 2: Request an access token for authentication
Make a POST request to obtain your Bearer token:cURL
JSON
If you run into a credentials error when making a token cURL request, then your credentials probably aren’t correct. Contact your account manager for the correct or updated credentials.
Step 3: Start your first customer journey
Use your access token and the journey resource ID from Step 1 to start a journey. Make a POST request to the(/journey/start) endpoint:
cURL
instanceId that represents your active journey:
JSON
instanceId — you’ll need it for every subsequent step.
Step 4: Retrieve task IDs
After starting a journey, GBG GO assigns tasks based on the modules in your journey. Retrieve the task IDs to find out what needs to be completed. Send a POST request to the/journey/task/list endpoint using the instanceId from Step 3:
cURL
JSON
taskId. You’ll use it in the next step to retrieve the task’s schema and to submit data.
Step 5: Retrieve tasks with their schema
Now fetch the tasks along with their corresponding JSON schema using thetaskId. This tells you the exact fields you need to submit for each task, in a single API call.
Send a POST request to the /journey/task/list/schema endpoint:
cURL
schema reference and the full schema definitions:
JSON
schema.$ref points to a key in the schemas map. The schema defines the full context structure you need to submit, including required fields and data types. Use this to build your submission payload in the next step.
Step 6: Submit task data
Use thetaskId from Step 4 and the schema from Step 5 to submit the required customer data. Send a POST request to the /journey/task/update endpoint:
cURL
The
"intent": "Complete" field is required to mark the task as finished. The fields in context depend on your journey’s task schema. Use the Manage schemas guide and User data schema reference to see the exact structure for your journey.Step 7: Fetch journey state
After submitting all task data, check whether the journey has completed. Send a POST request to the/journey/state/fetch endpoint:
cURL
JSON
Understand the response schema
Understand the response schema
The journey state response contains the full state and result of the journey. The exact
Module result (
PEP and sanctions match details (
Adverse media match details (
result payload differs by module, but the top-level structure is consistent across journeys.Top-level fields
| Field | Type | Description |
|---|---|---|
instanceId | string | Unique identifier for the journey instance. Use this to reference the journey in subsequent API calls. |
status | string | Overall journey status. One of InProgress, Completed, or Failed. |
metaData.createdTime | string | ISO 8601 timestamp for when the journey was started. |
metaData.completedTime | string | ISO 8601 timestamp for when the journey reached a terminal state. |
Subject and process
| Field | Type | Description |
|---|---|---|
data.context.subject.identity | object | The subject’s identity data submitted during the journey, including firstName, middleNames, lastNames, and dateOfBirth. |
data.context.process.journey | object | Metadata about the journey definition: name, id, version, startedAt, endedAt, and durationMilliSec. |
data.context.process.instance | object | The journey instance identifiers (id and instanceId). |
data.context.process.flow | object | A map keyed by module name (for example, peps_and_sanctions_adverseMedia_ogm). Each entry contains the module’s process, subject, and result data. |
data.context.result.status | string | Overall journey result status. |
data.context.result.error | array | Errors encountered during execution. Empty when the journey completed without errors. |
Module result (flow.<module>.result)
| Field | Type | Description |
|---|---|---|
advice | object | The module’s verification decision and supporting fields. Shape is module-specific. |
note | object | Detailed match data returned by the module. Use this for investigation or audit display. |
status | string | Module-level status, for example, complete. |
outcome | string | Final outcome derived from the outcome rules configured in the journey builder, for example, MATCH or NO_MATCH. |
PEPs and Sanctions advice
| Field | Type | Description |
|---|---|---|
decision | string | The module’s overall decision, for example, hit or no_hit. |
sanctions_hit | string | Description of the sanctions match, for example, Full name and DOB matched. Not Available indicates no match. |
pep_hit | string | Description of the PEP (Politically Exposed Person) match, or Not Available if no match. |
adverse_media_hit | string | Description of the adverse media match, or Not Available if no match. |
sent_to_ogm | boolean | Whether the case was sent to Ongoing Monitoring (OGM) for continuous screening. |
sanction_candidate_score | number | Match confidence score for the sanctions candidate (0–100). Higher values indicate stronger matches. |
customDecision | string | null | Custom decision value if configured in the journey, otherwise null. |
PEP and sanctions match details (note.pep_match_details, note.sanctions_match_details[])
| Field | Type | Description |
|---|---|---|
fullname / fullName | string | The matched person’s full name as held in the watchlist. |
aliases | array of string | Alternative names the subject is known by, including nicknames, initials, and alternate spellings. |
bodies | array of string | Sanctioning bodies or authorities that have listed the subject (sanctions matches only), for example, Office of Foreign Assets Control (OFAC). |
addresses | array of object | Known addresses associated with the matched subject. Each entry contains lines, locality, country, and superAdministrativeArea. |
dates | array of object | Significant dates for the matched subject. Each entry has a type (for example, Birth, Death) and an ISO 8601 date. |
Adverse media match details (note.adverse_media_match_details)
| Field | Type | Description |
|---|---|---|
sanctionsType | string | Category code of the adverse media match, for example, NM (negative media). |
subjectName | string | The matched subject’s name as identified in the media source. |
inputName | string | The name submitted to the module for screening. |
processedDate | string | Timestamp when the adverse media check was processed. |
details | array of object | List of matched media articles. Each entry contains sourceID, subjectMatched, text, score, category, url, textHeading, and newsOutlet. |
pageNumber | number | Current page of paginated media results. |
totalItems | number | Total number of matched media items found. |
totalPages | number | Total number of pages of media results. |
The
advice and note shapes vary per module. For the exact schema returned by each module variant, see Modules.status field indicates that the journey has completed successfully. The context field contains the full data context of the journey, including all information about the subject, process, and results from any modules or steps in the journey.
John’s full name and date of birth were successfully verified, resulting in a “hit” for sanctions screening. The module returned a match with a sanctions list and adverse news articles, providing detailed information about the match and related news articles.
When you see "status": "Completed", the journey is done and your integration is working end to end.
| Status | Meaning |
|---|---|
InProgress | The journey is still active. Retrieve remaining tasks. |
Completed | The journey is done. No further action is needed. |
Failed | The journey encountered an error. Review previous steps or retry. |
Next steps
Now that you’ve completed a full journey execution from start toCompleted, check out the following guides to learn more:
- Execute journey overview for in-depth guidance on each step.
- Complete API reference documentation.
- Handle errors for troubleshooting failed journeys.