BGC Media (Background Check Media).

BGC Media offers a robust background search service designed to screen companies and individuals against public compliance lists. This solution aids in the prevention of Money Laundering, the Financing of Terrorism (PLD/FT), and other forms of financial and job fraud.

Endpoints

There will be two endpoints available for the consumption of BGC Media: one for individuals and one for companies. These endpoints are listed below in the document.

Authentication

Every request must include an apikey header. Your unique key is a confidential credential issued by our Commercial team.

Headers Parameters

Name Type Required Description
apikey string yes Secret token of client identification

Handle your key like a password—never expose it in client‑side code or public repositories. If it is lost or compromised, contact the Commercial team immediately so we can revoke it and issue a new one.


API JSON Response Model

The JSON response will be the same for both endpoints, but the records attribute might be a dynamic list that provides information about individuals and companies.

All successful calls return a JSON envelope with record data and any non‑fatal warnings raised during processing.

Response example

{
  "records": [
    {
      "record": 1,
      "RecordDetails": { /* … */ },
      "SearchDate": "",
      "ResultID": 123456789,
      "RunID": 987654321,
      "Watchlist": { /* … */ }
    }
  ],
  "warnings": [
    {
      "code": "",
      "message": "",
      "fullMessage": ""
    }
  ]
}

Top‑Level Envelope

Field Type Notes
records array<Record> One element per subject screened. Always present, but may be an empty array.
warnings array<ErrorMessage> Optional list of non‑blocking issues (e.g., missing identifiers, partial matches). Can be null or omitted.

ErrorMessage is defined in Error Model and contains at least Code and Message properties.


Object Response Reference

Record

Field Type Description
record integer 1‑based index of the record within the response.
recordDetails RecordDetails Full subject profile as provided in the request & enriched by screening.
searchDate string(date‑time) UTC timestamp of the search execution.
resultID long Unique identifier of this search result.
runID long Identifier of the batch run this record belongs to.
watchlist WatchList Consolidated watch‑list results.

RecordDetails

Contains the canonicalised subject data used for matching.

Field Type Description
acceptListID long This element contains the system-generated number that identifies the accept list to which the record was added.
accountAmount string This element contains the account amount. Monetary amount involved (raw value as provided).
accountGroupID string Account group identifier.
accountOtherData string Free‑form extra data sent by the caller.
accountProviderID string External provider or onboarding platform reference.
accountMemberID string Member/customer identifier.
accountType string This element contains the account type.
addedToAcceptList boolean Indicates whether this subject was just added to the accept list.
addresses array<EntityAddress> Parsed addresses.
pdsVersion integer Version of the internal data specification used.
dppa string Driver’s Privacy Protection Act indicator.
eftType string This element contains the payment transaction type. Possible values: • None • ACH • Fedwire • ISO20022 • SWIFT • Unstructured
entityType string This element contains the entity type. Possible values: • Business • Individual • Text • Unknown • Unstructured
gender string This element contains the entity gender type. Possible values: • None • Female • Male • Unknown. None is not valid in a request.
glb integer This element contains the GLBA permissible use.
iDs array<object> List of identifiers.
lastUpdatedDate string(date‑time) When the record was last refreshed in our system.
name EntityName Parsed name elements (format: { First, Middle, Last, Full }).

WatchList

Field Type Description
matches array<Match> The list match information.
status SearchStatusType This element contains the status that indicates whether a list screening search was performed and whether results were returned. Possible values:
• NotSearched
• NoResults
• Results

Match

A single hit returned by the screening engine.

Field Type Description
acceptListID Long This element contains a system-generated number
addedToAcceptList bool true if this entity has just been added to the accept list during this screening run.
addressName bool This element contains the address name.
autoFalsePositive bool Set by the rules engine when the match is automatically classified as a false positive.
bestAddressIsPartial bool True indicates that the best address match was to a partial address.
bestCountry string This element contains the country that most closely matched the input information.
bestCountryScore int This element contains the score of the country that most closely matched the input information. If a valid score is not available, then -1 is returned.
bestCountryType string This element contains the type of the BestCountry element. Possible values:
• None
• AlternateName
• City
bestDOBIsPartial bool true if only a partial date of birth (month/year) matched.
bestName string This element contains the entity name that most closely matched the input information.
bestNameScore int This element contains the score of the name that most closely matched the input information. If a valid score is not available, then -1 is returned.
checkSum int A system-generated number that is used to determine if True Match records have changed.
conflicts EntityMatchConflict Key–value pairs detailing conflicting data points.
dateModified string This element contains the date when the record was last updated.
entityDetails EntityDetails Full data block returned by the source list for this entity.
entityName string This element contains the main entity name from the list record that generated the potential match.
entityScore int Overall similarity score (0‑100) across all matched attributes. if a valid score is not available, then -1 is returned.
entityUniqueID string This element contains a system-generated number that identifies the entity.
falseMatchUpdate string This element contains the type of data element that generated a false match update. Possible values:
• None
• BestName
• DOB
• Gender
• AKA
falsePositive bool True indicates that the match decision was set to False Positive.
file EntityMatchFile The information about the list that contained the potential match.
gatewayOFACScreeningIndicatorMatch bool True indicates that a third-party service found OFAC matches before the record was searched in TuIdentidad.
id long This element contains a system-generated number that identifies the match.
matchReAlert bool Re‑alert flag set when an existing match is resurfaced due to new data.
previousResultID int This element contains the previous result ID.
reasonListed string This element contains the reason that the entity was listed in the list.
relationShips List Contains information about related entities.
resultDate DateTime This element contains the date (YYYY-MM-DD) and 24-hour local time (HH:MM:SS) that generated the alert.
secondaryOFACScreeningIndicatorMatch bool True indicates that a third-party service found OFAC matches before the record was searched in TuIdentidad.
sourceItems List> Individual source records that contributed to the match. (format {SourceURI, DateModified})
status EntityDeceasedStateType This element indicates the deceased state for the list entity. Possible values:
• Unknown
• Deceased
• Alive
• NotApplicable
trueMatch bool True indicates that the match decision was set to True Match.

EntityDetails

Provides the raw data block we received from the watch‑list provider.

Field Type Description
additionalInfo array<EntityAdditionalInfo> Miscellaneous data (format: { ID, Type, Value })..
addresses array<EntityAddress> Locations tied to the entity.
aKAs array<EntityAKA> “Also‑Known‑As” names.
comments string This element contains uncategorized additional information about the list entity. This information may include source contact information, web addresses, or email addresses.
entytiType string This element contains the entity type. Possible values:
• None
• Business
• Individual
• Unknown
• Vessel
dateListed string(date) This element contains the date that the entity was added to the list. YYYY-MM-dd
iDs array<object> Government IDs, registry numbers, etc.
listReferenceNumber string Unique list reference.
name EntityName Tokenised name pieces.

EntityAdditionalInfo

Field Type Description
ID Long This element contains the system‑generated number that identifies the additional information.
Type String This element contains the type of additional information.
Value String This element contains the value of the additional information.

EntityAddress

Field Type Description
Category String This element contains the address category. Possible values:
• None
• Residential
• Business
• Associated
• PlaceOfBirth
• CorrectionalFacility
• Citizenship
• CountryOfBuild
• Flag
• Headquarters
• Nationality
• Ownership
• PEP
• Residency
• SpecialVotingRight
• Unknown
City String This element contains the city name.
Comments String This element contains any additional comments.
For example, this element may include a date for when the address was current.
Country String This element contains the country name.
ID Long This element contains the system‑generated number that identifies the address.
PostalCode String This element contains the postal code.
StateProvinceDistrict String This element contains the state, province, or district name.
Street1 String This element contains the first line of the street address.
Street2 String This element contains the second line of the street address.
Type AddressType This element contains the address type.
Possible values:
• None
• Current
• Mailing
• Previous
• Unknown

EntityAKA

Field Type Description
Category AKACategoryType This element contains the AKA (also known as) category type. This type indicates the level that the alternative name is associated with the entity. Possible values:
• None
• Strong
• Weak
Comments String This element contains additional AKA information. For example, this element may include the DOB (date of birth) information or the POB (place of birth) information for the AKA entity.
ID Long This element contains the system‑generated number that identifies the record.
Name EntityName This element contains the name.
ScriptType String This element contains the native script (for example, Basic Latin).
Type AKAType This element contains the alternative name type. Possible values:
• None
• Acronym
• AKA (also known as)
• CallSign
• CCC (Chinese commercial code)
• DBA (doing business as)
• FKA (formerly known as)
• Nickname
• NKA (now known as)

EntityName

Field Type Description
First String This element contains the first name.
Full String This element contains the full name.
Generation String This element contains the generation. Examples of generation information include Junior or III.
Last String This element contains the last name.
Middle String This element contains the middle name.
Title String This element contains the title.

EntityMatchConflict

Field Type Description
AddressConflict Boolean True indicates that the input address and the address for the list entity did not match.
CitizenshipConflict Boolean True indicates that the input citizenship and the citizenship for the list entity did not match.
CountryConflict Boolean True indicates that the input country and the country for the list entity did not match.
DOBConflict Boolean True indicates that the input date of birth (DOB) and the DOB for the list entity did not match.
EntityTypeConflict Boolean True indicates that the input entity type and the entity type of the list entity did not match.
GenderConflict Boolean True indicates that the input gender and the gender for the list entity did not match.
IDConflict Boolean True indicates that the input ID and the ID for the list entity did not match.
PhoneConflict Boolean True indicates that the input phone number and the phone number for the list entity did not match.

EntityMatchFile

Field Type Description
Build DateTime Date and local (24‑hour) time when built the list (YYYY‑MM‑DD HH:MM:SS).
Custom Boolean True indicates that the list is a custom screening list.
ID Unsigned Integer System‑generated number that uniquely identifies the list.
Name String Name of the list.
Published DateTime Date and local (24‑hour) time when published the list (YYYY‑MM‑DD HH:MM:SS).
Type DataFileType Data‑file type of the list.
Possible values:
• UDF (TuID file)
• ADF (accept list)
• BDF (entity list)
• CDF (country list)
• SDF (TuID file)

EntityRelationship

Field Type Description
DateModified DateTime Date and time when the entry was last updated.
EntityId Integer WorldCompliance GUID (globally unique identifier) of the related entity.
EntityName String Name of the related entity.
Group String Relationship group.
Possible values:
• Associations
• Companies
• Family
• MSOEMSWF (member of state‑owned enterprises / sovereign wealth funds)
• None
OwnershipPercentage Double Company‑to‑company ownership percentage identified by WorldCompliance researchers.
Maximum five‑digit number with two decimal places (e.g., 100.00, 45.98).
Segments String Risk categories to which the entity is linked.
Source String WorldCompliance data source that published the information.
SubCategories List Record sub‑categories associated with the relationship.
Type String Relationship type (for example, Shareholder, Director, Subsidiary).

Possible Relationship Types

Relationship data can include relationship types. The following relationship types are available:

  • None
  • Accountant
  • Advisor
  • AffiliatedCompany
  • AffiliatedOrganization
  • Associate
  • Aunt
  • Brother
  • Brotherinlaw
  • CoDefendant
  • Controller
  • Cousin
  • Daughter
  • Daughterinlaw
  • DecisionInflAdvisor
  • DecisionInflExecutive
  • DecisionInflKeyMember
  • DomesticPartner
  • Employee
  • Executive
  • ExHusband
  • ExSpouse
  • ExWife
  • Father
  • Fatherinlaw
  • Friend
  • GrandChild
  • Grandfather
  • Grandmother
  • Husband
  • KeyMember
  • LegalCouncil
  • MgmtCtrlExecutive
  • MgmtCtrlKeyMember
  • Mother
  • Motherinlaw
  • Nephew
  • Niece
  • Owner
  • RealEstateProfessional
  • RegisteredAgent
  • Relative
  • Sister
  • Sisterinlaw
  • Son
  • Soninlaw
  • Spouse
  • Uncle
  • Wife

Handling Warnings

Warnings do not change the HTTP status code (still 200 OK). Treat them as advisory; however, if your workflow depends on complete data, you should inspect Warnings and decide whether to:

  1. Retry the request with corrected input.
  2. Flag the record for manual review.
  3. Ignore the warning if it is non‑critical for your use case.

Warning Model

Name Type Description
code string A code representing the type of error.
message string A human-readable message describing the error.
fullDescription string Additional details about the error.

Physical Person Method

Description

The Physical Person endpoint is used to search for person in lists in the BGC Media database. The endpoint is designed to search for individuals and provide information about them.

URI: ~/api/bgcmedia/physicalPerson

Request Parameters

These parameters are for physical persons.

Name Type Required Description
names string yes Names of the person.
lastName string yes Last name of the person
secondLastname string yes Secord surname which is typically the mother's first surname
dateBirth string no Date of birth of the person (MM/dd/YYYY)
country string no Country of origin of the person. The input text should follow the iso 3166 alfa-2 standard “MX”,”US”.

Request example

{
  "names": "John",
  "lastName": "Doe",
  "secondLastname": "Smith",
  "dateBirth": "12/21/1990",
  "country": "MX"
}

Response example

Review the JSON Response model section for the structure of the response.


Juridical Person Method

Description

The Juridical Person endpoint is used to search for companies in the BGC Media database. The endpoint is similar to the Physical Person endpoint, but it is specifically designed for companies.

URI: ~/api/bgcmedia/juridicalPerson

Request Parameters

These parameters are for juridical persons.

Name Type Required Description
fullName string yes Full Name of the company.
country string no Country of origin of the company. The input text should follow the iso 3166 alfa-2 standard “MX”,”US”.

Request example

{
  "fullName": "Company Name",
  "country": "MX"
}

Response example

Review the JSON Response model section for the structure of the response.


Error Handling

The API will return a JSON object with an error message in case of an error.

Error Model

The response will include the following fields:

Name Type Description
code string A code representing the type of error.
message string A human-readable message describing the error.
fullMessage string Additional details about the error.

Errors Message Reference

Code Message
BGCM010 Name field is required or contains invalid characters.
BGCM011 LastName field is required or contains invalid characters.
BGCM012 SecondLastName field is required or contains invalid characters.
BGCM013 DateBirth field is not in the correct format.
BGCM014 Country field must be a valid ISO‑3166 alpha‑2 code.
BGCM015 Error obtaining Access Token.
BGCM016 Server error. Please try again later or contact support if the issue persists.
BGCM018 BusinessName field is required or contains invalid characters.
BGCM019 Error handling the response or the server encountered an issue.
BGCM020 Bad Request received from the server.
BGCM021 Unauthorized access. Please check your credentials.
BGCM022 Forbidden access. You do not have permission to access this resource.
BGCM023 Resource not found.

Warning Message Reference

Code Message
BGCM017 No results found for the given search criteria.