openapi: 3.1.0 info: title: API Reference alerts business API version: 1.0.0 servers: - url: https://api.cable.tech description: Production tags: - name: business paths: /v1/business/screening_check: post: operationId: v-1-business-screening-check summary: Add screening check information description: Business endpoint for adding new screening check information tags: - business parameters: - name: x-api-key in: header required: true schema: type: string responses: '200': description: Operation success content: application/json: schema: $ref: '#/components/schemas/Business_v1_business_screening_check_Response_200' requestBody: description: Request body for adding screening checks information, such as PEP, AM & Sanctions for a parent entity content: application/json: schema: type: array items: $ref: '#/components/schemas/V1BusinessScreeningCheckPostRequestBodyContentApplicationJsonSchemaItems' /v1/business/sar_info: post: operationId: v-1-business-sar-info summary: Add SAR information description: Business endpoint for adding new SAR (Suspicious Activity Report) information tags: - business parameters: - name: x-api-key in: header required: true schema: type: string responses: '200': description: Operation success content: application/json: schema: $ref: '#/components/schemas/Business_v1_business_sar_info_Response_200' requestBody: description: Request body for adding SAR (Suspicious Activity Report) information for a parent entity content: application/json: schema: type: array items: $ref: '#/components/schemas/V1BusinessSarInfoPostRequestBodyContentApplicationJsonSchemaItems' /v1/business/risk_assessment: post: operationId: v-1-business-risk-assessment summary: Add customer risk assessment information description: Business endpoint for adding new customer risk assessment information tags: - business parameters: - name: x-api-key in: header required: true schema: type: string responses: '200': description: Operation success content: application/json: schema: $ref: '#/components/schemas/Business_v1_business_risk_assessment_Response_200' requestBody: description: Request body for adding customer risk assessment information for a parent entity content: application/json: schema: type: array items: $ref: '#/components/schemas/V1BusinessRiskAssessmentPostRequestBodyContentApplicationJsonSchemaItems' /v1/business/person_info: post: operationId: v-1-business-person-info summary: Add person information description: Business endpoint for adding new person information tags: - business parameters: - name: x-api-key in: header required: true schema: type: string responses: '200': description: Operation success content: application/json: schema: $ref: '#/components/schemas/Business_v1_business_person_info_Response_200' requestBody: description: Request body for adding information about persons content: application/json: schema: type: array items: $ref: '#/components/schemas/V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItems' /v1/business/onboarding_flow: post: operationId: v-1-business-onboarding-flow summary: Add onboarding flow information description: Business endpoint for adding new Onboarding Flow information tags: - business parameters: - name: x-api-key in: header required: true schema: type: string responses: '200': description: Operation success content: application/json: schema: $ref: '#/components/schemas/Business_v1_business_onboarding_flow_Response_200' requestBody: description: Request body for adding Onboarding Flow information for a parent entity content: application/json: schema: type: array items: $ref: '#/components/schemas/V1BusinessOnboardingFlowPostRequestBodyContentApplicationJsonSchemaItems' /v1/business/idv_info: post: operationId: v-1-business-idv-info summary: Add IDV information description: Business endpoint for adding new IDV (Identity Verification) information tags: - business parameters: - name: x-api-key in: header required: true schema: type: string responses: '200': description: Operation success content: application/json: schema: $ref: '#/components/schemas/Business_v1_business_idv_info_Response_200' requestBody: description: Request body for adding IDV (Identity Verification) information for a parent entity content: application/json: schema: type: array items: $ref: '#/components/schemas/V1BusinessIdvInfoPostRequestBodyContentApplicationJsonSchemaItems' /v1/business/company_info: post: operationId: v-1-business-company-info summary: Add company information description: Business endpoint for adding new company information tags: - business parameters: - name: x-api-key in: header required: true schema: type: string responses: '200': description: Operation success content: application/json: schema: $ref: '#/components/schemas/Business_v1_business_company_info_Response_200' requestBody: description: Request body for adding information about companies content: application/json: schema: type: array items: $ref: '#/components/schemas/V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItems' /v1/business/account_status: post: operationId: v-1-business-account-status-info summary: Add account status information description: Business endpoint for adding new account status information tags: - business parameters: - name: x-api-key in: header required: true schema: type: string responses: '200': description: Operation success content: application/json: schema: $ref: '#/components/schemas/Business_v1_business_account_status_info_Response_200' requestBody: description: Request body for adding account status information for a parent entity content: application/json: schema: type: array items: $ref: '#/components/schemas/V1BusinessAccountStatusPostRequestBodyContentApplicationJsonSchemaItems' /v1/business/access_info: post: operationId: v-1-business-access-info summary: Add access information description: Business endpoint for adding new access information tags: - business parameters: - name: x-api-key in: header required: true schema: type: string responses: '200': description: Operation success content: application/json: schema: $ref: '#/components/schemas/Business_v1_business_access_info_Response_200' requestBody: description: Request body for adding access information for a parent entity content: application/json: schema: type: array items: $ref: '#/components/schemas/V1BusinessAccessInfoPostRequestBodyContentApplicationJsonSchemaItems' components: schemas: V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItemsData: type: object properties: legal_name: type: string description: Legal name of the business trading_name: type: string description: Trading name of the business email: type: string description: Main contact email for the company addresses: type: array items: $ref: '#/components/schemas/V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItemsDataAddressesItems' phone_number: type: string description: Main contact telephone number for the company type: type: string description: Business entity type. eg. Sole Trader, Limited Company registration_number: $ref: '#/components/schemas/V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItemsDataRegistrationNumber' incorporation_date: type: string format: date description: Date when the company was incorporated incorporation_country: type: string description: 2 or 3 Character ISO 3166 Country Code (https://w.wiki/4rY) incorporation_state: type: string description: State where the company was incorporated (US only) primary_operation_country: type: string description: 2 or 3 Character ISO 3166 Country Code (https://w.wiki/4rY) industry: type: string description: Nature of business industry_classification: $ref: '#/components/schemas/V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItemsDataIndustryClassification' source_of_wealth: type: string description: Source of wealth of the company source_of_funds: type: string description: Source of initial deposit of the company first_transaction_completed_at: type: string format: date-time description: Original timestamp of when the person completed their first transaction product_type: type: string registered_as_inactive: type: boolean description: If the company is registered as inactive, this should be set to true custom: $ref: '#/components/schemas/CustomData' title: V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItemsData V1BusinessAccessInfoPostRequestBodyContentApplicationJsonSchemaItemsData: type: object properties: ip: type: string description: IP address of the connecting client device_id: type: string description: Device identifier. eg. SSAID / Android ID / Device Fingerprint custom: $ref: '#/components/schemas/CustomData' title: V1BusinessAccessInfoPostRequestBodyContentApplicationJsonSchemaItemsData Business_v1_business_onboarding_flow_Response_200: type: object properties: success: type: boolean default: true description: You probably did something wrong if you set this to false required: - success title: Business_v1_business_onboarding_flow_Response_200 BusinessEntityParent: type: object properties: id: type: string description: Unique external identifier of the parent entity, ID stored in your database / back-office type: $ref: '#/components/schemas/BusinessEntityParentType' description: Type of the parent entity required: - id - type title: BusinessEntityParent Business_v1_business_account_status_info_Response_200: type: object properties: success: type: boolean default: true description: You probably did something wrong if you set this to false required: - success title: Business_v1_business_account_status_info_Response_200 V1BusinessScreeningCheckPostRequestBodyContentApplicationJsonSchemaItemsData: type: object properties: screening_id: type: string description: The ID linking the initial/reviewed result screening_type: type: string description: 'The type of screening check that was performed. One of: SANCTION, PEP, ADVERSE_MEDIA' screening_lists: type: array items: type: string description: The lists that were screened against. E.g. OFAC, ComplyAdvantage Watchlists... screening_outcome: type: string description: 'The outcome of the screening check. One of: POSITIVE, NEGATIVE, TRUE_POSITIVE, TRUE_NEGATIVE, FALSE_POSITIVE, FALSE_NEGATIVE' screening_provider: type: string description: The provider that performed the screening check custom: $ref: '#/components/schemas/CustomData' required: - screening_id - screening_type - screening_outcome - screening_provider title: V1BusinessScreeningCheckPostRequestBodyContentApplicationJsonSchemaItemsData Business_v1_business_person_info_Response_200: type: object properties: success: type: boolean default: true description: You probably did something wrong if you set this to false required: - success title: Business_v1_business_person_info_Response_200 V1BusinessAccountStatusPostRequestBodyContentApplicationJsonSchemaItemsData: type: object properties: account_status: type: string description: 'Latest account status for the related entity. One of the following: APPROVED, BLOCKED, CLOSED, PENDING, REJECTED' custom: $ref: '#/components/schemas/CustomData' required: - account_status title: V1BusinessAccountStatusPostRequestBodyContentApplicationJsonSchemaItemsData V1BusinessIdvInfoPostRequestBodyContentApplicationJsonSchemaItemsDataDocumentExtractedDataItems: type: object properties: type: type: string description: Type of data extracted from the document value: type: string description: Value of the data extracted from the document required: - type - value title: V1BusinessIdvInfoPostRequestBodyContentApplicationJsonSchemaItemsDataDocumentExtractedDataItems V1BusinessOnboardingFlowPostRequestBodyContentApplicationJsonSchemaItemsData: type: object properties: flow_name: type: string description: Latest onboarding flow that this entity has gone through, e.g. manual KYC, automated onboarding, Simplified Due Diligence, Enhanced Due Diligence outcome: type: string description: Outcome for the latest onboarding flow that this entity has gone through, e.g. automated approval, manual approval, automated rejection, manual rejection, EDD required outcome_reason: $ref: '#/components/schemas/V1BusinessOnboardingFlowPostRequestBodyContentApplicationJsonSchemaItemsDataOutcomeReason' custom: $ref: '#/components/schemas/CustomData' required: - flow_name - outcome title: V1BusinessOnboardingFlowPostRequestBodyContentApplicationJsonSchemaItemsData V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItemsDataRegistrationNumber: type: object properties: type: type: string description: Type of registration number, e.g. Companies House number (UK), EIN number (US) etc. value: type: string description: The registration number required: - type - value title: V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItemsDataRegistrationNumber V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItemsDataIndustryClassification: type: object properties: code_type: type: string description: Type of industry classification code code: type: array items: type: string description: Industry classification codes description: type: string description: Description of the industry classification code required: - code_type - code title: V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItemsDataIndustryClassification V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItemsParentType: type: string enum: - company description: Type of the parent entity title: V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItemsParentType Business_v1_business_risk_assessment_Response_200: type: object properties: success: type: boolean default: true description: You probably did something wrong if you set this to false required: - success title: Business_v1_business_risk_assessment_Response_200 V1BusinessRiskAssessmentPostRequestBodyContentApplicationJsonSchemaItems: type: object properties: timestamp: type: string format: date-time description: Original timestamp relating to this risk assessment information creation/change data: $ref: '#/components/schemas/V1BusinessRiskAssessmentPostRequestBodyContentApplicationJsonSchemaItemsData' parent: $ref: '#/components/schemas/BusinessEntityParent' required: - timestamp - data - parent title: V1BusinessRiskAssessmentPostRequestBodyContentApplicationJsonSchemaItems V1BusinessSarInfoPostRequestBodyContentApplicationJsonSchemaItemsDataStatus: type: string enum: - raised - cancelled - submitted title: V1BusinessSarInfoPostRequestBodyContentApplicationJsonSchemaItemsDataStatus V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItems: type: object properties: id: type: string description: Unique external identifier of the company entity, ID stored in your database / back-office timestamp: type: string format: date-time description: Original timestamp relating to when this company's information was received is_test_company: type: boolean default: false description: If the company is a test company, this should be set to true data: $ref: '#/components/schemas/V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItemsData' parent: $ref: '#/components/schemas/BusinessEntityParent' required: - id - timestamp - is_test_company - data title: V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItems V1BusinessIdvInfoPostRequestBodyContentApplicationJsonSchemaItems: type: object properties: timestamp: type: string format: date-time description: Original timestamp relating to this IDV information creation/change data: $ref: '#/components/schemas/V1BusinessIdvInfoPostRequestBodyContentApplicationJsonSchemaItemsData' parent: $ref: '#/components/schemas/BusinessEntityParent' required: - timestamp - data - parent title: V1BusinessIdvInfoPostRequestBodyContentApplicationJsonSchemaItems V1BusinessAccessInfoPostRequestBodyContentApplicationJsonSchemaItems: type: object properties: timestamp: type: string format: date-time description: Original timestamp relating to this access information creation/change data: $ref: '#/components/schemas/V1BusinessAccessInfoPostRequestBodyContentApplicationJsonSchemaItemsData' parent: $ref: '#/components/schemas/BusinessEntityParent' required: - timestamp - data - parent title: V1BusinessAccessInfoPostRequestBodyContentApplicationJsonSchemaItems V1BusinessRiskAssessmentPostRequestBodyContentApplicationJsonSchemaItemsData: type: object properties: type: type: string description: Type of risk assessment eg. pre-onboarding risk rating, risk band, risk engine score outcome: type: string description: 'The outcome of the assessment. One of: LOW, MEDIUM, HIGH, CRITICAL' custom: $ref: '#/components/schemas/CustomData' required: - type - outcome title: V1BusinessRiskAssessmentPostRequestBodyContentApplicationJsonSchemaItemsData Business_v1_business_screening_check_Response_200: type: object properties: success: type: boolean default: true description: You probably did something wrong if you set this to false required: - success title: Business_v1_business_screening_check_Response_200 V1BusinessIdvInfoPostRequestBodyContentApplicationJsonSchemaItemsData: type: object properties: verification_type: type: string description: Type of verification performed verification_outcome: type: string description: Result of IDV screening returned from provider verification_provider: type: string description: Name of the IDV screening provider document_type: type: string description: Type of document used in the screening document_number: type: string description: The number of the document used in the screening document_expiry_date: type: string format: date-time description: The expiration date of the document used in the screening document_extracted_data: type: array items: $ref: '#/components/schemas/V1BusinessIdvInfoPostRequestBodyContentApplicationJsonSchemaItemsDataDocumentExtractedDataItems' is_live_selfie: type: boolean description: Whether a live selfie was used in the IDV screening externally_verified_data: type: array items: $ref: '#/components/schemas/V1BusinessIdvInfoPostRequestBodyContentApplicationJsonSchemaItemsDataExternallyVerifiedDataItems' custom: $ref: '#/components/schemas/CustomData' required: - verification_type - verification_outcome - verification_provider title: V1BusinessIdvInfoPostRequestBodyContentApplicationJsonSchemaItemsData V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItemsData: type: object properties: name: type: string description: The provided full name of the person first_name: type: string description: The provided first name of the person last_name: type: string description: The provided last name of the person email: type: string description: Contact email for the person address: $ref: '#/components/schemas/Address' phone_number: type: string description: Contact telephone number for the person date_of_birth: type: string format: date nationality: type: string description: 2 or 3 Character ISO 3166 Country Code (https://w.wiki/4rY) occupation: type: string description: Primary occupation of the individual first_transaction_completed_at: type: string format: date-time description: Original timestamp of when the person completed their first transaction national_identification_number: $ref: '#/components/schemas/V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItemsDataNationalIdentificationNumber' product_type: type: string custom: $ref: '#/components/schemas/CustomData' title: V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItemsData V1BusinessSarInfoPostRequestBodyContentApplicationJsonSchemaItems: type: object properties: timestamp: type: string format: date-time description: Original timestamp relating to this SAR creation/change data: $ref: '#/components/schemas/V1BusinessSarInfoPostRequestBodyContentApplicationJsonSchemaItemsData' parent: $ref: '#/components/schemas/BusinessEntityParent' required: - timestamp - data - parent title: V1BusinessSarInfoPostRequestBodyContentApplicationJsonSchemaItems Business_v1_business_idv_info_Response_200: type: object properties: success: type: boolean default: true description: You probably did something wrong if you set this to false required: - success title: Business_v1_business_idv_info_Response_200 Address: type: object properties: lines: type: array items: type: string city: type: string state: type: string county: type: string postal_code: type: string country: type: string description: Legal/contact address for the entity title: Address V1BusinessOnboardingFlowPostRequestBodyContentApplicationJsonSchemaItemsDataOutcomeReason: oneOf: - type: string - type: object additionalProperties: description: Any type title: V1BusinessOnboardingFlowPostRequestBodyContentApplicationJsonSchemaItemsDataOutcomeReason V1BusinessOnboardingFlowPostRequestBodyContentApplicationJsonSchemaItems: type: object properties: timestamp: type: string format: date-time description: Original timestamp relating to this onboarding flow information creation/change data: $ref: '#/components/schemas/V1BusinessOnboardingFlowPostRequestBodyContentApplicationJsonSchemaItemsData' parent: $ref: '#/components/schemas/BusinessEntityParent' required: - timestamp - data - parent title: V1BusinessOnboardingFlowPostRequestBodyContentApplicationJsonSchemaItems V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItems: type: object properties: id: type: string description: Unique external identifier of the person entity, ID stored in your database / back-office timestamp: type: string format: date-time description: Original timestamp relating to this person entity creation/change is_beneficial_owner: type: boolean default: false description: If the person is a beneficial owner of the parent entity, this should be set to true is_director: type: boolean default: false description: If the person is a director of the parent entity, this should be set to true is_account_owner: type: boolean default: false description: If the person is an account owner of the parent entity, this should be set to true is_shareholder: type: boolean default: false description: If the person is a shareholder of the parent entity, this should be set to true is_significant_control_person: type: boolean default: false description: If the person is a has significant control of the parent entity, this should be set to true is_test_user: type: boolean default: false description: If the person is a test user, this should be set to true ownership_percentage: type: number format: double description: If the person is a shareholder of the parent entity, this should be set to their ownership percentage, as a value between 0 and 1 data: $ref: '#/components/schemas/V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItemsData' parent: $ref: '#/components/schemas/V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItemsParent' required: - id - timestamp - is_beneficial_owner - is_director - is_account_owner - is_shareholder - is_test_user - data title: V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItems Business_v1_business_access_info_Response_200: type: object properties: success: type: boolean default: true description: You probably did something wrong if you set this to false required: - success title: Business_v1_business_access_info_Response_200 V1BusinessAccountStatusPostRequestBodyContentApplicationJsonSchemaItems: type: object properties: timestamp: type: string format: date-time description: Original timestamp relating to this account status information creation/change data: $ref: '#/components/schemas/V1BusinessAccountStatusPostRequestBodyContentApplicationJsonSchemaItemsData' parent: $ref: '#/components/schemas/BusinessEntityParent' required: - timestamp - data - parent title: V1BusinessAccountStatusPostRequestBodyContentApplicationJsonSchemaItems V1BusinessIdvInfoPostRequestBodyContentApplicationJsonSchemaItemsDataExternallyVerifiedDataItems: type: object properties: type: type: string description: Type of data externally verified value: type: string description: Value of the data externally verified is_externally_verified: type: boolean description: Whether the data was externally verified provider: type: string description: Name of the provider that externally verified the data required: - type - value - is_externally_verified - provider title: V1BusinessIdvInfoPostRequestBodyContentApplicationJsonSchemaItemsDataExternallyVerifiedDataItems Business_v1_business_company_info_Response_200: type: object properties: success: type: boolean default: true description: You probably did something wrong if you set this to false required: - success title: Business_v1_business_company_info_Response_200 BusinessEntityParentType: type: string enum: - company - person description: Type of the parent entity title: BusinessEntityParentType V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItemsDataAddressesItems: type: object properties: type: type: string description: Type of address. eg. Registered, Trading, Legal address: $ref: '#/components/schemas/Address' title: V1BusinessCompanyInfoPostRequestBodyContentApplicationJsonSchemaItemsDataAddressesItems V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItemsParent: type: object properties: id: type: string description: Unique external identifier of the parent entity, ID stored in your database / back-office type: $ref: '#/components/schemas/V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItemsParentType' description: Type of the parent entity required: - id - type title: V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItemsParent V1BusinessScreeningCheckPostRequestBodyContentApplicationJsonSchemaItems: type: object properties: timestamp: type: string format: date-time description: Original timestamp relating to this screening check information creation/change data: $ref: '#/components/schemas/V1BusinessScreeningCheckPostRequestBodyContentApplicationJsonSchemaItemsData' parent: $ref: '#/components/schemas/BusinessEntityParent' required: - timestamp - data - parent title: V1BusinessScreeningCheckPostRequestBodyContentApplicationJsonSchemaItems CustomData: type: object additionalProperties: description: Any type description: Custom data that is relevant. This can be any JSON object. Please include any details and data points that our schema does not capture. title: CustomData Business_v1_business_sar_info_Response_200: type: object properties: success: type: boolean default: true description: You probably did something wrong if you set this to false required: - success title: Business_v1_business_sar_info_Response_200 V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItemsDataNationalIdentificationNumber: type: object properties: type: type: string description: Type of national identification number value: type: string description: National identification number required: - type - value title: V1BusinessPersonInfoPostRequestBodyContentApplicationJsonSchemaItemsDataNationalIdentificationNumber V1BusinessSarInfoPostRequestBodyContentApplicationJsonSchemaItemsData: type: object properties: status: $ref: '#/components/schemas/V1BusinessSarInfoPostRequestBodyContentApplicationJsonSchemaItemsDataStatus' value: type: string cause: type: string custom: $ref: '#/components/schemas/CustomData' required: - status title: V1BusinessSarInfoPostRequestBodyContentApplicationJsonSchemaItemsData securitySchemes: ApiKeyAuth: type: apiKey in: header name: Authorization BearerAuth: type: http scheme: bearer