openapi: 3.0.3 info: title: Core V2 Audit Individual Workflows API version: 2.0.0 description: This is the APIs for V2 Core. It allows you to do common operations, such as read audit entries or get workflow lists. contact: name: FrankieOne url: https://www.frankieone.com/ email: help@frankieone.com servers: - url: https://api.uat.frankie.one security: - Api-Key: [] tags: - name: Individual Workflows paths: /v2/workflows: get: summary: Get a list of executable workflows responses: '200': description: OK content: application/json: schema: type: object properties: requestId: $ref: '#/components/schemas/Request-ID' workflows: type: array description: Provide a set of workflow lookup objects. items: $ref: '#/components/schemas/Workflow-Lookup' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/Error' examples: Invalid EntityId: value: errorCode: API-0400, errorMsg: 'Multiple Errors: See Issues list' details: - issue: 'entityId in path must be of type uuid: "test"' issueLocation: VALIDATE-entityId requestId: 01HM5XJ7VASZ3EJMB1VQGTBFJ4 '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' examples: Invalid authentication: value: errorCode: AUTH-0002, errorMsg: Unauthorized details: - issue: Invalid Authentication provided. Access denied. issueLocation: request requestId: 00000000S6MNG7624K2TDXT1E3 No Api-Key: value: errorCode: AUTH-0401 errorMsg: Unauthorized details: - issue: No api key provided. Access denied. issueLocation: request requestId: 00000001S6MNG7624K2TDXT1E3 '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' '502': description: Bad Gateway content: application/json: schema: $ref: '#/components/schemas/Error' '503': description: Service Unavailable content: application/json: schema: $ref: '#/components/schemas/Error' operationId: getWorkflows description: Get a list of workflows that can be executed parameters: - $ref: '#/components/parameters/Api-Key' - $ref: '#/components/parameters/X-Frankie-CustomerID' - $ref: '#/components/parameters/X-Frankie-CustomerChildID' - $ref: '#/components/parameters/X-Frankie-Channel' - $ref: '#/components/parameters/X-Frankie-Username' - $ref: '#/components/parameters/serviceNameQuery' - $ref: '#/components/parameters/includeQuery' tags: - Individual Workflows security: - Api-Key: [] - jwt: - kyc:api /v2/individuals/new/serviceprofiles/{serviceName}/workflows/{workflowName}/execute: parameters: - $ref: '#/components/parameters/serviceName' - $ref: '#/components/parameters/workflowName' - $ref: '#/components/parameters/levelQuery' post: summary: Create an individual and execute a workflow for the given service profile responses: '200': description: Execution request completed content: application/json: schema: type: object properties: workflowResult: $ref: '#/components/schemas/Workflow-Result' serviceProfile: $ref: '#/components/schemas/Service-Profile' individual: $ref: '#/components/schemas/Individual' requestId: $ref: '#/components/schemas/Request-ID' '202': description: Asynchronous execution request accepted, use requestId to retrieve results content: application/json: schema: type: object properties: requestId: $ref: '#/components/schemas/Request-ID' workflowExecutionId: $ref: '#/components/schemas/Workflow-Execution-ID' entityId: $ref: '#/components/schemas/Entity-ID' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error' examples: Invalid EntityId: value: errorCode: API-0400, errorMsg: 'Multiple Errors: See Issues list' details: - issue: 'entityId in path must be of type uuid: "test"' issueLocation: VALIDATE-entityId requestId: 01HM5XJ7VASZ3EJMB1VQGTBFJ4 '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' examples: Invalid authentication: value: errorCode: AUTH-0002, errorMsg: Unauthorized details: - issue: Invalid Authentication provided. Access denied. issueLocation: request requestId: 00000000S6MNG7624K2TDXT1E3 No Api-Key: value: errorCode: AUTH-0401 errorMsg: Unauthorized details: - issue: No api key provided. Access denied. issueLocation: request requestId: 00000001S6MNG7624K2TDXT1E3 '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' '502': description: Bad Gateway content: application/json: schema: $ref: '#/components/schemas/Error' '503': description: Service Unavailable content: application/json: schema: $ref: '#/components/schemas/Error' operationId: createAndExecuteWorkflow requestBody: content: application/json: schema: type: object properties: individual: $ref: '#/components/schemas/Individual' comment: $ref: '#/components/schemas/Comment' description: Create an individual and execute a workflow for the given service profile parameters: - $ref: '#/components/parameters/X-Frankie-CustomerID' - $ref: '#/components/parameters/X-Frankie-CustomerChildID' - $ref: '#/components/parameters/X-Frankie-Channel' - $ref: '#/components/parameters/X-Frankie-Background' - $ref: '#/components/parameters/X-Frankie-Username' tags: - Individual Workflows security: - Api-Key: [] - jwt: - kyc:api /v2/individuals/{entityId}/serviceprofiles/{serviceName}/workflows/{workflowName}/execute: parameters: - $ref: '#/components/parameters/entityId' - $ref: '#/components/parameters/serviceName' - $ref: '#/components/parameters/workflowName' - $ref: '#/components/parameters/levelQuery' post: summary: Execute a workflow for the given service profile responses: '200': description: Execution request completed content: application/json: schema: type: object properties: workflowResult: $ref: '#/components/schemas/Workflow-Result' serviceProfile: $ref: '#/components/schemas/Service-Profile' individual: $ref: '#/components/schemas/Individual' requestId: $ref: '#/components/schemas/Request-ID' '202': description: Asynchronous execution request accepted, use requestId to retrieve results content: application/json: schema: type: object properties: requestId: $ref: '#/components/schemas/Request-ID' workflowExecutionId: $ref: '#/components/schemas/Workflow-Execution-ID' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error' examples: Invalid EntityId: value: errorCode: API-0400, errorMsg: 'Multiple Errors: See Issues list' details: - issue: 'entityId in path must be of type uuid: "test"' issueLocation: VALIDATE-entityId requestId: 01HM5XJ7VASZ3EJMB1VQGTBFJ4 '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' examples: Invalid authentication: value: errorCode: AUTH-0002, errorMsg: Unauthorized details: - issue: Invalid Authentication provided. Access denied. issueLocation: request requestId: 00000000S6MNG7624K2TDXT1E3 No Api-Key: value: errorCode: AUTH-0401 errorMsg: Unauthorized details: - issue: No api key provided. Access denied. issueLocation: request requestId: 00000001S6MNG7624K2TDXT1E3 '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' '502': description: Bad Gateway content: application/json: schema: $ref: '#/components/schemas/Error' '503': description: Service Unavailable content: application/json: schema: $ref: '#/components/schemas/Error' operationId: executeWorkflow requestBody: content: application/json: schema: type: object properties: comment: $ref: '#/components/schemas/Comment' description: Execute a workflow for the given service profile. parameters: - $ref: '#/components/parameters/X-Frankie-CustomerID' - $ref: '#/components/parameters/X-Frankie-CustomerChildID' - $ref: '#/components/parameters/X-Frankie-Channel' - $ref: '#/components/parameters/X-Frankie-Background' - $ref: '#/components/parameters/X-Frankie-Username' tags: - Individual Workflows security: - Api-Key: [] - jwt: - kyc:api /v2/individuals/{entityId}/serviceprofiles/{serviceName}/workflows/{workflowName}/executions: parameters: - $ref: '#/components/parameters/entityId' - $ref: '#/components/parameters/serviceName' - $ref: '#/components/parameters/workflowName' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/sort' - $ref: '#/components/parameters/sortFields' - $ref: '#/components/parameters/query_filter_workflowresults' - $ref: '#/components/parameters/query_filter_workflowexecutionstates' - $ref: '#/components/parameters/query_filter_startedatbefore' - $ref: '#/components/parameters/query_filter_startedatafter' - $ref: '#/components/parameters/query_filter_endedatbefore' - $ref: '#/components/parameters/query_filter_endedatafter' get: summary: Get a list of executions and their results responses: '200': description: OK content: application/json: schema: type: object properties: requestId: $ref: '#/components/schemas/Request-ID' workflowResults: type: array items: $ref: '#/components/schemas/Workflow-Result' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/Error' examples: Invalid EntityId: value: errorCode: API-0400, errorMsg: 'Multiple Errors: See Issues list' details: - issue: 'entityId in path must be of type uuid: "test"' issueLocation: VALIDATE-entityId requestId: 01HM5XJ7VASZ3EJMB1VQGTBFJ4 '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' examples: Invalid authentication: value: errorCode: AUTH-0002, errorMsg: Unauthorized details: - issue: Invalid Authentication provided. Access denied. issueLocation: request requestId: 00000000S6MNG7624K2TDXT1E3 No Api-Key: value: errorCode: AUTH-0401 errorMsg: Unauthorized details: - issue: No api key provided. Access denied. issueLocation: request requestId: 00000001S6MNG7624K2TDXT1E3 '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' '502': description: Bad Gateway content: application/json: schema: $ref: '#/components/schemas/Error' '503': description: Service Unavailable content: application/json: schema: $ref: '#/components/schemas/Error' operationId: getResults description: Get a list of entity results. Always sorted in reverse chrono order parameters: - $ref: '#/components/parameters/Api-Key' - $ref: '#/components/parameters/X-Frankie-CustomerID' - $ref: '#/components/parameters/X-Frankie-CustomerChildID' - $ref: '#/components/parameters/X-Frankie-Channel' - $ref: '#/components/parameters/X-Frankie-Username' tags: - Individual Workflows security: - Api-Key: [] - jwt: - kyc:api /v2/individuals/{entityId}/serviceprofiles/{serviceName}/workflows/{workflowName}/executions/{workflowExecutionId}: parameters: - $ref: '#/components/parameters/entityId' - $ref: '#/components/parameters/serviceName' - $ref: '#/components/parameters/workflowName' - $ref: '#/components/parameters/executionId' - $ref: '#/components/parameters/levelNoIdQuery' get: summary: Get the result of a specific execution by its executionId. responses: '102': description: '**[DEPRECATED]** Workflow is still processing' content: application/json: schema: type: object properties: requestId: $ref: '#/components/schemas/Request-ID' workflowExecutionState: $ref: '#/components/schemas/Workflow-Execution-State' '200': description: Workflow has completed content: application/json: schema: type: object properties: requestId: $ref: '#/components/schemas/Request-ID' workflowResult: $ref: '#/components/schemas/Workflow-Result' individual: $ref: '#/components/schemas/Individual' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error' examples: Invalid EntityId: value: errorCode: API-0400, errorMsg: 'Multiple Errors: See Issues list' details: - issue: 'entityId in path must be of type uuid: "test"' issueLocation: VALIDATE-entityId requestId: 01HM5XJ7VASZ3EJMB1VQGTBFJ4 '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' examples: Invalid authentication: value: errorCode: AUTH-0002, errorMsg: Unauthorized details: - issue: Invalid Authentication provided. Access denied. issueLocation: request requestId: 00000000S6MNG7624K2TDXT1E3 No Api-Key: value: errorCode: AUTH-0401 errorMsg: Unauthorized details: - issue: No api key provided. Access denied. issueLocation: request requestId: 00000001S6MNG7624K2TDXT1E3 '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' '502': description: Bad Gateway content: application/json: schema: $ref: '#/components/schemas/Error' '503': description: Service Unavailable content: application/json: schema: $ref: '#/components/schemas/Error' operationId: getWorkflowExecutionResult description: Get the result of a specific execution by its executionId. parameters: - $ref: '#/components/parameters/Api-Key' - $ref: '#/components/parameters/X-Frankie-CustomerID' - $ref: '#/components/parameters/X-Frankie-CustomerChildID' - $ref: '#/components/parameters/X-Frankie-Channel' - $ref: '#/components/parameters/X-Frankie-Username' tags: - Individual Workflows security: - Api-Key: [] - jwt: - kyc:api patch: summary: Override the status of a specific workflow execution. responses: '200': description: Status has been updated content: application/json: schema: type: object properties: requestId: $ref: '#/components/schemas/Request-ID' workflowResult: $ref: '#/components/schemas/Workflow-Result' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error' examples: Invalid EntityId: value: errorCode: API-0400, errorMsg: 'Multiple Errors: See Issues list' details: - issue: 'entityId in path must be of type uuid: "test"' issueLocation: VALIDATE-entityId requestId: 01HM5XJ7VASZ3EJMB1VQGTBFJ4 '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' examples: Invalid authentication: value: errorCode: AUTH-0002, errorMsg: Unauthorized details: - issue: Invalid Authentication provided. Access denied. issueLocation: request requestId: 00000000S6MNG7624K2TDXT1E3 No Api-Key: value: errorCode: AUTH-0401 errorMsg: Unauthorized details: - issue: No api key provided. Access denied. issueLocation: request requestId: 00000001S6MNG7624K2TDXT1E3 '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' '502': description: Bad Gateway content: application/json: schema: $ref: '#/components/schemas/Error' '503': description: Service Unavailable content: application/json: schema: $ref: '#/components/schemas/Error' requestBody: content: application/json: schema: type: object properties: status: $ref: '#/components/schemas/Workflow-Execution-ResultEnum' comment: $ref: '#/components/schemas/Comment' operationId: overrideWorkflowExecutionResult description: Override the result of a specific workflow execution by its id. parameters: - $ref: '#/components/parameters/Api-Key' - $ref: '#/components/parameters/X-Frankie-CustomerID' - $ref: '#/components/parameters/X-Frankie-CustomerChildID' - $ref: '#/components/parameters/X-Frankie-Channel' - $ref: '#/components/parameters/X-Frankie-Username' tags: - Individual Workflows security: - Api-Key: [] - jwt: - kyc:api components: schemas: Session: type: object description: Session details for an activity, this is always scoped to a singular entity. properties: token: type: string description: A token to identify the specific session for the activity Phone-Number-ID: type: string description: 'As phone numbers are added to an entity, they are assigned an ID to assist with tracking. If you are adjusting phone numbers, you will need to include the ID to reference it correctly in the list.' example: ad165f64-5717-4562-b3fc-2c963f66bfa9 Supplementary-Data-Activity-Device: type: object description: 'Defines the details of an activity device result. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: riskLevel: type: string activityResults: type: array items: $ref: '#/components/schemas/Supplementary-Data-Activity-Result-Detail' Workflow-Step-Summary-KYC: type: object description: 'Captures the overall summary of the KYC step, including which matches have been made, with which sources, and under which ruleset. ' required: - stepName properties: matchedRules: type: array description: List of KYC rulesets that have matched, along with a summary of those matches. items: $ref: '#/components/schemas/Workflow-Step-Summary-KYC-MatchRule' unmatchedRules: type: array description: List of KYC rulesets that did not have sufficient results to be considered a match. items: $ref: '#/components/schemas/Workflow-Step-Summary-KYC-MatchRule' stepName: type: string Process-ResultEnum: type: string enum: - MATCH - PARTIAL_MATCH - INVALID_MATCH - NO_MATCH - CLEAR - HIT - BAD_DATA - CREATED - UPDATED - DELETED - FAIL - NOT_APPLICABLE - SUSPECTED - REJECTED - MANUAL - CLEAR_AUTO - OVERRIDE readOnly: true description: 'The actual pass/fail result of the element check - MATCH: The element check matched the expected criteria. - PARTIAL_MATCH: The element check partially matched the expected criteria. - INVALID_MATCH: The element check matched but was invalid. - NO_MATCH: The element check did not match the expected criteria. - CLEAR: The element check was cleared. - HIT: The element check hit a specific condition or threshold. - BAD_DATA: The element check encountered bad data. - CREATED: The element check resulted in the creation of a new record. - UPDATED: The element check resulted in the update of an existing record. - DELETED: The element check resulted in the deletion of a record. - FAIL: The element check failed. - NOT_APPLICABLE: The element check was not applicable in the given context. - SUSPECTED: The element check raised a suspicion but did not confirm it. - REJECTED: The element check was rejected. - MANUAL: The element check was manually reviewed or processed. - CLEAR_AUTO: The element check was cleared automatically. - OVERRIDE: The element check was overridden by a manual action or system rule. ' Workflow-Step-Summary-AML-ProviderSummary: type: object description: 'Summary of individual provider results for AML checks. ' properties: name: type: string description: Name of the provider. lastRetrievedAt: type: string format: date-time description: The date and time this data was last retrieved from the provider. An earlier date may indicate previously retrieved data. numHits: type: integer format: int32 minimum: 0 description: Total number of AML hits from this provider. numFalsePositives: type: integer format: int32 minimum: 0 description: Total number of AML hits marked as false positive from this provider. numTruePositives: type: integer format: int32 minimum: 0 description: Total number of AML hits marked as true positive from this provider. numUnknown: type: integer format: int32 minimum: 0 description: Total number of AML hits marked as unknown from this provider. numUnresolved: type: integer format: int32 minimum: 0 description: Total number of AML hits that remain unresolved from this provider. pepCountries: type: array items: type: string description: ISO-3166-alpha3 country code where PEP hits were found. sanctionCountries: type: array items: type: string description: ISO-3166-alpha3 country code where sanction hits were found. watchlistCountries: type: array items: type: string description: ISO-3166-alpha3 country code where watchlist hits were found. adverseMediaCountries: type: array items: type: string description: ISO-3166-alpha3 country code where adverse media hits were found. numUnresolvedPEP: type: integer format: int32 minimum: 0 description: Total number of AML hits with unresolved PEP entries from this provider. numUnresolvedSanction: type: integer format: int32 minimum: 0 description: Total number of AML hits with unresolved sanction entries from this provider. numUnresolvedWatchlist: type: integer format: int32 minimum: 0 description: Total number of AML hits with unresolved watchlist entries from this provider. numUnresolvedAdverseMedia: type: integer format: int32 minimum: 0 description: Total number of AML hits with unresolved adverse media entries from this provider. searchQuery: $ref: '#/components/schemas/Workflow-Step-Summary-AML-Search-Parameters' Workflow-Step-Type: type: string enum: - BLOCKLIST - DUPLICATE - DECISION - BRANCH - MONITOR_TOGGLE - OTHER - KYC - AML - IDV - START - FINISH Document-Supplementary-Data-National-ID: type: object description: Supplementary information relevant to a national ID. allOf: - $ref: '#/components/schemas/Document-Supplementary-Data-Base' - type: object properties: homeCountryFullName: type: string description: The original full name from the individual's home country national ID. example: 张伟明 paternalFamilyName: type: string description: The individual's family name inherited from the father's side. example: MENDOZA maternalFamilyName: type: string description: The individual's family name inherited from the mother's side. example: GARCIA Workflow-Errors: type: object properties: code: type: string description: Error code. description: type: string description: Description of the error. location: type: string description: Location or context where the error occurred. Supplementary-Data-Matchlist: type: object description: 'Each match against a matchlist entry generates a PRO (Process Result Object), and this object describes the details of the matched entry. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - $ref: '#/components/schemas/Matchlist-Entry-Base' - type: object properties: matchlistId: type: string format: uuid description: Unique identifier for the matchlist. matchlistName: type: string description: Unique name of the matchlist. matchlistAction: $ref: '#/components/schemas/Matchlist-Action' confidence: $ref: '#/components/schemas/Search-Confidence' matchedFields: type: array items: $ref: '#/components/schemas/Supplementary-Data-Matchlist-Field' Supplementary-Data-AML-SanctionsData: type: object description: 'Contains sanction information about a specific matched entity. ' properties: countryCode: type: string description: 'The ISO 3166-1 alpha-3 country code where the sanction entry was recorded. ' countryName: type: string description: 'The ISO 3166 country name where the sanction entry was recorded. ' sourceName: type: string description: 'The source of the sanction entry data. ' sourceUrl: type: string format: uri description: 'The URL where the original sanction information can be found. ' sourceReason: type: string description: 'The reason provided for sanctioning the individual or organization. ' listingStart: type: string description: 'The date when the listing started. Will attempt to use ISO 8601 date format; otherwise, the format supplied by the source. ' listingEnd: type: string description: 'The date when the listing ended (if available or known). Will attempt to use ISO 8601 date format; otherwise, the format supplied by the source. ' imageUrl: type: string format: uri description: 'Optional URL of an image of the person or company logo of the sanctioned entity. ' referenceDocs: type: array items: $ref: '#/components/schemas/Supplementary-Data-AML-ReferenceDocs' additionalData: type: array items: $ref: '#/components/schemas/Supplementary-Data-AML-AdditionalData' Supplementary-Data-Activity-AML: type: object description: 'Provides details of an activity Anti-Money Laundering (AML) result. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: riskLevel: type: string description: Indicates the assessed risk level for the activity. activityResults: type: array description: A list of detailed results for the activity AML check. items: $ref: '#/components/schemas/Supplementary-Data-Activity-Result-Detail' Workflow-Step-Risk-Result: type: object description: 'Calculated risk result for a workflow step. ' properties: level: type: string description: Current risk level. contributedScore: type: integer description: Risk score contributed by this step. overallScore: type: integer description: Current overall risk score. factors: type: array description: List of contributing score factors. items: $ref: '#/components/schemas/Workflow-Step-Risk-Result-Detail' Individual-Name: type: object required: - familyName x-examples: Example 1: givenName: John middleName: Jacob familyName: Smith properties: nameId: type: string example: 87654321-4321-4321-4321-210987654321 description: Include the nameId of an existing name for this individual to modify it readOnly: true language: type: string example: eng description: The ISO-639-3 standard code that best represents the language and character set of the individual's name default: eng givenName: type: string example: John description: First name or given name middleName: type: string example: R description: Middle name(s) or middle initial(s) familyName: type: string example: Doe description: Last name, family name, or surname. otherName: type: string example: null description: Another name that this person may be known as, e.g., "Bob" as an alternative to "Robert". prefix: type: string example: Dr. description: Letters or words that come before an individual's full name (e.g., title or honorific). suffix: type: string example: Jr. description: Letters or words that come after an individual's full name (e.g., generational suffix). sourceId: type: string example: 87654321-4321-4321-4321-210987654322 description: The source from where a specific information was sourced from. This is a link to an informationSource object in the informationSources map readOnly: true displayName: type: string example: John Doe description: Long format of the individual's full name, including any prefix, suffix, middle, or other names. Best used when the proper structure of the individual's name is unknown. Supplementary-Data-Fraud-IP-Address: type: object description: 'Defines the details of a single IP address fraud check. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - $ref: '#/components/schemas/Supplementary-Data-Fraud-IP-Address-Data' Process-Result-Manual-StatusEnum-AML: type: string enum: - TRUE_POSITIVE - FALSE_POSITIVE - TRUE_POSITIVE_ACCEPT - TRUE_POSITIVE_REJECT - UNKNOWN - UNKNOWN_ACCEPT - UNKNOWN_REJECT description: 'The manual status that the AML process result should be set to after the results have been reviewed. - FALSE_POSITIVE: The result is determined to be a false positive, but you do not necessarily want to resolve it. - FALSE_POSITIVE_ACCEPT: The result is determined to be a false positive and you want to resolve it. "Accept" infers you want to accept the activity. - TRUE_POSITIVE: The result is determined to be a true positive, but you do not necessarily want to resolve it. - TRUE_POSITIVE_REJECT: The result is determined to be a true positive and you want to resolve it. "Reject" infers you want to reject the activity. - UNKNOWN: The result is determined to be unknown, but you do not necessarily want to resolve it. - UNKNOWN_ACCEPT: The result is determined to be unknown and you want to resolve it. "Accept" infers you want to accept the activity. - UNKNOWN_REJECT: The result is determined to be unknown and you want to resolve it. "Reject" infers you want to reject the activity. ' Relationship: type: object properties: entityId: $ref: '#/components/schemas/Entity-ID' entityType: $ref: '#/components/schemas/Entity-Type' origin: $ref: '#/components/schemas/Relationship-Origin' Service-Profile-Base: type: object properties: serviceProfileId: type: string description: The unique identifier for the service profile. example: 55fc5d54-46f7-49c8-bf78-e07ec79c42fd readOnly: true latestRiskAssessmentId: $ref: '#/components/schemas/Risk-Assessment-ID' description: 'The ID of the latest risk assessment in the most recent workflow with a valid assessment. Omitted if no valid risk assessment exists.' latestWorkflowExecutionId: type: string description: 'The ID of the most recent workflow execution. Omitted if no workflows exist.' entityId: type: string readOnly: true entityName: type: string readOnly: true entityType: type: string readOnly: true organizationType: type: string example: SOLE TRADER readOnly: true country: type: string description: The ISO 3166 alpha-3 code representing the individual's country of residence or the business's country of registration. example: AUS readOnly: true schemaVersion: type: integer description: The version number of the schema. example: 2 readOnly: true createdAt: type: string format: date-time description: The UTC date and time when this service profile was created. example: '2024-01-15T02:18:11.365Z' readOnly: true createdRequestId: type: string description: The unique ULID identifier of the request that created this service profile. example: 01HMR2ERSKCYAVXKS1FKSRT2T4 readOnly: true createdBy: type: string description: The user or client that created this profile. example: Ryan Reynolds readOnly: true updatedAt: type: string format: date-time description: The UTC date and time when this service profile was last updated, if applicable. example: '2024-01-15T02:18:11.365Z' readOnly: true updatedBy: type: string description: The user or client that last updated this profile. example: Ryan Reynolds readOnly: true updatedRequestId: type: string description: The unique ULID identifier of the request that last updated this service profile. example: 01HMR2ERSKCYAVXKS1FKSRT2T4 readOnly: true assignee: type: string description: The name of the officer assigned to approve this profile. example: Ryan Gosling reviewer: type: string description: The name of the officer assigned to review this profile. example: Ryan Trahan currentWorkflowId: type: string readOnly: true currentWorkflowName: type: string description: The name of the current workflow, if applicable. workflowSummaries: type: array items: $ref: '#/components/schemas/Workflow-Execution-Summary' readOnly: true serviceName: type: string description: The name of the service associated with this profile. readOnly: true customerReference: type: string readOnly: true description: Customer-specific identifier(s). subscriptions: type: array description: 'The list of subscriptions associated with the service profile. A subscription determines if the service profile is subscribed to a particular ongoing process.' items: $ref: '#/components/schemas/Service-Profile-Subscription' readOnly: true Likelihood: type: string description: 'Likelihood of a particular scenario ' enum: - LOW - MEDIUM - HIGH - VERY_HIGH - UNKNOWN Supplementary-Data-AML-WatchlistData: type: object description: 'Contains non-PEP/non-sanction watchlist and other source information about a specific matched entity. ' properties: countryCode: type: string description: 'The ISO 3166-1 alpha-3 country code where the watchlist entry was recorded. ' countryName: type: string description: 'The ISO 3166 country name where the watchlist entry was recorded. ' sourceName: type: string description: 'The source of the watchlist entry data. ' sourceUrl: type: string format: uri description: 'The URL where the original watchlist information can be found. ' sourceReason: type: string description: 'The reason provided for adding the individual or organization to the watchlist. ' listingStart: type: string description: 'The date when the listing started. Will attempt to use ISO 8601 date format; otherwise, the format supplied by the source. ' listingEnd: type: string description: 'The date when the listing ended (if available or known). Will attempt to use ISO 8601 date format; otherwise, the format supplied by the source. ' imageUrl: type: string format: uri description: 'Optional URL of an image of the person or company logo of the entity on this list. ' referenceDocs: type: array items: $ref: '#/components/schemas/Supplementary-Data-AML-ReferenceDocs' additionalData: type: array items: $ref: '#/components/schemas/Supplementary-Data-AML-AdditionalData' Issue: type: object properties: issue: type: string description: Description of the issue. issueLocation: type: string description: The location or context where the issue was identified. issueType: type: string description: The type or category of the issue. Document-Supplementary-Data-Marriage-Certificate: type: object description: Supplementary information relevant to a marriage certificate. allOf: - $ref: '#/components/schemas/Document-Supplementary-Data-Base' - type: object description: Supplementary information relevant to a marriage certificate. properties: partner1GivenName: type: string description: The given name of partner 1. example: Harry partner1FamilyName: type: string description: The family name of partner 1. example: Versailles partner1OtherName: type: string description: The other name of partner 1. example: S. partner2GivenName: type: string description: The given name of partner 2. example: Harry partner2FamilyName: type: string description: The family name of partner 2. example: Versailles partner2OtherName: type: string description: The other name of partner 2. example: S. registrationDate: type: string description: The date the marriage was registered. example: '2023' marriageDate: type: string description: The date the marriage was held. example: '2023-10-01' dateOfPrint: type: string description: The date the birth certificate was printed. example: '2023-10-01' Supplementary-Data-Activity-Result-Detail-Indicator: type: object properties: indicatorId: $ref: '#/components/schemas/Indicator-ID' name: type: string value: type: string score: type: string rules: type: array items: $ref: '#/components/schemas/Supplementary-Data-Activity-Result-Detail-Rule' Risk-Factor: type: object properties: riskFactorId: $ref: '#/components/schemas/Risk-Factor-ID' factor: type: string description: Name of the Frankie risk factor. readOnly: true value: type: string description: Value assigned to the risk factor. readOnly: true score: type: number description: Risk score assigned to the factor (based on customer configuration). readOnly: true description: type: string description: Description of the risk factor. readOnly: true workflowExecutionId: type: string description: Unique identifier of the workflow execution in which the risk factor was generated. readOnly: true stepResultId: type: string description: Unique identifier of the step result if the factor originated from a step. readOnly: true manualOverrideScore: type: number description: If present, this score overrides all others and is used as the final score in risk assessment. status: $ref: '#/components/schemas/Risk-Factor-Status' createdAt: type: string format: date-time description: Timestamp when the risk factor was created. readOnly: true updatedAt: type: string format: date-time description: Timestamp when the risk factor was last updated. readOnly: true updatedBy: type: string description: Identifier of the user or system that updated this risk factor (e.g., System:; or User:). readOnly: true updatedRequestId: type: string description: Identifier of the request that updated this risk factor. readOnly: true createdServiceProfileId: type: string format: uuid description: Identifier of the service profile associated with this risk factor when it was created. createdWorkflowExecutionId: type: string description: Identifier of the workflow execution that originally created the risk factor. createdStepResultId: type: string description: Identifier of the step result that originally created the risk factor. Supplementary-Data-Matchlist-Attribute: type: object description: 'Information about a matched attribute within a matched field. ' required: - type - confidence properties: type: $ref: '#/components/schemas/Matchlist-Entry-Attribute-Type' confidence: $ref: '#/components/schemas/Search-Confidence' description: 'Confidence score for the attribute match. ' Workflow-Step-Summary-Decision: type: object required: - stepName properties: stepName: type: string description: Name of the executed step. workflowExecutionResult: $ref: '#/components/schemas/Workflow-Execution-ResultEnum' Monitoring-Type: type: string description: The type of workflow subscription. This determines which types are subscribing to a workflow. allOf: - $ref: '#/components/schemas/Subscription-Type' Workflow-Step-Risk-Result-Detail: type: object description: 'Details of a calculated risk result for a workflow step. ' required: - factor - score - value properties: factor: type: string description: Name of the risk factor contributing to this score. score: type: integer description: Score contributed by this factor. value: type: string description: Value used for the score factor. Supplementary-Data-Fraud-Device-Data: type: object description: 'Provides details of a single fraud check for device and related device data. ' properties: device: $ref: '#/components/schemas/Device' session: $ref: '#/components/schemas/Session-Data' indicators: type: array items: $ref: '#/components/schemas/Supplementary-Data-Activity-Result-Detail-Indicator' riskLevel: $ref: '#/components/schemas/Risk-Level' reference: $ref: '#/components/schemas/Result-Reference' Request-ID: type: string example: 01HN9XHZN6MGXM9JXG50K59Q85 description: The unique request identifier for the API call made. Entity-Documents: type: object properties: REPORT: type: array items: $ref: '#/components/schemas/Document-Information' SUPPORTING: type: array items: $ref: '#/components/schemas/Document-Information' IDENTITY: type: array items: $ref: '#/components/schemas/Document-Information' OTHER: type: array items: $ref: '#/components/schemas/Document-Information' Issue-ID: type: string description: Unique identifier for the risk issue. readOnly: true Workflow-Result: type: object allOf: - $ref: '#/components/schemas/Workflow-Execution-Summary' - $ref: '#/components/schemas/Workflow-Execution-Result' Supplementary-Data-KYC-Address-MatchStrengths: type: object properties: fullAddress: type: integer format: int32 minimum: 0 maximum: 100 streetNumber: type: integer format: int32 minimum: 0 maximum: 100 streetName: type: integer format: int32 minimum: 0 maximum: 100 streetType: type: integer format: int32 minimum: 0 maximum: 100 streetAll: type: integer format: int32 minimum: 0 maximum: 100 locality: type: integer format: int32 minimum: 0 maximum: 100 district: type: integer format: int32 minimum: 0 maximum: 100 subdivision: type: integer format: int32 minimum: 0 maximum: 100 postalCode: type: integer format: int32 minimum: 0 maximum: 100 country: type: integer format: int32 minimum: 0 maximum: 100 Workflow-Step: type: object properties: name: type: string description: Name of the step (must be unique) example: Run KYC description: type: string description: Description of the step example: Run the KYC step version: type: string description: Version of the step example: 1.0.0 type: $ref: '#/components/schemas/Workflow-Step-Type' configuration: type: object description: Configuration for the step dependsOn: type: object description: Map of branch condition and step name that this step depends on additionalProperties: type: array items: type: string Service-Providers: type: object properties: provider: type: string description: Name of the service provider. result: type: string description: Result or status returned by the provider. order: type: integer description: Sequence order of the provider in the process. startedAt: type: string format: date-time description: ISO 8601 timestamp indicating when the provider started. endedAt: type: string format: date-time description: ISO 8601 timestamp indicating when the provider ended. Entity-ID: type: string description: 'Entities are assigned an auto-generated UUID to ensure global uniqueness, represented as entityId. The entityId allows for precise modification when required. To modify an entity, set the entityId of the entity you wish to update in an update request.' example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 readOnly: true Supplementary-Data-AML-ReferenceDocs: type: object description: 'Captures references to source documents or websites, including the URL and, where available, a description of the original source. ' properties: url: type: string format: uri description: URL of any external reference document related to this matched entity. description: type: string description: If a description of the document is provided, it will be included here. Matchlist-Entry-Reason-Code: type: string description: The reason code for the matchlist entry. This code will be translated to a configured description string. Supported codes are 1 to 24 characters long, consisting only of uppercase letters (A-Z), digits (0-9), underscores (_), or hyphens (-), with no spaces or special characters. pattern: ^[A-Z0-9_-]{1,24}$ Supplementary-Data-Fraud-Email-Address: type: object description: 'Defines the details of a single email fraud check. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: emailAddressId: $ref: '#/components/schemas/Email-Address-ID' riskLevel: $ref: '#/components/schemas/Risk-Level' reference: $ref: '#/components/schemas/Result-Reference' indicators: type: array items: $ref: '#/components/schemas/Supplementary-Data-Activity-Result-Detail-Indicator' Workflow-Step-Summary-Activity: type: object description: 'Provides details of the overall activity step results. ' required: - stepName properties: totalFraud: type: integer format: int32 minimum: 0 description: Total number of fraud hits found. totalAML: type: integer format: int32 minimum: 0 description: Total number of AML (Anti-Money Laundering) hits found. totalDevice: type: integer format: int32 minimum: 0 description: Total number of device hits found. stepName: type: string description: Name of the activity step. Process-Result-Object: type: object properties: processResultId: $ref: '#/components/schemas/Process-Result-ID' schemaVersion: type: integer readOnly: true entityId: type: string readOnly: true requestId: $ref: '#/components/schemas/Request-ID' readOnly: true stepName: type: string readOnly: true stepType: type: string readOnly: true objectType: type: string readOnly: true objectId: type: string readOnly: true createdAt: type: string format: date-time readOnly: true updatedAt: type: string format: date-time readOnly: true groupId: type: string readOnly: true providerResult: $ref: '#/components/schemas/Provider-Result' result: $ref: '#/components/schemas/Process-ResultEnum' class: $ref: '#/components/schemas/Process-Result-ClassEnum' supplementaryData: $ref: '#/components/schemas/Supplementary-Data' errors: type: array items: $ref: '#/components/schemas/Process-Result-Error' readOnly: true notes: readOnly: true allOf: - $ref: '#/components/schemas/Custom-Attributes' systemStatus: $ref: '#/components/schemas/Process-Result-System-StatusEnum' manualStatus: $ref: '#/components/schemas/Process-Result-Manual-StatusEnum' state: $ref: '#/components/schemas/Process-Result-StateEnum' riskFactors: type: array items: $ref: '#/components/schemas/Process-Risk-Factor-Value' readOnly: true updatedBy: type: string readOnly: true Workflow-Step-Summary-Visa: type: object description: 'Provides details of the visa as returned from VEVO. Class and subclass values can be found on the VEVO website. ' required: - stepName properties: country: type: string description: Country of origin (ISO 3166-1 alpha-3 code). maxLength: 3 class: type: string description: Visa class code. subClass: type: string description: Visa subclass code. hasExpired: type: boolean description: Indicates if the visa has expired (sometimes expiry date is not returned). noExpiry: type: boolean description: Indicates if this visa has no expiry. onAllowList: type: boolean description: Indicates if this class/subclass is on the allow list, if an allow list is set. onDenyList: type: boolean description: Indicates if this class/subclass is on the deny list, if a deny list is set. stepName: type: string description: Name of the workflow step. Date-Base: type: object properties: year: type: string description: Year in "YYYY" format. example: '1990' month: type: string description: Month in "MM" format. example: '03' day: type: string description: Day in "DD" format. example: '27' unstructured: type: string description: 'Raw date format without normalization or standardization to the Gregorian calendar. This can be used to provide non-Gregorian dates (e.g., Islamic dates).' example: 12 Rajab 1445 AH type: $ref: '#/components/schemas/Date-Type' ConfidenceLevel: type: object properties: normalized: description: 'The normalized confidence level, if set. Note: This is a normalized value, NOT the one used by the service provider (see the "actual" field). Assumes a scale of 0.0 (exact match) to 100.0 (match anything). ' type: number format: float minimum: 0 maximum: 100 actual: description: 'The actual confidence level as provided by the service provider, if set. Note: This is not a normalized value, but the original value from the provider. ' type: string IP-Information: type: object description: IP information, typically in relation to a device properties: v4Address: type: string description: The IPv4 address format: ipv4 v6Address: type: string description: The IPv6 address format: ipv6 trueAddress: type: string description: The true IP address asn: type: string description: The ASN of the IP address connectionType: type: string description: The type of IP connection (if available) example: - Fixed Line ISP location: $ref: '#/components/schemas/Geolocation' Workflow-Step-Summary-KYC-MatchRule-Matches: type: object description: 'Summary of all KYC matches for a given set of criteria. ' properties: matchTypes: description: "The match types that this overall count and result refer to. Currently, one or more of:\n - name\n - address\n - dob\n - gender\n\nThese will be keys in a map whose values hold the details for each individual match type. The resulting structure would look like the following. Here, \"dob\" has zero matches and is not verified, but it was checked, so other than the checked flag the value object is simply empty. A completely empty object would imply that the match type was not checked.\n\n \"matchTypes\": {\n \"address\": {\n \"matchCount\": 1,\n \"matchSources\": [ \"au-elec-roll\" ],\n \"isChecked\": true,\n \"isVerified\": true\n },\n \"dob\": {\n \"isChecked\": true\n }\n }\n\nFor a \"one_plus\" KYC check, there will be two Workflow-Step-Summary-KYC-MatchRule-Matches records: one for 'name' and one for 'address, dob' (as in the sample above).\n" type: object additionalProperties: $ref: '#/components/schemas/Workflow-Step-Summary-KYC-MatchRule-Matches-MatchTypes' matchCount: description: 'Total number of matches for this set of match types (i.e., the sum of the matchCounts in the matchTypes map). ' type: integer example: 2 matchCountRequired: description: 'Number of distinct matches required for this set of match types. ' type: integer example: 1 hasAllRequiredSourcesMatched: description: Indicates whether all required match sources (e.g., electoral roll) have matched. type: boolean example: true requiredSourcesMatched: description: List of required sources that resulted in a match. type: array items: type: string requiredSourcesNotMatched: description: List of required sources that did not result in a match. type: array items: type: string isVerified: description: Indicates whether there are enough matches to meet the matching requirement. type: boolean example: false matchDetails: type: array description: Summary of matched details. items: $ref: '#/components/schemas/Workflow-Step-Summary-KYC-Result-Summary-Detail' nonMatchDetails: type: array description: Summary of non-matched details. items: $ref: '#/components/schemas/Workflow-Step-Summary-KYC-Result-Summary-Detail' Workflow-Step-Summary-Matchlist-Summary: type: object description: Summary of individual matchlist results. properties: matchlistId: type: string format: uuid description: Unique identifier for the matchlist. name: type: string description: Name of the matchlist. description: type: string description: Description of the matchlist. action: $ref: '#/components/schemas/Matchlist-Action' numMatches: type: integer format: int32 minimum: 0 description: Total number of matches from this matchlist. numFalsePositives: type: integer format: int32 minimum: 0 description: Total number of matches from this matchlist that are marked as false positives. numTruePositives: type: integer format: int32 minimum: 0 description: Total number of matches from this matchlist that are marked as true positives. numUnknown: type: integer format: int32 minimum: 0 description: Total number of matches from this matchlist that are marked as unknown. numUnresolved: type: integer format: int32 minimum: 0 description: Total number of matches from this matchlist that are yet to be classified. Risk-Factor-ID: type: string description: Unique identifier of the risk factor. readOnly: true Supplementary-Data-AML-PEPData: type: object description: 'Contains Politically Exposed Person (PEP) information about a specific matched entity. ' properties: countryCode: type: string description: 'The ISO 3166-1 alpha-3 country code where the PEP entry was recorded. ' countryName: type: string description: 'The ISO 3166 country name where the PEP entry was recorded. ' sourceName: type: string description: 'The source of the PEP entry data. ' level: type: string description: 'The PEP "level", generally represented by a number from 1 (heads of state, military, civil service, etc.) to 4 (local government, minor public servants, etc.). ' sourceUrl: type: string format: uri description: 'The URL where the original PEP information can be found. ' sourcePosition: deprecated: true type: string description: '(Deprecated) The position held that created the PEP entry. ' position: type: string description: 'The position held that created the PEP entry. ' positionDescription: type: string description: 'A description of the position held that created the PEP entry. ' status: type: string description: 'The current PEP status. ' listingStart: type: string description: 'The date when the listing started. Will attempt to use ISO 8601 date format; otherwise, the format supplied by the source. ' listingEnd: type: string description: 'The date when the listing ended (if available or known). Will attempt to use ISO 8601 date format; otherwise, the format supplied by the source. ' imageUrl: type: string format: uri description: 'Optional URL of an image of the person associated with their role. ' referenceDocs: type: array items: $ref: '#/components/schemas/Supplementary-Data-AML-ReferenceDocs' additionalData: type: array items: $ref: '#/components/schemas/Supplementary-Data-AML-AdditionalData' Supplementary-Data-Visa: type: object description: 'Defines the Visa details returned from VEVO. Class and subclass values can be found on the VEVO website. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: country: type: string description: Country of origin (ISO-3166-alpha3 code). class: type: string description: Visa class. subClass: type: string description: Visa subclass. entitlementStatus: type: string description: Status of the visa entitlement. grantDate: type: string format: date description: Date the visa was granted. expiryDate: type: string format: date description: Date the visa expires. hasExpired: type: boolean description: Indicates if the visa has expired (sometimes expiry date is not returned). noExpiry: type: boolean description: Indicates if this visa has no expiry. entitlementConditionCode: type: string description: Code for the entitlement condition. entitlementConditionDescription: type: string description: Description of the entitlement condition. holderType: type: string enum: - PRIMARY - SECONDARY description: "Indicates if this is the primary visa holder or a secondary holder (usually a spouse/partner or other family member).\nValues:\n - PRIMARY\n - SECONDARY\n" lookupErrorCode: type: string description: If there was an error during the lookup, this is the code returned from VEVO. fuzziness: $ref: '#/components/schemas/FuzzinessLevel' Risk-Assessment-ID: type: string description: Unique identifier of the risk assessment. readOnly: true Activity-Result-ID: type: string readOnly: true description: Activity Result ID that identifies a result from an evaluation of an activity format: ulid Activity-ID: type: string readOnly: true description: Activity ID that identifies an activity within the Frankie platform format: ulid Supplementary-Data-KYB-Organization: type: object description: 'Defines OQRO (Ownership Query Result Object) at various stages in the KYB (Know Your Business) flow. The ''oqro'' property temporarily stores the V1 OQRO and will be used until the V2 OQRO is defined. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: organization: description: 'V2 OQRO; to be defined in the future. ' properties: entityId: $ref: '#/components/schemas/Entity-ID' entityType: $ref: '#/components/schemas/Entity-Type' Document-Information: type: object required: - type - country properties: documentId: $ref: '#/components/schemas/Document-ID' entityId: $ref: '#/components/schemas/Entity-ID' expiryDate: $ref: '#/components/schemas/Date' description: The expiry date of the document in YYYY-MM-DD format. issueDate: $ref: '#/components/schemas/Date' description: The issue date of the document in YYYY-MM-DD format. primaryIdentifier: type: string description: The primary ID number of the document, e.g., the ID number on a driver licence. example: '000734130' secondaryIdentifier: type: string description: The secondary ID number of the document, e.g., the card number on a driver licence. example: P0001975 type: $ref: '#/components/schemas/Document-Type' subtype: type: string description: The sub-type of the document, if relevant. This can include specific report or attestation types, e.g., FACIAL_COMPARISON (attestation) or KYC (report). example: Photo Comparison subdivision: type: string description: The abbreviated ISO 3166 subdivision/region where the ID was issued, e.g., "VIC" for the Australian state of Victoria or "MA" for the US state of Massachusetts. example: VIC country: type: string maxLength: 3 description: 'The ISO 3166 alpha-3 country code where the document was issued, if relevant. For more information, please refer to: https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes' example: AUS createdAt: type: string format: date-time description: The date and time when the document record was created, in ISO 8601 format. example: '2024-01-15T02:18:11.365Z' readOnly: true updatedAt: type: string format: date-time description: The date and time when the document record was last updated, in ISO 8601 format. example: '2025-01-16T02:18:11.365Z' readOnly: true validFrom: $ref: '#/components/schemas/Date' description: The date when the validity period for this document began, if applicable. validTo: $ref: '#/components/schemas/Date' description: The date when the validity period for this document ended, if applicable. sourceId: type: string description: The source from which specific information was sourced. This is a link to an informationSource object in the informationSources map. example: 324f15f64-5717-4562-b3fc-2c963f66ffa1 readOnly: true supplementaryData: $ref: '#/components/schemas/Document-Supplementary-Data' customAttributes: $ref: '#/components/schemas/Custom-Attributes' attachments: type: array description: 'List of scans, pages, or files for a single document, e.g., front and back images of a driver licence, or page 1, 2, and 3 of a supporting document. Attachments can be uploaded in a single call or in multiple calls. To upload attachments over multiple calls, include the documentId in the request.' items: $ref: '#/components/schemas/Document-Attachment' Document-Supplementary-Data-Citizenship: type: object description: Supplementary information relevant to a citizenship certificate. allOf: - $ref: '#/components/schemas/Document-Supplementary-Data-Base' - type: object description: Supplementary information relevant to a citizenship certificate. properties: acquisitionDate: type: string description: The date citizenship was acquired. example: 2000/01/01 primaryCountry: type: string description: The primary country of citizenship, represented by its three-letter ISO 3166-1 alpha-3 code. example: USA secondaryCountry: type: string description: The secondary country of citizenship, if applicable, represented by its three-letter ISO 3166-1 alpha-3 code. example: CAN Supplementary-Data-AML-AdditionalData: type: object description: 'Represents a simple key-value pair for AML data to capture any additional information not included in the main object. ' properties: key: type: string description: 'The key name, formatted in snake_case (e.g., key_in_snake_case), which can be converted to spaced title case for display. ' value: type: string description: 'The value associated with the key, provided as a string for display purposes. ' Supplementary-Data-IDV-Facial-Comparison: type: object description: 'Result of a facial comparison check, indicating how likely or accurate the presented face matches the ID document. For resultMap keys, use the keys found in the enum: SupplementaryDataIDVEnumDataFacialComparison. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-IDV-Base' - type: object properties: comparedDocumentId: type: string format: uuid description: The document ID of the ID document that was compared. comparedDocumentAttachmentId: type: string format: uuid description: The attachment ID of the ID document that was compared. comparedSelfieId: type: string format: uuid description: The document ID of the selfie that was compared. comparedSelfieAttachmentId: type: string format: uuid description: The attachment ID of the selfie that was compared. Process-Result-Manual-StatusEnum-Matchlist: type: string enum: - FALSE_POSITIVE - TRUE_POSITIVE_REJECT description: 'Any manual status set after the results have been reviewed. - FALSE_POSITIVE: The result is determined to be a false positive, but you do not necessarily want to resolve it. - TRUE_POSITIVE_REJECT: The result is determined to be a true positive and you want to resolve it. "Reject" infers you want to reject the activity. ' Date-Of-Birth-Alternate: type: object allOf: - type: object properties: dateOfBirthId: type: string description: 'As dates of birth are added to an entity, they are assigned a unique identifier to assist with modification and reference. To modify a date of birth, include the dateOfBirthId in an update request for the individual.' sourceId: type: string description: The source from which specific information was sourced. This is a link to an informationSource object in the informationSources map. readOnly: true - $ref: '#/components/schemas/Date' Workflow-Lookup: type: object properties: serviceName: type: string description: Name of the service. workflowId: type: string description: Unique identifier of the workflow. workflowName: type: string description: Name of the workflow. type: type: string description: Type of the workflow. lifecyclePhase: $ref: '#/components/schemas/Workflow-LifecyclePhaseEnum' monitoringTypes: type: array items: $ref: '#/components/schemas/Monitoring-Type' description: 'The types of monitoring to which this workflow is subscribed. If not provided, the workflow is subscribed to all monitoring types. ' definition: $ref: '#/components/schemas/Workflow-Definition' Email: type: object properties: emailAddressId: $ref: '#/components/schemas/Email-Address-ID' type: type: string enum: - OTHER - WORK - PERSONAL - BUSINESS example: WORK description: The type of email address, if known. sourceId: type: string description: The source from which specific information was sourced. This is a link to an informationSource object in the informationSources map. example: 31dd15f64-5717-4562-b3fc-2c963f66234d readOnly: true email: type: string description: The individual's email address. This email can be used to notify the individual of any verification requirements. example: leonardo_dc@outlook.com isPreferred: type: boolean description: Indicates whether this email address is the individual's preferred email. The preferred email will be used to send notifications at the client's request. default: true linkedAddresses: type: array readOnly: true description: If the email is attached to one or more addresses, the address IDs of those addresses will be present. items: type: object properties: addressId: description: The addressId of the linked address. type: string example: adc215f64-5717-4562-b3fc-2c963f66222a Supplementary-Data-Duplicate: type: object description: 'Provides details of a single duplicate match, including the matching entity ID and a list of matched elements. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: duplicateEntityId: $ref: '#/components/schemas/Entity-ID' description: The entity ID of the entity that was matched by the matched fields. matchedFields: type: array description: The list of fields that determined this is a duplicate of another entity. items: $ref: '#/components/schemas/Supplementary-Data-Duplicate-MatchField' matchedRules: type: array description: The list of rules that were matched to determine this is a duplicate of another entity. items: $ref: '#/components/schemas/Supplementary-Data-Duplicate-MatchedRule' Rule-ID: type: string readOnly: true format: ulid description: Rule ID that identifies an instance of a rule within the Frankie platform Error-Base: type: object properties: errorCode: type: string errorMsg: type: string details: type: array items: $ref: '#/components/schemas/Issue' Workflow-Execution-StateEnum: type: string description: "Current state of the workflow execution. Possible values:\n - COMPLETED: The workflow execution has completed successfully.\n - CANCELED: The workflow execution was canceled.\n - TERMINATED: The workflow execution was terminated before completion.\n - ERROR: The workflow execution encountered an error.\n - TIMEOUT: The workflow execution timed out.\n - IN_PROGRESS: The workflow execution is currently in progress.\n" enum: - COMPLETED - CANCELED - TERMINATED - ERROR - TIMEOUT - IN_PROGRESS Process-Result-ID: type: string description: When a process result object is first created, it is assigned an ID. When updating the process result object, set the processResultID to the ID of the process result object you are referring to. readOnly: true Workflow-Step-Summary-KYC-MatchRule-Matches-MatchTypes: type: object properties: objectId: description: The unique identifier (UUID) of the name, address, date of birth, or other object that was verified. type: string format: uuid objectType: description: The type of object, such as current address (curr_addr), current name (curr_name), previous name (prev_name), alternate date of birth (alt_dob), or passport (PASSPORT). type: string matchCount: description: Number of distinct matches for this match type. type: integer example: 1 matchSources: description: List of sources that matched. type: array items: type: string nonMatchSources: description: List of sources that did not match, if available from the service provider. type: array items: type: string isChecked: description: Indicates whether an attempt was made to verify. type: boolean example: true isVerified: description: Indicates whether there is at least one match. type: boolean example: true Subscription-Type: type: string description: Specifies the type of service profile subscription. This value determines the category of the service profile subscription. enum: - AML - ACTIVITY Supplementary-Data-Duplicate-MatchField: type: object description: 'Provides details of a match between entities, the objects they represent, and the match strength. ' properties: objectType: $ref: '#/components/schemas/Object-Type' duplicateObjectId: type: string format: uuid description: The ID of the object that was found to be a duplicate. objectId: type: string format: uuid description: The ID of the object that originated the match. matchStrength: $ref: '#/components/schemas/Supplementary-Data-Base-MatchStrength' Document-Supplementary-Data-Base: type: object description: Supplementary data associated with a document. required: - type properties: type: type: string description: The document type that defines the type of supplementary data returned. enum: - NATIONAL_HEALTH_ID - BIRTH_CERT - NATIONAL_ID - CITIZENSHIP - PASSPORT - MARRIAGE_CERT Supplementary-Data-AML-MediaData: type: object required: - title - source description: 'Contains adverse media information about a specific matched entity. ' properties: title: type: string description: 'The title of the article or media source. ' snippet: type: string description: 'A short excerpt or snippet from the article. ' source: type: string description: 'The source or publisher of the article or media. ' sourceDate: type: string description: 'The publication date, as referenced and formatted by the source. ' sourceCountry: type: string description: 'The country of origin for the article, if available. ' url: type: string description: 'The URL to the original full article, if available. ' isCurrent: type: boolean default: true description: 'Indicates whether this article is still considered current. ' Evaluation-ID: type: string description: The ID of the evaluation readOnly: true format: ulid Document-Supplementary-Data: type: object description: Supplementary information relevant to a specific document or report type. oneOf: - $ref: '#/components/schemas/Document-Supplementary-Data-National-Health-ID' - $ref: '#/components/schemas/Document-Supplementary-Data-Birth-Certificate' - $ref: '#/components/schemas/Document-Supplementary-Data-National-ID' - $ref: '#/components/schemas/Document-Supplementary-Data-Citizenship' - $ref: '#/components/schemas/Document-Supplementary-Data-Passport' - $ref: '#/components/schemas/Document-Supplementary-Data-Marriage-Certificate' discriminator: propertyName: type mapping: NATIONAL_HEALTH_ID: '#/components/schemas/Document-Supplementary-Data-National-Health-ID' BIRTH_CERT: '#/components/schemas/Document-Supplementary-Data-Birth-Certificate' NATIONAL_ID: '#/components/schemas/Document-Supplementary-Data-National-ID' CITIZENSHIP: '#/components/schemas/Document-Supplementary-Data-Citizenship' PASSPORT: '#/components/schemas/Document-Supplementary-Data-Passport' MARRIAGE_CERT: '#/components/schemas/Document-Supplementary-Data-Marriage-Certificate' Individual: type: object allOf: - $ref: '#/components/schemas/Base-Individual' - type: object properties: informationSources: type: object description: Map of information sources used across the response. additionalProperties: $ref: '#/components/schemas/Information-Source' readOnly: true relationships: $ref: '#/components/schemas/Individual-Relationships' Entity: type: object properties: entityId: $ref: '#/components/schemas/Entity-ID' entityType: $ref: '#/components/schemas/Entity-Type' createdAt: type: string format: date-time readOnly: true schemaVersion: type: integer description: The schema version of this entity. example: 2 readOnly: true addresses: type: array items: $ref: '#/components/schemas/Address' description: A list of all address information associated with the entity. phoneNumbers: type: array items: $ref: '#/components/schemas/Phone-Number' description: A list of all phone numbers associated with the entity. emailAddresses: type: array items: $ref: '#/components/schemas/Email' description: A list of all email addresses associated with the entity. customAttributes: $ref: '#/components/schemas/Custom-Attributes' externalReferences: type: array items: $ref: '#/components/schemas/External-Reference' description: A list of all external references associated with the entity. documents: $ref: '#/components/schemas/Entity-Documents' sourceId: type: string description: The source from which specific information was sourced. This is a link to an informationSource object in the informationSources map. readOnly: true Supplementary-Data-Fraud-Device: type: object description: 'Provides details of a single device fraud check. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - $ref: '#/components/schemas/Supplementary-Data-Fraud-Device-Data' Supplementary-Data-ID: type: object description: 'Provides the matching levels found for each ID element, where available. Match strength is scaled from 0 (no match) to 100 (full match). ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: matchStrengths: $ref: '#/components/schemas/Supplementary-Data-ID-MatchStrengths' fuzziness: $ref: '#/components/schemas/FuzzinessLevel' Indicator-ID: type: string readOnly: true format: ulid description: Indicator ID that identifies an indicator from a check on an activity Individual-Name-Alternate: type: object required: - familyName x-examples: Example 1: givenName: John middleName: Jacob familyName: Smith properties: nameId: type: string example: 87654321-4321-4321-4321-210987654321 description: Include the nameId of an existing name for this individual to modify it. language: type: string example: eng description: The ISO-639-3 standard code that best represents the language and character set of the individual's name. default: eng givenName: type: string example: John description: First name or given name. middleName: type: string example: R description: Middle name(s) or middle initial(s). familyName: type: string example: Doe description: Last name, family name, or surname. otherName: type: string example: null description: Other names to be stored with the entity. prefix: type: string example: Dr. description: Element or series of letters that precede the individual's full name (e.g., title or honorific). suffix: type: string example: Jr. description: Element or series of letters that follow the individual's full name (e.g., generational suffix). sourceId: type: string example: 87654321-4321-4321-4321-210987654322 description: The source from which specific information was sourced. This is a link to an informationSource object in the informationSources map. readOnly: true displayName: type: string example: John Doe description: Long format of the individual's full name, including any prefix, suffix, middle, or other names. Best used when the proper structure of the individual's name is unknown. type: type: string example: OTHER enum: - OTHER - ALIAS - PREVIOUS description: Classification of the individual's name in relation to any of their alternative names. Supplementary-Data-AML-RelatedParties: type: object description: 'Defines the name and relationship of individuals or organizations related to the matched entity. ' properties: name: type: string description: The name of the related individual or organization. relationship: type: string description: 'The nature of the relationship to the matched entity. For example: "Sibling", "Director", "Known associate". ' Process-Risk-Factor-Value: type: object description: Risk Factor Value required: - factor - value properties: factor: type: string description: Name of the risk factor. value: type: string description: Supplier/service provided value that Frankie will plug into the risk engine to determine a score. Workflow-Execution-ObjectTypeEnum: description: 'The type of primary object that was checked. Either: - NAME - ADDRESS - DATE_OF_BIRTH - ORGANIZATION - DOCUMENT - EMAIL_ADDRESS - PHONE_NUMBER - DEVICE - INDIVIDUAL ' type: string enum: - NAME - ADDRESS - DATE_OF_BIRTH - ORGANIZATION - DOCUMENT - EMAIL_ADDRESS - PHONE_NUMBER - DEVICE - INDIVIDUAL Workflow-Issue-Type: type: string enum: - AML_ISSUE - BAD_DATA_ADDRESS - BAD_DATA_DOB - BAD_DATA_EMAIL - BAD_DATA_ID - BAD_DATA_MOBILE - BAD_DATA_NAME - BLOCKED - COMPROMISED_DOCUMENT - CREDIT_HEADER - DATA_COMPARISON - DATA_CONSISTENCY - DATA_VALIDATION - DENY_LIST - DECEASED - DEVICE_FRAUD_MATCH - DEVICE_INVALID - DOCUMENT_COMPARISON - DUPLICATE - FRAUD_CHECK - FRAUD_DEVICE - FRAUD_IP_ADDRESS - FRAUD_EMAIL_ADDRESS - FRAUD_PHONE_NUMBER - FRAUD_ISSUE - FRAUD_LIST - IMAGE_INTEGRITY - INTERNAL_MATCH - LIVENESS_DETECTION - MATCHED_EXTERNAL - MATCHED_INTERNAL - MATCHED_SHARED - MEDIA - NOT_FOUND - OCR - PARTIAL - PEP - REQUIRES_AML - REQUIRES_IDV - REQUIRES_KYC - REQUIRES_VISA - SANCTION - SERVICE_ERROR - SERVICE_TIMEOUT - VISA_FAILED - VISUAL_AUTHENTICITY - WATCHLIST - ACTIVITY_AML - ACTIVITY_FRAUD - ACTIVITY_DEVICE description: "For each category, this provides the specific issue type.\n\nAML:\n - PEP: The entity has Politically Exposed Person (PEP) hits.\n - SANCTION: The entity has sanction hits.\n - MEDIA: The entity has adverse media hits.\n - WATCHLIST: The entity has watchlist hits.\n\nBAD_DATA:\n - BAD_DATA_NAME: Name is required for verification but is missing or unusable due to data quality issues.\n - BAD_DATA_DOB: Date of Birth is required for verification but is missing or unusable due to data quality issues.\n - BAD_DATA_ADDRESS: Address is required for verification but is missing or unusable due to data quality issues.\n - BAD_DATA_ID: ID is required for verification but is missing or unusable due to data quality issues.\n - BAD_DATA_EMAIL: Email is required for verification but is missing or unusable due to data quality issues.\n - BAD_DATA_MOBILE: Mobile is required for verification but is missing or unusable due to data quality issues.\n\nBLOCKLISTED:\n - MATCHED_INTERNAL: The entity matched an internal blocklist.\n - MATCHED_SHARED: The entity matched a shared blocklist.\n - MATCHED_EXTERNAL: The entity matched an external blocklist.\n\nDECEASED:\n - DECEASED: The person whose data is being verified is deceased.\n\nDEVICE:\n - DEVICE_FRAUD_MATCH: Fraud detected on the device.\n - DEVICE_INVALID: The device is invalid.\n\nDUPLICATE:\n - DUPLICATE: The entity is a duplicate of another entity.\n\nEXPIRY:\n - REQUIRES_KYC: KYC process needs to be re-initiated.\n - REQUIRES_IDV: IDV process needs to be re-initiated.\n - REQUIRES_AML: AML process needs to be re-initiated.\n - REQUIRES_VISA: Visa process needs to be re-initiated.\n\nFRAUD:\n - FRAUD_LIST: The entity is on a fraud list.\n - FRAUD_CHECK: Fraud detected during checks.\n - FRAUD_DEVICE: Device fraud detected.\n - FRAUD_IP_ADDRESS: IP address fraud detected.\n - FRAUD_EMAIL_ADDRESS: Email address fraud detected.\n - FRAUD_PHONE_NUMBER: Phone number fraud detected.\n\nIDV:\n - DATA_COMPARISON: Data comparison issue.\n - DATA_VALIDATION: Data validation issue.\n - DATA_CONSISTENCY: Data consistency issue.\n - VISUAL_AUTHENTICITY: Visual authenticity issue.\n - IMAGE_INTEGRITY: Image integrity issue.\n - COMPROMISED_DOCUMENT: Document is compromised.\n - LIVENESS_DETECTION: Liveness detection failed.\n - DOCUMENT_COMPARISON: Document comparison issue.\n\nINFORMATIONAL:\n - CREDIT_HEADER: Credit header information was returned as part of a credit agency check.\n\nKYC:\n - PARTIAL: The KYC check was only partially successful.\n - NOT_FOUND: No match was found for the given data.\n\nOCR:\n - OCR: The OCR data does not match what was entered by the user.\n\nSYSTEM:\n - SERVICE_TIMEOUT: All providers have timed out.\n - SERVICE_ERROR: All providers have returned an error or an internal error has occurred.\n\nVISA:\n - DENY_LIST: The entity matched a visa deny list.\n - VISA_FAILED: Visa check failed from the provider.\n\nWATCHLIST:\n - INTERNAL_MATCH: The entity matched an internal watchlist.\n\nACTIVITY:\n - ACTIVITY_AML: AML-related activity issue.\n - ACTIVITY_FRAUD: Fraud-related activity issue.\n - ACTIVITY_DEVICE: Device-related activity issue." Supplementary-Data-KYC-Gender: type: object description: 'Defines the matching results for a gender check. This is rarely used. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: matchStrengths: $ref: '#/components/schemas/Supplementary-Data-KYC-Gender-MatchStrengths' fuzziness: $ref: '#/components/schemas/FuzzinessLevel' wasNameMatchStrongEnough: description: 'Indicates whether there was a sufficiently strong name match at the time this was checked, even if the gender was a perfect match. This is only an indicator at the time the PRO was created. Subsequent checks that reuse this result may interpret this differently. ' type: boolean Device-ID: type: string description: ID of the device readOnly: true format: ulid Supplementary-Data-Base: type: object required: - type properties: type: type: string description: "The type of supplementary data. Possible values:\n - AML\n - KYC_ADDRESS\n - KYC_DOB\n - KYC_GENDER\n - KYC_NAME\n - ID\n - VISA\n - NAME_VALIDATION\n - KYB_ORGANIZATION\n - MATCHLIST\n - DUPLICATE\n - FRAUD_DEVICE\n - FRAUD_EMAIL\n - FRAUD_PHONE\n - FRAUD_LOOKUP\n - ACTIVITY_AML\n - ACTIVITY_DEVICE\n - ACTIVITY_FRAUD\n" enum: - AML - KYC_ADDRESS - KYC_DOB - KYC_GENDER - KYC_NAME - ID - VISA - NAME_VALIDATION - KYB_ORGANIZATION - MATCHLIST - DUPLICATE - FRAUD_DEVICE - FRAUD_EMAIL_ADDRESS - FRAUD_PHONE_NUMBER - FRAUD_IP_ADDRESS - FRAUD_LOOKUP - ACTIVITY_AML - ACTIVITY_DEVICE - ACTIVITY_FRAUD Date-Type: type: string default: GREGORIAN enum: - BUDDHIST - DISCORDIAN - GREGORIAN - HEBREW - ISLAMIC - JULIAN - LUNAR - MESO_AMERICAN - PERSIAN - OTHER description: The calendar system used for the date, e.g., BUDDHIST, DISCORDIAN, GREGORIAN, HEBREW, ISLAMIC, JULIAN, LUNAR, MESO_AMERICAN, PERSIAN, or OTHER. Phone-Number: type: object properties: phoneNumberId: $ref: '#/components/schemas/Phone-Number-ID' isPreferred: type: boolean example: true description: Indicates whether this is the individual's preferred phone number. type: type: string enum: - OTHER - WORK - HOME - MOBILE - BUSINESS - FAX description: The type of phone number. example: MOBILE sourceId: type: string description: The source from which specific information was sourced. This is a link to an informationSource object in the informationSources map. example: 14fd5f64-5717-4562-b3fc-2c963f66ba34 readOnly: true country: type: string description: ISO-3166-1 alpha-3 country code. example: AUS number: type: string description: The phone number. example: 0426192340 linkedAddresses: type: array readOnly: true description: If the phone number is attached to one or more addresses, the address IDs of those addresses will be present. items: type: object properties: addressId: description: The addressId of the linked address. type: string example: fa335f64-5717-4562-b3fc-2c963f66cf41 unstructuredLongForm: type: string description: Used to capture free-form phone numbers or to store numbers that could not be normalized. Supplementary-Data-IDV-ElementMap: type: object description: 'A map of IDV report elements obtained from the requested IDV service provider. The map keys are arbitrary strings, but where possible, should use a value from the predefined IDV Data Enums. Service provider connections should map supplied values to existing enums where possible. If there is no relevant existing match, it is acceptable to use the original service provider value as the key. ' additionalProperties: $ref: '#/components/schemas/Supplementary-Data-IDV-Data' FuzzinessLevel: type: object properties: normalized: description: 'The normalized fuzziness level, if set. Note: This is a normalized value, NOT the one used by the service provider (see the "actual" field). Assumes a scale of 0.0 (exact match) to 100.0 (match anything). ' type: number format: float minimum: 0 maximum: 100 actual: description: 'The actual fuzziness level as provided by the service provider, if set. Note: This is not a normalized value, but the original value from the provider. ' type: string Workflow-Definition: type: object description: Workflow definition properties: definitionUpdatedAt: description: The date and time the workflow was last updated type: string format: date-time example: '2023-01-15T02:18:11.365Z' version: description: The version of the workflow type: string example: v1 steps: description: The steps of the workflow type: array items: $ref: '#/components/schemas/Workflow-Step' Supplementary-Data-NameValidation: type: object description: 'Details on how the native language name was verified against a dictionary of anglicized translations. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: langCode: type: string description: Language code used for translation. nameMatchOrder: type: string description: 'Depending on the name to be translated and how it is presented, the native language and anglicized version ordering might be mixed up. The service will try various orderings to find a match. The order codes represent the actual order that matched. Each letter combination represents *F*amily, *G*iven, and *O*ther names. For example, FGO means that Family, Given, and Other names matched in that order. ' enum: - FGO - OFG - GOF - FOG - GFO - OGF - FG - FO - GF - OF fuzziness: $ref: '#/components/schemas/FuzzinessLevel' Workflow-Step-Summary-Duplicate: type: object description: 'Provides details of the overall duplicate step results. ' required: - stepName properties: totalDuplicates: type: integer format: int32 minimum: 0 description: Total number of duplicate hits found. totalFalsePositives: type: integer format: int32 minimum: 0 description: Total number of duplicates marked as false positive. totalTruePositives: type: integer format: int32 minimum: 0 description: Total number of duplicates marked as true positive. totalUnresolved: type: integer format: int32 minimum: 0 description: Total number of duplicate hits that are not yet resolved. totalResolved: type: integer format: int32 minimum: 0 description: Total number of duplicate hits that are already resolved. stepName: type: string description: Name of the duplicate step. Supplementary-Data-KYC-Gender-MatchStrengths: type: object properties: gender: type: integer format: int32 minimum: 0 maximum: 100 Relationship-Origin: type: object description: Details about the process that originated the relationship. properties: entityId: $ref: '#/components/schemas/Entity-ID' entityType: $ref: '#/components/schemas/Entity-Type' processResultId: $ref: '#/components/schemas/Process-Result-ID' createdAt: type: string format: date-time readOnly: true description: The date and time when the relationship origin record was created. Workflow-Step-Summary-Fraud: type: object description: 'Provides details of the overall Fraud step results. ' required: - stepName - numberSessionsEvaluated - numberSessionsNotEvaluated properties: maximumIpAddressRisk: type: string description: Maximum IP risk found numberIpAddressEvaluations: type: integer format: int32 minimum: 0 description: Total number of IP evaluations maximumEmailAddressRisk: type: string description: Maximum email address risk identified. numberEmailAddressEvaluations: type: integer format: int32 minimum: 0 description: Total number of email address evaluations. maximumPhoneNumberRisk: type: string description: Maximum phone number risk identified. numberPhoneNumberEvaluations: type: integer format: int32 minimum: 0 description: Total number of phone number evaluations. maximumDeviceRisk: type: string description: Maximum device risk identified. numberDeviceEvaluations: type: integer format: int32 minimum: 0 description: Total number of device evaluations. numberSessionsEvaluated: type: integer format: int32 minimum: 0 description: Total number of sessions evaluated. numberSessionsNotEvaluated: type: integer format: int32 minimum: 0 description: 'Total number of sessions not evaluated. This value is greater than 0 when there are too many sessions to reasonably evaluate. ' stepName: type: string Document-Type: type: string enum: - OTHER - DRIVERS_LICENSE - PASSPORT - VISA - IMMIGRATION - NATIONAL_ID - TAX_ID - NATIONAL_HEALTH_ID - CONCESSION - HEALTH_CONCESSION - PENSION - MILITARY_ID - BIRTH_CERT - CITIZENSHIP - MARRIAGE_CERT - DEATH_CERT - NAME_CHANGE - UTILITY_BILL - BANK_STATEMENT - BANK_ACCOUNT - INTENT_PROOF - ATTESTATION - SELF_IMAGE - DEVICE - VEHICLE_REGISTRATION - PROOF_OF_ADDRESS - HOUSE_REGISTRATION - YELLOW_HOUSE_REGISTRATION - WORK_PERMIT - EMPLOYMENT_CERTIFICATE - NOTARY_PUBLIC_ID - EXTERNAL_ADMIN - CHARGES - PRE_ASIC - ANNUAL_RETURN - REPORT - TRUST_DEED - PARTNERSHIP_AGREEMENT - ADMIN_CHANGE - COMPANY_REPORT - CHECK_RESULTS - AVIATION_SECURITY_ID - MARITIME_SECURITY_ID description: "Valid document ID types.\n\n - \"OTHER\": Generic document type. Unspecified.\n - \"DRIVERS_LICENSE\": Driver's license.\n - \"PASSPORT\": Passport.\n - \"VISA\": Visa document (not Visa payment card).\n - \"IMMIGRATION\": Immigration card.\n - \"NATIONAL_ID\": Any national ID card.\n - \"TAX_ID\": Any national tax identifier.\n - \"NATIONAL_HEALTH_ID\": Any national health program ID card (e.g., Medicare, NHS).\n - \"CONCESSION\": State-issued concession card.\n - \"HEALTH_CONCESSION\": State-issued health-specific concession card.\n - \"PENSION\": State-issued pension ID.\n - \"MILITARY_ID\": Military ID.\n - \"BIRTH_CERT\": Birth certificate.\n - \"CITIZENSHIP\": Citizenship certificate.\n - \"MARRIAGE_CERT\": Marriage certificate.\n - \"DEATH_CERT\": Death certificate.\n - \"NAME_CHANGE\": Name change confirmation.\n - \"UTILITY_BILL\": Regulated utility bill, such as electricity, gas, etc.\n - \"BANK_STATEMENT\": Bank/card statement.\n - \"BANK_ACCOUNT\": Bank account.\n - \"INTENT_PROOF\": Proof of intent, generally a photo/video or a scanned letter.\n - \"ATTESTATION\": Document of attestation (e.g., Statutory Declaration).\n\n NOTE: These cannot be used as a supporting document:\n - \"SELF_IMAGE\": A \"selfie\" used for comparisons.\n - \"DEVICE\": Device ID.\n - \"VEHICLE_REGISTRATION\": Vehicle registration number.\n - \"PROOF_OF_ADDRESS\": Any document that provides proof of address.\n - \"HOUSE_REGISTRATION\": House registration document.\n - \"YELLOW_HOUSE_REGISTRATION\": Yellow House Registration Thor Ror 13.\n - \"WORK_PERMIT\": Work permit.\n - \"EMPLOYMENT_CERTIFICATE\": Certificate of employment.\n - \"NOTARY_PUBLIC_ID\": Notary Public Identification.\n\n Business-related documentation:\n\n - \"EXTERNAL_ADMIN\": Details of appointed administrator.\n - \"CHARGES\": Details of any charges laid against a company or director.\n - \"PRE_ASIC\": Any documents that are Pre-ASIC.\n - \"ANNUAL_RETURN\": Details of a company's annual return.\n - \"REPORT\": Frankie-generated report.\n - \"TRUST_DEED\": Corporate trust deed.\n - \"PARTNERSHIP_AGREEMENT\": Partnership agreement documents.\n - \"ADMIN_CHANGE\": Change of administrator.\n - \"COMPANY_REPORT\": Registry-filed company reports.\n\n Special document types:\n\n - \"CHECK_RESULTS\": Special document type for specifying results of checks completed other than through Frankie.\n - \"AVIATION_SECURITY_ID\": Aviation Security Identification Card.\n - \"MARITIME_SECURITY_ID\": Maritime Security Identification Card." Process-Result-Manual-StatusEnum-KYC: type: string enum: - PASS - FAIL description: 'Any manual status set after the results have been reviewed. - PASS: When the result is determined to be a pass and no further action is needed. - FAIL: When the result is determined to be a fail and no further action is needed. ' Device-Properties: type: object description: Device properties properties: deviceId: $ref: '#/components/schemas/Device-ID' sourceId: type: string description: The source from where a specific information was sourced from. This is a link to an informationSource object in the informationSources map. providerName: type: string description: The name of the provider externalIdentifiers: type: array items: $ref: '#/components/schemas/External-Reference-Information' os: type: string description: the device operating system trueOs: type: string description: the true OS of the device firstSeenAt: type: string format: date-time description: the first time the device was seen in the provider network browser: type: string description: the device browser (if relevant) platform: type: string description: the device platform model: type: string description: the device model fingerprint: type: string description: the device fingerprint fingerprintConfidence: type: number description: the confidence of the fingerprint Process-Result-Manual-StatusEnum: allOf: - $ref: '#/components/schemas/Process-Result-Manual-StatusEnum-AML' - $ref: '#/components/schemas/Process-Result-Manual-StatusEnum-KYC' - $ref: '#/components/schemas/Process-Result-Manual-StatusEnum-IDV' - $ref: '#/components/schemas/Process-Result-Manual-StatusEnum-Duplicate' - $ref: '#/components/schemas/Process-Result-Manual-StatusEnum-Matchlist' Supplementary-Data-IDV-Data: type: object description: 'Contains information about a specific matched IDV element. ' properties: originalName: type: string description: The name of the element as returned by the provider, before normalization (e.g., 'face', 'dob', 'name'). confidence: type: number format: float description: Service provider's confidence in this value. confidenceThreshold: type: number format: float description: Configured confidence threshold for this value to be considered valid. originalData: type: string description: The raw data returned by the provider. reviewedData: type: string description: If the applicant was given a chance to correct the data, this is the reviewed data with any changes. resultNormalized: type: string description: The final result after applying confidence and normalization (e.g., clear, suspected, rejected). description: type: string description: A description of the data element returned in the rawData field. Document-Attachment-Side: type: string enum: - FRONT - BACK description: Indicates whether the attachment is the front or back side of a document. Supplementary-Data-Base-MatchStrength: type: integer description: 'Represents the standard match strength, scaled from 0 (no match) to 100 (exact match). In some cases, a value of 50 may be interpreted as a "partial" match. ' format: int32 minimum: 0 maximum: 100 Document-Supplementary-Data-Birth-Certificate: type: object description: Supplementary information relevant to a birth certificate. allOf: - $ref: '#/components/schemas/Document-Supplementary-Data-Base' - type: object description: Supplementary information relevant to a birth certificate. properties: registrationDate: type: string description: The date the birth was registered. example: '2000' registrationDistrict: type: string description: The district where the birth was registered. example: Sydney dateOfPrint: type: string description: The date the birth certificate was printed. example: '2000' givenName: type: string description: The given name as printed on the certificate. otherNames: type: string description: Other name(s) as printed on the certificate. familyName: type: string description: The family name as printed on the certificate. Document-Attachment-ID: type: string format: uuid description: When a document attachment is created or uploaded, it is assigned an attachmentId. This identifier will appear in a successful response or accepted response. It can be referenced in subsequent calls if you are uploading additional or updated data. Supplementary-Data-Fraud-IP-Address-Data: type: object description: 'Defines the details of a single fraud check for IP address related data. ' properties: deviceId: $ref: '#/components/schemas/Device-ID' ipAddressInformation: $ref: '#/components/schemas/IP-Information' session: $ref: '#/components/schemas/Session-Data' indicators: type: array items: $ref: '#/components/schemas/Supplementary-Data-Activity-Result-Detail-Indicator' riskLevel: $ref: '#/components/schemas/Risk-Level' reference: $ref: '#/components/schemas/Result-Reference' Supplementary-Data-IDV-Document: type: object description: 'Result of a document check, indicating how likely or accurate the presented document is a valid ID document. For resultMap keys, use the keys found in the enum: SupplementaryDataIDVEnumDataDocument. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-IDV-Base' - type: object properties: attachmentIds: type: object description: The IDs of the document images that were analyzed. properties: front: type: string format: uuid description: The ID of the front image of the document. back: type: string format: uuid description: The ID of the back image of the document. detectedDocumentType: $ref: '#/components/schemas/Document-Type' detectedDocumentCountry: type: string description: The ISO-3166-alpha3 country code of the document as detected. example: AUS Gender: type: object properties: genderId: type: string readOnly: true deprecated: true gender: $ref: '#/components/schemas/GenderEnum' sourceId: type: string readOnly: true description: The source from which specific information was sourced. This is a link to an informationSource object in the informationSources map. Supplementary-Data-AML-MatchData-Country: type: object required: - code description: 'Represents the country code and match type for an AML (Anti-Money Laundering) country match. ' properties: code: type: string maxLength: 3 description: 'The ISO 3166-1 alpha-3 country code where a match was identified. ' matchType: type: string description: "The type of match associated with this country. Possible values include:\n - CITIZENSHIP\n - RESIDENCE\n - BIRTH\n - NATIONALITY\n - INCORPORATION (for organizations)\n - OPERATION\n" Risk-Factor-Status: type: string enum: - VALID - STALE - OVERRIDDEN - DISCARDED description: "The current status of the risk factor:\n - VALID: The risk factor is applicable to the entity.\n - STALE: The risk factor is no longer applicable to the entity. If this status is returned, it means that at the time of risk assessment, the risk factor was valid.\n - OVERRIDDEN: The risk factor was manually overridden. If present, manualOverrideScore was used for risk score calculation in the risk assessment.\n - DISCARDED: The risk factor was added during workflow execution but was discarded at a later stage in the same workflow. This factor was not used in the final risk assessment.\n" default: VALID Workflow-Execution-Result: type: object required: - workflowExecutionId - workflowId - requestId - entityId - entityType - schemaVersion - startedAt - serviceProfileId - workflowName - result - workflowExecutionState - createdAt properties: workflowExecutionId: type: string description: Unique identifier for the workflow execution. workflowId: type: string description: Identifier of the workflow definition. requestId: type: string description: Identifier of the request that initiated the workflow. entityId: type: string description: Identifier of the entity being processed. entityType: $ref: '#/components/schemas/Entity-Type' description: Type of the entity being processed. schemaVersion: type: integer description: Version of the schema used for this workflow execution. startedAt: type: string format: date-time description: Date and time when the workflow execution started. endedAt: type: string format: date-time description: Date and time when the workflow execution ended. serviceProfileId: type: string description: Identifier of the service profile used. endWorkflowId: type: string description: Identifier of the workflow that ended. endWorkflowName: type: string description: Name of the workflow that ended. workflowName: type: string readOnly: true description: Name of the workflow. workflowStepResults: type: array items: $ref: '#/components/schemas/Workflow-Execution-Step-Result' description: List of results for each workflow step. result: $ref: '#/components/schemas/Workflow-Execution-ResultEnum' description: Final result of the workflow execution. workflowExecutionState: $ref: '#/components/schemas/Workflow-Execution-StateEnum' description: Current state of the workflow execution. errors: type: array items: $ref: '#/components/schemas/Workflow-Errors' description: List of errors encountered during workflow execution. notes: $ref: '#/components/schemas/Custom-Attributes' description: Additional notes or custom attributes related to the workflow execution. createdAt: type: string format: date-time description: Date and time when the workflow execution record was created. updatedAt: type: string format: date-time description: Date and time when the workflow execution record was last updated. updatedBy: type: string description: Identifier of the user or system that last updated the workflow execution record. Supplementary-Data-IDV-OCR-Comparison-Enum-Comparison-Source: type: string description: 'Indicates the source of the data used for comparison with the OCR scan results. The source can be either the original entity data or the updated data extracted from the OCR scan. ' enum: - ENTITY - OCR_UPDATE Workflow-Step-Summary-Matchlist: type: object description: 'Provides a summary of all matchlist screening results for a workflow step. ' required: - stepName properties: totalMatches: type: integer format: int32 minimum: 0 description: Total number of matches identified across all matchlists. totalFalsePositives: type: integer format: int32 minimum: 0 description: Total number of matches across all matchlists that have been marked as false positives. totalTruePositives: type: integer format: int32 minimum: 0 description: Total number of matches across all matchlists that have been marked as true positives. totalUnknown: type: integer format: int32 minimum: 0 description: Total number of matches across all matchlists that have been marked as unknown. totalUnresolved: type: integer format: int32 minimum: 0 description: Total number of matches across all matchlists that are yet to be classified. matchlistSummaries: type: array description: A summary of each provider's matchlist screening results. items: $ref: '#/components/schemas/Workflow-Step-Summary-Matchlist-Summary' stepName: type: string description: Name of the workflow step. Address: type: object description: Address information in all available formats allOf: - $ref: '#/components/schemas/Address-Base' - type: object properties: unstructuredLongForm: type: string description: Raw, unformatted address as provided by the source. Not normalized or standardized. readOnly: true Supplementary-Data-KYC-Name-MatchStrengths: type: object properties: fullName: type: integer format: int32 minimum: 0 maximum: 100 familyName: type: integer format: int32 minimum: 0 maximum: 100 givenName: type: integer format: int32 minimum: 0 maximum: 100 otherNames: type: integer format: int32 minimum: 0 maximum: 100 firstInitialFamilyName: type: integer format: int32 minimum: 0 maximum: 100 Address-Base: type: object required: - country description: Address information in all available formats properties: addressId: type: string description: As addresses are added to an entity, they are assigned an ID to assist with tracking. sourceId: type: string readOnly: true description: The source from which specific information was sourced. This is a link to an informationSource object in the informationSources map. type: $ref: '#/components/schemas/Address-TypeEnum' description: Used to indicate what sort of address this is, such as residential, business, postal, etc. Should be used in conjunction with the status field to indicate the current status of the address and provide more context. typeDescription: type: string description: Description for the type or the address type as fetched from an authoritative source like a company registry. validFrom: $ref: '#/components/schemas/Date' description: The date this address first became active. Used mostly with business addresses. validTo: $ref: '#/components/schemas/Date' description: The date this address was no longer used (if available). Used mostly with business addresses. longForm: type: string description: 'In some cases, the address will need to be supplied in "long form", such as when it is determined from a document scan, or is unparsable in some way. The service will attempt to convert it to its constituent parts where possible. WARNING: Use of longForm is not guaranteed to produce perfect results, due to the variety of potential formats. You have been warned. Failure to break down or disambiguate the address will result in an error.' unitNumber: type: string description: Unit/Apartment/Flat/Suite/etc. number buildingName: type: string description: The name of the building, apartment block, condominium, etc. streetName: type: string description: 'The name of the street. This field should ideally contain only the street name, without the street number or street type. In some cases, especially when auto-populated by external services (e.g., Google), it may include additional address components. For best results, keep the street name separate from the street number and street type. See https://apidocs.frankiefinancial.com/docs/working-with-addresses for more details.' streetNumber: type: string description: The number assigned to the property on the street. Typically a number, but can also be alphanumeric (e.g., 3A). streetType: type: string description: The street type, such as Road, Street, Avenue, Circuit, etc. neighborhood: type: string description: The neighborhood or suburb within the town or city. Use this only if you require both a suburb and a locality/town/city; otherwise, use the "locality" parameter. locality: type: string description: The locality, town, village, suburb, or city. district: type: string description: The district, region, county, province, or cantonment. subdivision: type: string description: The administrative area, state, or sub-division. Use local abbreviations, such as VIC (Victoria) or TX (Texas). country: type: string description: 'The ISO-3166-1 country code. You must use the alpha-3 country code (e.g., AUS, USA, IDR, KOR, etc). Conversion will be handled as needed. For more details, refer to: https://en.wikipedia.org/wiki/ISO_3166-1' postalCode: type: string description: The postal code of the address. careOf: type: string description: The individual or business name at this address, if different from the name of the entity to which this address belongs. status: $ref: '#/components/schemas/Address-StatusEnum' description: The status of the address information, such as current, previous, or future. Should be used in conjunction with the `type` field to indicate the type of the address and provide more context. Service-Profile: allOf: - $ref: '#/components/schemas/Service-Profile-Base' - type: object properties: state: $ref: '#/components/schemas/Service-Profile-State' Error: type: object x-examples: '400': requestId: 0123456789ABCDEFGHIJKLMNOP errorCode: API-0400 errorMsg: Parsing credentials from "" failed, because invalid. httpStatusCode: 400 '401': requestId: 0123456789ABCDEFGHIJKLMNOP errorCode: API-0401 errorMsg: Unauthenticated due to invalid credentials. httpStatusCode: 401 '409': requestId: 0123456789ABCDEFGHIJKLMNOP errorCode: API-0409 errorMsg: Conflict. httpStatusCode: 409 allOf: - $ref: '#/components/schemas/Error-Base' - type: object properties: requestId: $ref: '#/components/schemas/Request-ID' Process-Result-StateEnum: type: string readOnly: true description: Denotes the final disposition of this element's check result enum: - IN_PROGRESS - COMPLETED - TIMEOUT - ERROR Supplementary-Data-AML-MatchData-NationalId: type: object description: 'Provides details of a matched identification document, if supplied. ' properties: idNumber: type: string description: The matched identification number. idType: type: string description: The type of identification matched (e.g., National ID, passport). idExpiry: type: string description: The expiry date of the identification document (if known), using the format provided by the service provider. issuingCountryCode: type: string description: The ISO 3166-1 alpha-3 country code of the issuing country. documentId: type: string description: The document ID if this was matched to a FrankieOne document record. Consent: type: object properties: type: type: string description: The type of consent given by an entity example: UNDER18 enum: - GENERAL - DOCS - CREDITHEADER - UNDER18 - PAYROLL - INSURANCE - SUPERANNUATION schemaVersion: type: integer readOnly: true sourceId: type: string description: The source from which specific information was obtained. This is a link to an informationSource object in the informationSources map. example: 93da15f64-5717-4562-b3fc-2c963f6663fe readOnly: true Workflow-Execution-State: type: string description: 'Indicates the current state of this workflow execution. Refer to the documentation for a full description of each possible workflow execution state. ' example: INPROGRESS readOnly: true Matchlist-Action: type: string description: "Default action recommended for a match. The action can be one of the following:\n - `BLOCK`: Recommended action is to block the entity.\n - `ALERT`: Recommended action is to create an alert for the entity.\n - `ALLOW`: Recommended action is to allow the entity.\n - `REVIEW`: Recommended action is to review the entity.\n - `NONE`: No action; only use the `riskFactor` if any." enum: - BLOCK - ALERT - ALLOW - REVIEW - NONE Information-Source: type: object properties: sourceId: type: string description: 'As sources are added to an entity, they''re assigned a unique identifier to assist with modification and reference. To modify a source, include the sourceId in an update request call.' type: description: The type of source information e.g. "ID number" type: string example: ID number deprecated: true source: description: The source of information like document number, website, etc. type: string example: Client description: description: The type or details of the source of information. type: string example: '' provider: description: The provider of the information, e.g., Equifax. type: string example: equifax-au providerReference: description: Reference linking to the provider for this information. type: string example: '' createdAt: type: string format: date-time description: The date and time this information was first created in the system. example: '2024-01-15T02:18:11.365Z' requestedAt: type: string format: date-time description: The date and time FrankieOne requested this information from the external source provider. example: '2024-01-15T02:18:11.365Z' generatedAt: type: string format: date-time description: The date and time FrankieOne generated this information, if applicable. example: '2024-01-15T02:18:11.365Z' retrievedAt: type: string format: date-time description: The date and time FrankieOne retrieved this information from the external source provider. example: '2024-01-15T02:18:11.365Z' updatedAt: type: string format: date-time description: The date and time this information was last updated in the system. example: '2024-01-15T02:18:11.365Z' isAuthoritative: type: boolean description: Indicates whether this information is from an authoritative source, e.g., a company registry. example: false isManual: description: Indicates whether this information was added manually by the client rather than by a system or source provider. type: boolean example: true deprecated: true readOnly: true Search-Confidence: type: number format: float minimum: 0 maximum: 1 description: 'Confidence level of the search result, represented as a number between 0 and 1. A higher value indicates greater confidence in the accuracy of the search result. ' Supplementary-Data-IDV-OCR: type: object description: 'Result of a document OCR comparison. This object represents the comparison between scanned data (via OCR) and updated or alternately supplied results. For the resultMap keys, use the keys defined in the enum: SupplementaryDataIDVEnumDataOCR. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-IDV-Base' - type: object properties: scannedDocumentId: type: string format: uuid description: 'The documentId of the ID document on which OCR extraction was performed. ' scannedAttachmentFrontId: type: string format: uuid description: 'The attachmentId of the front image of the ID document used for OCR extraction. ' scannedAttachmentBackId: type: string format: uuid description: 'The attachmentId of the back image of the ID document used for OCR extraction, if a back image was provided. ' Supplementary-Data-IDV-Base: type: object description: 'A report from an IDV provider based on a photographic or video biometrics process. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: outcomeRaw: type: string description: The original outcome of the IDV process, as reported by the service provider. resultMap: $ref: '#/components/schemas/Supplementary-Data-IDV-ElementMap' requiredElements: type: array description: List of elements required to have passed, as per the step configuration. items: type: string description: The IDV report element name, e.g., 'face', 'dob', 'name'. Device: type: object description: 'Device information associated with an activity, used for submitting device checks using an external service. ' allOf: - $ref: '#/components/schemas/Device-Detail' - type: object properties: geolocation: $ref: '#/components/schemas/Geolocation' ipAddressInformation: $ref: '#/components/schemas/IP-Information' createdAt: type: string description: the time the device was created in UTC ISO8601 format format: date-time readOnly: true Matchlist-Entry-Attribute-Type: type: string description: 'Entity attributes eligible for screening. A matchlist entry may not contain both `ORG_*` and `IND_*` attributes, and they must match the `ENTITY_TYPE` if it is provided.' enum: - ENTITY_TYPE - EMAIL_ADDRESS - EMAIL_DOMAIN - PHONE_NUMBER - ADDR_STREET_NUMBER - ADDR_STREET_NAME - ADDR_STREET_TYPE - ADDR_NEIGHBORHOOD - ADDR_LOCALITY - ADDR_DISTRICT - ADDR_SUBDIVISION - ADDR_COUNTRY - ADDR_POSTAL_CODE - ADDR_UNSTRUCTURED_LONG_FORM - DOC_CLASS - DOC_TYPE - DOC_SUBTYPE - DOC_PRIMARY_IDENTIFIER - DOC_SECONDARY_IDENTIFIER - IND_DISPLAY_NAME - IND_GIVEN_NAME - IND_FAMILY_NAME - IND_MIDDLE_NAME - IND_DATE_OF_BIRTH - IND_NATIONALITY - ORG_REGISTERED_SUBDIVISION - ORG_REGISTERED_COUNTRY - ORG_REGISTRATION_NUMBER - ORG_REGISTRATION_NUMBER_TYPE - ORG_NAME Workflow-Step-Summary-KYC-Result-Summary-Detail: type: object properties: provider: type: string description: The name of the provider that returned the result. source: type: string description: The source within the provider that returned the result. attributesMatched: type: array description: List of attributes that were matched. items: type: string Document-Supplementary-Data-National-Health-ID: type: object description: Supplementary information relevant to a national health id. allOf: - $ref: '#/components/schemas/Document-Supplementary-Data-Base' - type: object properties: reference: type: string description: The individual reference number used to identify the position of the applicant's name on the health card. Required for Australian Medicare cards (this is the number to the left of the name on the card). example: '1' nameOnCardLine1: type: string description: The individual's name as it appears on the card. nameOnCardLine2: type: string description: If the individual's name spans more than one line, this is the part of the name that appears on line 2. nameOnCardLine3: type: string description: If the individual's name spans more than two lines, this is the part of the name that appears on line 3. nameOnCardLine4: type: string description: If the individual's name spans more than three lines, this is the part of the name that appears on line 4. middleNameOnCard: type: string description: The individual's middle name or initial as it appears on the card. Supplementary-Data-Activity-Result-Detail-Rule: type: object properties: ruleId: $ref: '#/components/schemas/Rule-ID' reference: type: string name: type: string description: type: string isActive: type: boolean Supplementary-Data-KYC-DoB: type: object description: 'Defines the matching levels for each date of birth element, where available. Provides a match strength score ranging from 0 (no match) to 100 (full match). ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: matchStrengths: $ref: '#/components/schemas/Supplementary-Data-KYC-DoB-MatchStrengths' fuzziness: $ref: '#/components/schemas/FuzzinessLevel' wasNameMatchStrongEnough: description: 'Indicates whether there was a sufficiently strong name match at the time this was checked, even if the date of birth was a perfect match. This is only an indicator at the time the PRO was created. Subsequent checks that reuse this result may interpret this differently. ' type: boolean Date: type: object allOf: - $ref: '#/components/schemas/Date-Base' - type: object properties: normalized: type: string format: date description: Full date in ISO 8601 format ("YYYY-MM-DD"). This is a read-only field. example: '1990-03-31' readOnly: true Workflow-LifecyclePhaseEnum: type: string description: "Specifies the lifecycle phase of the customer in which this workflow is executed:\n - ONBOARDING: Workflow is in the onboarding stage.\n - MONITORING: Workflow is in the monitoring stage.\n - OTHER: Workflow is in another stage.\n" enum: - ONBOARDING - MONITORING - OTHER default: OTHER Attribute: type: object required: - type - value properties: type: description: The attribute type. type: string maxLength: 64 value: description: The value assigned to the attribute. type: string Result-Reference-Type: type: string description: The type of the reference (e.g. url) enum: - URL - REFERENCE Session-Data: type: object description: Session data for an activity, this is always scoped to a singular entity. allOf: - $ref: '#/components/schemas/Session' - type: object properties: sessionId: type: string description: A Frankie ID for the session format: ulid readOnly: true providerName: type: string entityId: $ref: '#/components/schemas/Entity-ID' createdAt: type: string description: the time the session was created in UTC ISO8601 format format: date-time readOnly: true expiresAt: type: string description: the time the session expires in UTC ISO8601 format format: date-time readOnly: true Behavior-Biometrics: type: object properties: hesitationPercentileLongTermMemory: type: number description: 'The hesitation percentile for fields like address, name, etc which are associated with long term memory. ' hesitationPercentileNonLongTermMemory: type: number description: 'The hesitation percentile for fields like amount fields which are not associated with long term memory. ' numberDistractionEvents: type: integer Supplementary-Data-Fraud-Phone-Number: type: object description: 'Defines the details of a single phone number fraud check. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: phoneNumberId: $ref: '#/components/schemas/Phone-Number-ID' riskLevel: $ref: '#/components/schemas/Risk-Level' reference: $ref: '#/components/schemas/Result-Reference' indicators: type: array items: $ref: '#/components/schemas/Supplementary-Data-Activity-Result-Detail-Indicator' Supplementary-Data: type: object readOnly: true oneOf: - $ref: '#/components/schemas/Supplementary-Data-AML' - $ref: '#/components/schemas/Supplementary-Data-KYC-Address' - $ref: '#/components/schemas/Supplementary-Data-KYC-DoB' - $ref: '#/components/schemas/Supplementary-Data-KYC-Gender' - $ref: '#/components/schemas/Supplementary-Data-KYC-Name' - $ref: '#/components/schemas/Supplementary-Data-ID' - $ref: '#/components/schemas/Supplementary-Data-Visa' - $ref: '#/components/schemas/Supplementary-Data-NameValidation' - $ref: '#/components/schemas/Supplementary-Data-KYB-Organization' - $ref: '#/components/schemas/Supplementary-Data-Duplicate' - $ref: '#/components/schemas/Supplementary-Data-IDV-Document' - $ref: '#/components/schemas/Supplementary-Data-IDV-Facial-Comparison' - $ref: '#/components/schemas/Supplementary-Data-IDV-Facial-Liveness' - $ref: '#/components/schemas/Supplementary-Data-IDV-OCR' - $ref: '#/components/schemas/Supplementary-Data-IDV-OCR-Comparison' - $ref: '#/components/schemas/Supplementary-Data-Matchlist' - $ref: '#/components/schemas/Supplementary-Data-Activity-AML' - $ref: '#/components/schemas/Supplementary-Data-Activity-Fraud' - $ref: '#/components/schemas/Supplementary-Data-Activity-Device' - $ref: '#/components/schemas/Supplementary-Data-Fraud-Device' - $ref: '#/components/schemas/Supplementary-Data-Fraud-Email-Address' - $ref: '#/components/schemas/Supplementary-Data-Fraud-IP-Address' - $ref: '#/components/schemas/Supplementary-Data-Fraud-Phone-Number' discriminator: propertyName: type mapping: AML: '#/components/schemas/Supplementary-Data-AML' KYC_ADDRESS: '#/components/schemas/Supplementary-Data-KYC-Address' KYC_DOB: '#/components/schemas/Supplementary-Data-KYC-DoB' KYC_GENDER: '#/components/schemas/Supplementary-Data-KYC-Gender' KYC_NAME: '#/components/schemas/Supplementary-Data-KYC-Name' ID: '#/components/schemas/Supplementary-Data-ID' VISA: '#/components/schemas/Supplementary-Data-Visa' NAME_VALIDATION: '#/components/schemas/Supplementary-Data-NameValidation' KYB_ORGANIZATION: '#/components/schemas/Supplementary-Data-KYB-Organization' DUPLICATE: '#/components/schemas/Supplementary-Data-Duplicate' IDV_DOCUMENT: '#/components/schemas/Supplementary-Data-IDV-Document' IDV_FACIAL_COMPARISON: '#/components/schemas/Supplementary-Data-IDV-Facial-Comparison' IDV_FACIAL_LIVENESS: '#/components/schemas/Supplementary-Data-IDV-Facial-Liveness' IDV_OCR: '#/components/schemas/Supplementary-Data-IDV-OCR' IDV_OCR_COMPARISON: '#/components/schemas/Supplementary-Data-IDV-OCR-Comparison' MATCHLIST: '#/components/schemas/Supplementary-Data-Matchlist' ACTIVITY_AML: '#/components/schemas/Supplementary-Data-Activity-AML' ACTIVITY_FRAUD: '#/components/schemas/Supplementary-Data-Activity-Fraud' ACTIVITY_DEVICE: '#/components/schemas/Supplementary-Data-Activity-Device' FRAUD_DEVICE: '#/components/schemas/Supplementary-Data-Fraud-Device' FRAUD_EMAIL_ADDRESS: '#/components/schemas/Supplementary-Data-Fraud-Email-Address' FRAUD_IP_ADDRESS: '#/components/schemas/Supplementary-Data-Fraud-IP-Address' FRAUD_PHONE_NUMBER: '#/components/schemas/Supplementary-Data-Fraud-Phone-Number' External-Reference: type: object description: Reference information used to identify the individual in systems external to FrankieOne. allOf: - type: object properties: referenceId: type: string description: 'As external references are added to an entity, they are assigned a unique identifier to assist with modification and reference. To modify an external reference, include the referenceId in an update request for the individual.' example: 24de15f64-5717-4562-b3fc-2c963f66e23e readOnly: true type: type: string enum: - SYSTEM - CUSTOMER - OTHER default: CUSTOMER sourceId: type: string description: The source from which specific information was sourced. This is a link to an informationSource object in the informationSources map. example: 93da15f64-5717-4562-b3fc-2c963f6663fe readOnly: true - $ref: '#/components/schemas/External-Reference-Information' Workflow-Issue-Category: type: string enum: - AML - BAD_DATA - BIOMETRICS - BLOCKLISTED - DECEASED - DEVICE - DOCUMENT - DUPLICATE - EXPIRY - FRAUD - IDV - INFORMATIONAL - KYC - SYSTEM - VERIFY - VISA - WATCHLIST - ACTIVITY description: "General category of issue found:\n - AML: Anti-Money Laundering issues.\n - BAD_DATA: Indicates that the data provided is invalid or incorrect.\n - BIOMETRICS: Issues found during a biometrics check.\n - BLOCKLISTED: The entity has a hit on a blocklist.\n - DECEASED: Indicates that the entity is deceased.\n - DEVICE: Issues found during device checks.\n - DOCUMENT: Issues found during a document check.\n - DUPLICATE: Indicates that the entity has duplicates.\n - EXPIRY: Indicates that a process or document for the entity has expired.\n - FRAUD: Possible fraud detected.\n - IDV: Issues found during an Identity Verification (IDV) process.\n - INFORMATIONAL: Informational messages that are not issues but are required to be returned.\n - KYC: Issues found during a Know Your Customer (KYC) process.\n - SYSTEM: System-level issues.\n - VERIFY: Issues found during a verification process.\n - VISA: Issues found during a visa check.\n - WATCHLIST: Issues found during a watchlist check.\n - ACTIVITY: Issues found during an activity process." Document-Attachment-Type: type: string description: "General types of valid document attachments.\n - \"PHOTO\": Any photo.\n - \"VIDEO\": Any video.\n - \"AUDIO\": Any audio.\n - \"PDF\": PDF or PS file (may contain text, images, or both).\n - \"DOC\": Word document, RTF, etc.\n - \"ZIP\": Any compressed file(s)." Device-Detail: type: object description: Device details allOf: - $ref: '#/components/schemas/Device-Indicators' - $ref: '#/components/schemas/Device-Properties' Workflow-Execution-Summary: type: object description: "Summary of the workflow execution.\n\n### Using and interpreting the status field\n\nThe result of the workflow is represented in the **status** field. Users can manually override this status with a different value to change the outcome of the workflow.\nWhen the **status** field is overridden, the **statusOverrideRequestId** field is populated with the request ID of the override request.\nIf the **statusOverrideRequestId** field is present and non-empty, it indicates that the status has been manually changed.\n\n 1. Initial State:\n - When a workflow completes, its result is set in the **status** field.\n 2. Status Override:\n - Users may override the **status** field with a different value (e.g., change FAIL to PASS).\n 3. Identifying Overrides:\n - To determine if a status has been overridden, check for the presence of the **statusOverrideRequestId** field.\n - If present, it indicates that the status has been manually changed.\n 4. Additional Override Information:\n - **statusOverrideBy**: Identifies the user who performed the override (may not always be present).\n - **statusOverrideAt**: Timestamp of when the override occurred.\n 5. Interpretation:\n - If **statusOverrideRequestId** is empty or absent, no override has occurred.\n - If **statusOverrideRequestId** is present, then a manual override has occurred.\n" properties: schemaVersion: type: integer description: Version of the schema used for this workflow execution. workflowName: type: string description: Name of the workflow. workflowExecutionId: type: string description: Unique identifier for the workflow execution. workflowExecutionState: $ref: '#/components/schemas/Workflow-Execution-StateEnum' description: Current state of the workflow execution. status: $ref: '#/components/schemas/Workflow-Execution-ResultEnum' description: Current status/result of the workflow execution. statusOverrideAt: type: string format: date-time description: Timestamp when the status override occurred. statusOverrideRequestId: type: string description: Request ID associated with the status override. statusOverrideBy: type: string description: Identifier of the user who performed the status override. riskAssessment: $ref: '#/components/schemas/Risk-Assessment' description: Risk assessment for the workflow execution. isManual: type: boolean description: Indicates if the workflow was executed manually. steps: $ref: '#/components/schemas/Workflow-Execution-Steps' description: Steps executed as part of the workflow. startedAt: type: string format: date-time description: The timestamp when the workflow execution started. endedAt: type: string format: date-time description: The timestamp when the workflow execution ended. issues: type: array description: List of issues encountered during the workflow execution. items: $ref: '#/components/schemas/Workflow-Issue' lifecyclePhase: $ref: '#/components/schemas/Workflow-LifecyclePhaseEnum' description: Current lifecycle phase of the workflow. monitoringTypes: description: 'The types of monitoring that subscribe to the workflow. ' type: array items: $ref: '#/components/schemas/Monitoring-Type' Supplementary-Data-KYC-Name: type: object description: 'Defines the matching levels for each name element, where available. Provides a match strength score ranging from 0 (no match) to 100 (full match). ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: matchStrengths: $ref: '#/components/schemas/Supplementary-Data-KYC-Name-MatchStrengths' fuzziness: $ref: '#/components/schemas/FuzzinessLevel' Supplementary-Data-ID-MatchStrengths: type: object properties: primaryIdentifier: type: integer format: int32 minimum: 0 maximum: 100 secondaryIdentifier: type: integer format: int32 minimum: 0 maximum: 100 name: type: integer format: int32 minimum: 0 maximum: 100 description: 'If the name verification result is known, record it here. NOTE: This should not be used as a KYC result; informational only. Please use a separate PRO for an actual KYC result if required. ' dateOfBirth: type: integer format: int32 minimum: 0 maximum: 100 description: 'If the date of birth verification result is known, record it here. NOTE: This should not be used as a KYC result; informational only. Please use a separate PRO for an actual KYC result if required. ' expiryDate: type: integer format: int32 minimum: 0 maximum: 100 isValid: type: boolean description: Indicates if the ID is valid (if known). isExpired: type: boolean description: Indicates if the ID has expired (if known). isBlocked: type: boolean description: Indicates if the ID has been blocked at the source. blockingCode: type: string description: If the service provider returns a blocking code or reason, it will be recorded here. attachmentId: type: string format: uuid description: If a photo was sent to the service provider, the FrankieOne scanId is added for reference. photoId: type: integer format: int32 minimum: 0 maximum: 100 description: If a photo was supplied and checked, the match score is recorded here. photoIssue: type: string description: If there was an issue checking the photo, any error details can be found here. Service-Profile-State: type: string description: 'Current state of the Service Profile - INIT: Initial state when the profile is created. - AUTO: Automatically assigned state, typically after initial processing. - ACTIVE: The profile is active and in use. - ARCHIVED: The profile has been archived and is no longer active. - BLOCKLISTED: The profile is blocked from further actions. - INACTIVE: The profile is inactive, not currently in use. - DELETED: The profile has been deleted. - DUPLICATE: The profile is a duplicate of another existing profile.' enum: - INIT - AUTO - ACTIVE - ARCHIVED - BLOCKLISTED - INACTIVE - DELETED - DUPLICATE Workflow-Execution-Step-Result: type: object properties: stepResultId: type: string description: Unique identifier for this step result. workflowExecutionId: type: string description: Identifier of the associated workflow execution. stepName: type: string description: The name of the step, in SCREAMING_SNAKE_CASE. requestId: type: string description: Identifier of the request associated with this step. objectType: $ref: '#/components/schemas/Workflow-Execution-ObjectTypeEnum' description: Type of the primary object checked in this step. objectId: type: string description: Identifier of the object checked in this step. schemaVersion: type: integer description: Version of the schema used for this step. startedAt: type: string format: date-time description: Date and time when this step started. endedAt: type: string format: date-time description: Date and time when this step ended. serviceProviders: type: array description: List of service providers involved in this step. items: $ref: '#/components/schemas/Service-Providers' result: $ref: '#/components/schemas/Workflow-Step-ResultEnum' description: Result of this workflow step. errors: type: array description: List of errors encountered during this step. items: $ref: '#/components/schemas/Workflow-Errors' summary: $ref: '#/components/schemas/Workflow-Step-Summary' description: Summary of the workflow step. risk: $ref: '#/components/schemas/Workflow-Step-Risk-Result' description: Risk assessment result for this step. notes: $ref: '#/components/schemas/Custom-Attributes' description: Additional notes or custom attributes for this step. processResults: type: array description: List of process result objects for this step. items: $ref: '#/components/schemas/Process-Result-Object' createdAt: type: string format: date-time description: Date and time when this step result was created. updatedAt: type: string format: date-time description: Date and time when this step result was last updated. updatedBy: type: string description: Identifier of the user or system that last updated this step result. Process-Result-System-StatusEnum: type: string description: 'If there has been an additional system status applied to the process. - VALID: The process result is valid and has not been marked for any special handling. - EXPIRED: The process result has expired and is no longer valid. - STALE: The process result is considered stale, meaning it may be outdated but not necessarily invalid. - MARKED_INVALID: The process result has been explicitly marked as invalid. - MARKED_IGNORE: The process result has been marked to be ignored, meaning it should not be considered in further processing. ' enum: - VALID - EXPIRED - STALE - MARKED_INVALID - MARKED_IGNORE default: VALID readOnly: true Provider-Result: type: object properties: name: type: string source: type: string sourceNormalized: type: string reference: type: string fuzziness: $ref: '#/components/schemas/FuzzinessLevel' confidence: $ref: '#/components/schemas/ConfidenceLevel' riskScore: type: number format: double errorCode: type: string errorMessage: type: string readOnly: true Workflow-Step-Summary-AML-Search-Parameters: type: object description: 'Search query parameters used in the AML workflow step. ' properties: name: type: string description: Name sent to the service provider, if provided as a single string. givenName: type: string description: Given name sent to the service provider. otherName: type: string description: Other name sent to the service provider. familyName: type: string description: Family name sent to the service provider. dateOfBirth: type: string description: Date of birth sent to the service provider. May be in any format and may be a partial date. address: type: string description: Main address sent to the service provider. gender: type: string description: Gender sent to the service provider. nationality: type: string description: Nationality sent to the service provider. idNumber: type: string description: ID number sent to the service provider. idType: type: string description: ID type sent to the service provider. idCountry: type: string description: ID country sent to the service provider. placeOfBirth: type: string description: Place of birth sent to the service provider. placeOfResidence: type: string description: Place of residence sent to the service provider. fuzziness: type: string description: Search fuzziness level; may be a percentage or a descriptive level. Custom-Attributes: type: object additionalProperties: $ref: '#/components/schemas/Attribute' Process-Result-Error: type: object properties: code: type: string description: The error code associated with the process result. description: type: string description: A description of the error. location: type: string description: The location or context where the error occurred. Workflow-Step-Summary-AML: type: object description: 'Provides details of the overall AML (Anti-Money Laundering) step results. ' required: - stepName properties: totalHits: type: integer format: int32 minimum: 0 description: Total number of AML hits across all providers. totalFalsePositives: type: integer format: int32 minimum: 0 description: Total number of AML hits marked as false positive across all providers. totalTruePositives: type: integer format: int32 minimum: 0 description: Total number of AML hits marked as true positive across all providers. totalUnknown: type: integer format: int32 minimum: 0 description: Total number of AML hits marked as unknown across all providers. totalUnresolved: type: integer format: int32 minimum: 0 description: Total number of AML hits that remain unresolved across all providers. numUnresolvedPEP: type: integer format: int32 minimum: 0 description: Total number of unresolved AML hits with a PEP (Politically Exposed Person) entry across all providers. numUnresolvedSanction: type: integer format: int32 minimum: 0 description: Total number of unresolved AML hits with a sanctions entry across all providers. numUnresolvedWatchlist: type: integer format: int32 minimum: 0 description: Total number of unresolved AML hits with a watchlist entry across all providers. numUnresolvedAdverseMedia: type: integer format: int32 minimum: 0 description: Total number of unresolved AML hits with an adverse media entry across all providers. providerSummaries: type: array description: Summary of each provider's AML results. items: $ref: '#/components/schemas/Workflow-Step-Summary-AML-ProviderSummary' stepName: type: string description: Name of the AML step. Date-Of-Birth: type: object allOf: - type: object properties: dateOfBirthId: type: string description: 'As dates of birth are added to an entity, they are assigned a unique identifier to assist with modification and reference. To modify a date of birth, include the dateOfBirthId in an update request for the individual.' readOnly: true sourceId: type: string description: The source from which specific information was sourced. This is a link to an informationSource object in the informationSources map. readOnly: true - $ref: '#/components/schemas/Date' Supplementary-Data-AML-MatchData: type: object required: - spReferenceId - name description: 'Contains information about this specific matched entity. ' properties: strength: type: number format: float description: The match strength as determined by the service provider. spReferenceId: type: string description: 'The internal identifier assigned by the service provider for the matched individual or business. ' name: type: string description: 'The name matched by the service provider. ' givenName: type: string description: 'The given name matched by the service provider (optional). ' otherName: type: string description: 'The middle or other name(s) matched by the service provider (optional). ' familyName: type: string description: 'The family name matched by the service provider (optional). ' date: type: string description: 'The date matched in the system, formatted as provided by the service provider. May be only a year. ' address: type: string description: 'The address matched by the service provider (optional). ' countries: type: array items: $ref: '#/components/schemas/Supplementary-Data-AML-MatchData-Country' nationalId: $ref: '#/components/schemas/Supplementary-Data-AML-MatchData-NationalId' imageUrl: type: string format: uri description: A URL to a displayable image of the matched individual or company logo. isDeceased: type: boolean description: Indicates if this match is to a deceased individual. isAlias: type: boolean description: Indicates if this match is an alias of the searched individual or organization. isRelated: type: boolean description: Indicates if this match is a related party of the searched individual or organization. Document-Attachment: type: object required: - data description: Document attachment details. properties: attachmentId: $ref: '#/components/schemas/Document-Attachment-ID' sourceId: type: string readOnly: true description: The source from which specific information was sourced. This is a link to an informationSource object in the informationSources map. createdAt: type: string readOnly: true format: date-time description: The date and time the attachment was created. This is not the date of the attached document, which should be in the idIssued attribute of the document that owns this attachment. updatedAt: type: string format: date-time readOnly: true description: The date and time the attachment was last updated. This is not the date of the attached document, which should be in the idIssued attribute of the document that owns this attachment. filename: type: string description: If you are uploading a file where it is important to keep the original filename, you can provide it here. Otherwise, the Frankie service will assign an arbitrary name based on the attachmentId and an extension based on the MIME type. mimeType: type: string description: The standard MIME type of the file being uploaded. This will be verified, but providing it can help speed up processing. pageNumber: type: integer description: If uploading multiple pages, this can be used to track page numbers. There is no enforcement of these numbers. You can have multiple page 1's or a page 29 if you wish. side: $ref: '#/components/schemas/Document-Attachment-Side' type: $ref: '#/components/schemas/Document-Attachment-Type' location: description: Reference to where the data can be retrieved from. type: string data: $ref: '#/components/schemas/Data-URI-Base64' lastMalwareScanAt: type: string format: date-time retrievalStatus: $ref: '#/components/schemas/Document-Attachment-Retrieval-Status' Geolocation: type: object description: Geolocation details if it can be determined, typically related to a device during an activity properties: city: type: string description: The city example: - Melbourne - San Francisco country: type: string description: The country in alpha 3 ISO-3166-1 standard example: - AUS - USA subdivision: type: string description: The subdivision example: - Victoria - California latitude: type: number format: double description: The latitude longitude: type: number format: double description: The longitude Supplementary-Data-Activity-Fraud: type: object description: 'Defines the details of an activity fraud result. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: riskLevel: type: string activityResults: type: array items: $ref: '#/components/schemas/Supplementary-Data-Activity-Result-Detail' Email-Address-ID: type: string description: 'As email addresses are added to an entity, they are assigned a unique identifier to assist with modification and reference. To modify an email, include the emailId in an update request.' example: aa385f64-5717-4562-b3fc-2c963f66af21 External-Reference-Information: type: object x-examples: Customer Reference: name: CUSTOMER-REFERENCE value: CUST-00001342 description: This is the customer id in the core banking system required: - name - value description: Used to store references and identifying information about an entity that is external to FrankieOne. If you wish to filter or search on customer information relevant to your business, that information should be added as an external reference. properties: name: type: string description: The name of the external reference. example: CUSTOMER-REFERENCE value: type: string description: The value of the external reference. example: CUST-00001342 description: type: string description: A summary of what this external reference is and what it is used for. example: This is the customer ID in the core banking system. Workflow-Execution-ID: type: string description: 'The execution ID (formerly known as Check ID) representing a single workflow execution instance. ' example: e39b46ca-514b-4730-8caf-7ab423831ff1 readOnly: true Workflow-Step-Summary-Start: type: object required: - stepName properties: workflowExecutionId: type: string workflowContextId: type: string format: uuid stepName: type: string Device-Indicators: type: object properties: riskScore: type: integer description: Risk score as determine by the device checking service riskLevel: $ref: '#/components/schemas/Risk-Level' behaviorBiometrics: $ref: '#/components/schemas/Behavior-Biometrics' isRat: type: boolean description: Was the device user determined to be a rat? isSupported: type: boolean description: Was the device supported or not? isEmulated: type: boolean description: Was the device determined to be real or emulated? isRooted: type: boolean description: Was the device determined to be rooted? reputation: type: string description: The reputation of the device vpnLikelihood: $ref: '#/components/schemas/Likelihood' proxyLikelihood: $ref: '#/components/schemas/Likelihood' botLikelihood: $ref: '#/components/schemas/Likelihood' Base-Individual: type: object allOf: - $ref: '#/components/schemas/Entity' - type: object properties: name: $ref: '#/components/schemas/Individual-Name' alternateNames: type: array items: $ref: '#/components/schemas/Individual-Name-Alternate' description: Other names that are legally registered or otherwise recorded, differing from the individual's primary English name (e.g., "李小龍"). Non-English names may be created as a conversion from the original format to complete the verification process. dateOfBirth: $ref: '#/components/schemas/Date-Of-Birth' alternateDatesOfBirth: type: array items: $ref: '#/components/schemas/Date-Of-Birth-Alternate' description: Other dates that are registered or otherwise recorded, differing from the individual's primary Gregorian date of birth (e.g., Islamic dates like "29 Jumada Al-Akhirah 1445"). Non-Gregorian date formats will be maintained; however, additional Gregorian dates of birth may be created as a conversion from the original format to complete the verification process. gender: $ref: '#/components/schemas/Gender' placeOfBirth: $ref: '#/components/schemas/Address-Place-Of-Birth' description: The address where the individual was born. nationality: type: string description: ISO-3166-1 alpha-3 code of the individual's legal membership or affiliation with a nation. example: AUS consents: type: array items: $ref: '#/components/schemas/Consent' description: List of consent types that have been given for this entity. Profile-ID: type: string description: Unique identifier of the Service Profile. Supplementary-Data-Activity-Result-Detail: type: object properties: activityId: $ref: '#/components/schemas/Activity-ID' evaluationId: $ref: '#/components/schemas/Evaluation-ID' activityResultId: $ref: '#/components/schemas/Activity-Result-ID' reference: $ref: '#/components/schemas/Result-Reference' indicators: type: array items: $ref: '#/components/schemas/Supplementary-Data-Activity-Result-Detail-Indicator' Data-URI-Base64: description: A Base64-encoded string or URI representing the data. oneOf: - type: object readOnly: true required: - uri properties: uri: type: string description: URI identifying the resource location. example: https://s3.amazonaws.com/dev/41963bc5feff322020137de233c3be0fac6/croppedFrontID/38d54232-b840-431d-b248-152345fe214.jpg - type: object required: - base64 properties: base64: type: string description: Base64-encoded string of the raw attachment data. example: ZG9jdW1lbnQgaW1hZ2UgZ29lcyBoZXJl Supplementary-Data-KYC-DoB-MatchStrengths: type: object properties: fullDateOfBirth: type: integer format: int32 minimum: 0 maximum: 100 year: type: integer format: int32 minimum: 0 maximum: 100 month: type: integer format: int32 minimum: 0 maximum: 100 day: type: integer format: int32 minimum: 0 maximum: 100 Service-Profile-Subscription: type: object properties: serviceProfileId: type: string description: The unique identifier of the service profile. status: type: string enum: - ENABLED - DISABLED description: Indicates whether the subscription is currently active and operational. type: $ref: '#/components/schemas/Subscription-Type' workflowName: type: string description: The name of the monitoring workflow executed when a monitoring alert occurs. workflowId: type: string description: The unique identifier of the monitoring workflow. enabledAt: type: string format: date-time description: The date and time when the subscription was most recently enabled. enabledRequestId: type: string description: The request identifier for the most recent enable action. enabledBy: type: string description: The user who most recently enabled the subscription. disabledAt: type: string format: date-time description: The date and time when the subscription was most recently disabled. disabledRequestId: type: string description: The request identifier for the most recent disable action. disabledBy: type: string description: The user who most recently disabled the subscription. Workflow-Step-Summary-ID-Matches: type: object properties: objectType: description: The type of object, such as curr_addr, curr_name, prev_name, alt_dob, or PASSPORT. type: string matchCount: description: Number of distinct matches for this match type. type: integer example: 1 matchSources: description: List of sources that matched. type: array items: type: string nonMatchSources: description: List of sources that did not match, if available from the service provider. type: array items: type: string isChecked: description: Indicates if an attempt was made to verify. type: boolean example: true isVerified: description: Indicates if there is at least one match. type: boolean example: true Document-ID: type: string format: uuid description: 'As documents are added to an entity, they are assigned a unique identifier to assist with modification and reference. To modify a document, include the documentId in an update request.' example: 92de15f64-5717-4562-b3fc-2c963f6665a7 Address-StatusEnum: type: string default: CURRENT enum: - CURRENT - PREVIOUS - FUTURE Workflow-Step-Summary-ID: type: object description: "ID match counts for each checked document, whether matched or not. The keys in this map are the document IDs. The match type in the value will be either \"gov_id\" or \"other_id\". The resulting structure would look like:\n\nstepData: {\n \"documentId\": {\n \"matchType\": \"gov_id\",\n \"matchCount\": 5,\n \"isVerified\": true\n },\n \"documentId\": {\n \"matchType\": \"other_id\",\n \"matchCount\": 5,\n \"isVerified\": true\n }\n}\n" required: - stepName additionalProperties: $ref: '#/components/schemas/Workflow-Step-Summary-ID-Matches' properties: matchTypes: description: "The match types that this overall count and result refer to. Currently, one or more of:\n- gov_id\n- other_id\n\nThese will be keys in a map whose values hold the results for the individual match types. The resulting structure would look like the following. Here, dob has zero matches and is not verified but it was checked, so other than the checked flag the value object is simply empty. A completely empty object would imply that match type was not checked.\n\n \"matchTypes\": {\n \"address\": {\n \"matchCount\": 1,\n \"matchSources\": [ \"au-elec-roll\" ],\n \"checked\": true,\n \"verified\": true\n },\n \"dob\": {\n \"checked\": true\n }\n }\n\nFor a one_plus KYC check, there will be two Workflow-Step-Summary-KYC-MatchRule-Matches records: one for 'name' and one for 'address, dob' (as in the sample above).\n" type: object additionalProperties: $ref: '#/components/schemas/Workflow-Step-Summary-KYC-MatchRule-Matches-MatchTypes' matchCount: description: 'Number of matches for this set of match types. This is the sum of the matchCounts in the matchTypes map. ' type: integer example: 2 matchCountRequired: description: 'Number of distinct matches required for this set of match types. ' type: integer example: 1 hasAllRequiredSourcesMatched: description: True if all required match sources (e.g., electoral roll) were matched. type: boolean example: true requiredSourcesMatched: description: List of required sources that were matched. type: array items: type: string requiredSourcesNotMatched: description: List of required sources that were not matched. type: array items: type: string isVerified: description: True if there are enough matches to meet the matching requirement. type: boolean example: false stepName: type: string Risk-Assessment: type: object required: - entityId - serviceProfileId - workflowId - workflowExecutionId properties: serviceProfileId: $ref: '#/components/schemas/Profile-ID' riskAssessmentId: $ref: '#/components/schemas/Risk-Assessment-ID' workflowId: type: string description: Unique identifier of the workflow. workflowExecutionId: type: string description: Unique identifier of the workflow execution. entityId: type: string description: Unique identifier of the entity being assessed. schemaVersion: type: integer description: Version of the risk assessment schema. createdAt: type: string format: date-time description: Timestamp when the risk assessment was created. updatedAt: type: string format: date-time description: Timestamp when the risk assessment was last updated. updatedBy: type: string description: Identifier of the user or system that updated this assessment. updatedRequestId: type: string description: Identifier of the request that updated this assessment. workflowRiskScore: type: number description: Risk score calculated for the workflow. workflowRiskLevel: $ref: '#/components/schemas/Risk-Level' description: Risk level of the workflow execution associated with this risk assessment. riskScore: type: number description: Risk score calculated for the entity. riskLevel: $ref: '#/components/schemas/Risk-Level' description: Risk level of the entity. isOutdated: type: boolean description: Indicates whether the assessment is out of date, either due to manual updates or changes to risk factors that were assessed. default: false riskFactors: type: array items: $ref: '#/components/schemas/Risk-Factor' readOnly: true description: List of risk factors considered in this assessment. Object-Type: description: The type of object being annotated. type: string enum: - ADDRESS - NAME - PHONE_NUMBER - EMAIL - DATE_OF_BIRTH - WEBSITE - SHAREHOLDER - OFFICIAL - UBO - REGISTRATION - SHAREHOLDING - SHARECAPITAL - DOCUMENT - DOCUMENT_ATTACHMENT - RESULT_PROCESS - RESULT_STEP - RESULT_WORKFLOW - SERVICE_PROFILE - AUDIT_EVENT - EXTERNAL_REFERENCE - RISK_ASSESSMENT - MATCHLIST Risk-Level: type: string enum: - UNKNOWN - LOW - MEDIUM - HIGH - UNACCEPTABLE description: "The risk level classification:\n - UNKNOWN: Risk level is not determined.\n - LOW: Low risk.\n - MEDIUM: Medium risk.\n - HIGH: High risk.\n - UNACCEPTABLE: Risk level is unacceptable.\n" Supplementary-Data-IDV-OCR-Comparison: type: object description: 'Result of an OCR and updated data comparison. This object represents the comparison between scanned data (via OCR) and updated or alternately supplied results. When selecting data for comparison, preference is given to the entity details that have been or will be sent to service providers for verification, rather than the updated data provided in the OCR scan. For the resultMap and mismatchMap keys, use the keys defined in the enum: SupplementaryDataIDVEnumDataOCRComparison. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-IDV-Base' - type: object properties: ocrResultId: type: string format: uuid description: 'The proId of the OCR data PRO used for this comparison. ' comparisonSource: $ref: '#/components/schemas/Supplementary-Data-IDV-OCR-Comparison-Enum-Comparison-Source' mismatchMap: $ref: '#/components/schemas/Supplementary-Data-IDV-ElementMap' description: 'Map of OCR mismatches between previously entered or expected values and the OCR result. Actual matches should be recorded in resultMap. ' nameId: type: string format: uuid description: 'The nameId of the name object used in the comparison. ' dobId: type: string format: uuid description: 'The dobId of the date of birth object used in the comparison. ' Workflow-Step-Summary: type: object oneOf: - $ref: '#/components/schemas/Workflow-Step-Summary-KYC' - $ref: '#/components/schemas/Workflow-Step-Summary-AML' - $ref: '#/components/schemas/Workflow-Step-Summary-ID' - $ref: '#/components/schemas/Workflow-Step-Summary-NameValidation' - $ref: '#/components/schemas/Workflow-Step-Summary-Visa' - $ref: '#/components/schemas/Workflow-Step-Summary-Start' - $ref: '#/components/schemas/Workflow-Step-Summary-Finish' - $ref: '#/components/schemas/Workflow-Step-Summary-Decision' - $ref: '#/components/schemas/Workflow-Step-Summary-Matchlist' - $ref: '#/components/schemas/Workflow-Step-Summary-Duplicate' - $ref: '#/components/schemas/Workflow-Step-Summary-Activity' - $ref: '#/components/schemas/Workflow-Step-Summary-Fraud' discriminator: propertyName: stepName mapping: KYC: '#/components/schemas/Workflow-Step-Summary-KYC' AML: '#/components/schemas/Workflow-Step-Summary-AML' ID: '#/components/schemas/Workflow-Step-Summary-ID' VISA: '#/components/schemas/Workflow-Step-Summary-Visa' NAME_VALIDATION: '#/components/schemas/Workflow-Step-Summary-NameValidation' START: '#/components/schemas/Workflow-Step-Summary-Start' FINISH: '#/components/schemas/Workflow-Step-Summary-Finish' DECISION: '#/components/schemas/Workflow-Step-Summary-Decision' MATCHLIST: '#/components/schemas/Workflow-Step-Summary-Matchlist' DUPLICATE: '#/components/schemas/Workflow-Step-Summary-Duplicate' ACTIVITY: '#/components/schemas/Workflow-Step-Summary-Activity' FRAUD: '#/components/schemas/Workflow-Step-Summary-Fraud' Individual-Relationships: type: object readOnly: true properties: duplicates: type: array description: 'List of duplicates for this individual. To determine which entity was marked as a duplicate, refer to the entity state of the relevant duplicate or reconcile using the process results. ' items: $ref: '#/components/schemas/Relationship' GenderEnum: type: string enum: - MALE - FEMALE - NON_BINARY - OTHER - UNSPECIFIED Workflow-Execution-ResultEnum: type: string description: "Outcome of this workflow execution. Possible results:\n - UNCHECKED: The workflow has not yet been run and has no result.\n - IN_PROGRESS: The workflow is currently running and awaiting completion.\n - REVIEW: The workflow produced results that require review. Check the risks and step results for more details.\n - PASS: The workflow successfully completed with a PASS recommendation.\n - FAIL: The workflow finished with a FAIL recommendation.\n - COMPLETE: The workflow has finished and the results are considered complete. PASS/FAIL is not required.\n - INCOMPLETE: The workflow has finished and the results are considered incomplete. PASS/FAIL is not required.\n - NEEDS_APPROVAL: The workflow requires an approval process. Once approved, re-run the workflow.\n - APPROVED: The workflow was approved, typically by an external source such as a human.\n - REJECTED: The workflow was rejected, typically by an external source such as a human.\n - BLOCKED: The workflow was blocked from completing. Manual review is required.\n - CLEAR: The workflow completed with no issues raised. Often used for ongoing monitoring workflows.\n - URGENT: The workflow completed with matters requiring urgent review. Often used for ongoing monitoring workflows that return sanctions or similarly critical items.\n - MONITOR: The workflow completed and further monitoring is required. Should be manually reviewed.\n" default: UNCHECKED enum: - UNCHECKED - IN_PROGRESS - REVIEW - PASS - FAIL - COMPLETE - INCOMPLETE - NEEDS_APPROVAL - APPROVED - REJECTED - BLOCKED - CLEAR - URGENT - MONITOR Process-Result-ClassEnum: type: string description: Provides additional clarity for the result class, especially for more generic element types like 'person'. enum: - KYC - ID - IDV - AML - FRAUDLIST - FRAUDCHECK - FRAUD - DEVICE - MOBILE - EMAIL - LOOKUP - CREATE - UPDATE - DELETE - KYB - DUPLICATE - BLOCKLIST - SUPPORTING_DOC - MATCHLIST - VISA - ACTIVITY readOnly: true Entity-Type: type: string enum: - INDIVIDUAL - ORGANIZATION - UNKNOWN description: The type of entity within Frankie. This can be "INDIVIDUAL", "ORGANIZATION", or "UNKNOWN". readOnly: true Process-Result-Manual-StatusEnum-Duplicate: type: string enum: - FALSE_POSITIVE - TRUE_POSITIVE_ACCEPT - TRUE_POSITIVE_REJECT description: 'Manual review status options for duplicate entity resolution. Used to indicate the outcome of a manual duplicate check between an existing entity (A) and an incoming entity (B): - FALSE_POSITIVE: Entities are not duplicates. Both Entity A and Entity B are distinct and should be retained as separate records. - TRUE_POSITIVE_ACCEPT: Entities are duplicates. Keep the incoming entity (Entity B) as the primary record and mark the existing entity (Entity A) as the duplicate. Use when the incoming record is more accurate or complete. - TRUE_POSITIVE_REJECT: Entities are duplicates. Keep the existing entity (Entity A) as the primary record and mark the incoming entity (Entity B) as the duplicate. Use when the existing record is more trusted or complete. ' Document-Supplementary-Data-Passport: type: object description: Supplementary information relevant to a national health id. allOf: - $ref: '#/components/schemas/Document-Supplementary-Data-Base' - type: object properties: homeCountryFullName: type: string description: The original name from the home country of passport. example: 张伟明 Result-Reference: type: object properties: name: type: string description: The source of the result (e.g. sardine) type: $ref: '#/components/schemas/Result-Reference-Type' reference: type: string description: "A link or reference to the source of the result. \nThe format will depend on the source and the reference type.\n" Document-Attachment-Retrieval-Status: type: string readOnly: true enum: - NORMAL - EXCLUDED - FAILED description: "The reason why the data in a response is missing.\n\n- \"NORMAL\": The data was retrieved and is included. If it is empty, then\n it was never provided or was provided empty.\n\n- \"EXCLUDED\": The retrieval request was not for 'full' data, or the object\n has been deleted, so the data is not included.\n\n- \"FAILED\": The data could not be retrieved from the secure document\n store.\n\nThe retrievalStatus enum will not usually be set in a request. If an\nattachment in a response has a 'FAILED' retrieval state, then\nthat object should not be sent back in a future update. It should\neither be omitted or the original data should be resent if it is available\nfrom another source. However, it is safe to send the object in an update\nwith the state received in a response. Any state other than 'NORMAL' (or\n'') will cause the blank data to be ignored, but other fields in the\nobject will be updated if needed." Comment: type: object properties: commentId: type: string description: Unique identifier for the comment. example: 55fc5d54-46f7-49c8-bf78-e07ec79cd6e7 readOnly: true text: type: string description: The text content of the comment. example: Update after speaking to customer over the phone directly. Address-TypeEnum: type: string default: OTHER enum: - OTHER - RESIDENTIAL - BUSINESS - POSTAL - REGISTERED_OFFICE - PLACE_OF_BUSINESS - OFFICIAL_CORRESPONDANCE - PLACE_OF_BIRTH - OFFICE_LOCALITY Supplementary-Data-IDV-Facial-Liveness: type: object description: 'Result of a facial liveness check, indicating how likely the facial photo or video is of a live person. For resultMap keys, use the keys found in the enum: SupplementaryDataIDVEnumDataFacialLiveness. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-IDV-Base' - type: object properties: comparedSelfieId: type: string format: uuid description: The document ID of the selfie that was compared. comparedSelfieAttachmentId: type: string format: uuid description: The attachment ID of the selfie that was compared. Supplementary-Data-Matchlist-Field: type: object description: 'Entity data that resulted in a match at the time of execution. ' required: - objectId - objectType properties: objectId: type: string description: Unique identifier of the matched object. objectType: $ref: '#/components/schemas/Object-Type' matchedAttributes: type: array items: $ref: '#/components/schemas/Supplementary-Data-Matchlist-Attribute' Matchlist-Entry-Base: type: object description: Basic details about a matchlist entry, excluding metadata. properties: entryId: type: string format: uuid readOnly: true description: Unique identifier for the matchlist entry. entityId: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 description: The entity ID from which the attributes of this entry are derived. This is optional and can be used to link the matchlist entry to an entity. entityType: $ref: '#/components/schemas/Entity-Type' description: The type of entity from which the attributes of this entry are derived. This is optional and can be used to link the matchlist entry to an entity. reference: type: string description: Optional reference describing the context of this entry. example: CERT-BAD-ACTOR-1234-5678 reasons: description: The reasons for the matchlist entry. These codes will be translated to configured description strings. type: array items: $ref: '#/components/schemas/Matchlist-Entry-Reason-Code' Supplementary-Data-Duplicate-MatchedRule: type: object description: 'Provides details about the rule that was matched to classify the object as a duplicate. ' properties: name: type: string description: The name of the matched rule. strength: type: string description: "The strength of the match. This is free-form, but it is recommended to use standard values for clarity, such as:\n - \"VERY_LOW\"\n - \"LOW\"\n - \"MEDIUM\"\n - \"HIGH\"\n - \"VERY_HIGH\"\n" Workflow-Issue-Severity: type: string enum: - INFO - REVIEW - BLOCK - WARNING - CRITICAL - ERROR description: "The severity level of the issue. Possible values:\n - INFO: Informational only.\n - REVIEW: Requires review.\n - BLOCK: Blocks further processing.\n - WARNING: Warning, but not blocking.\n - CRITICAL: Critical issue.\n - ERROR: Error encountered.\n" Supplementary-Data-KYC-Address: type: object description: 'Defines the matching levels for each address element, where available. Provides a match strength score ranging from 0 (no match) to 100 (full match). ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: matchStrengths: $ref: '#/components/schemas/Supplementary-Data-KYC-Address-MatchStrengths' fuzziness: $ref: '#/components/schemas/FuzzinessLevel' wasNameMatchStrongEnough: description: 'Indicates whether there was a sufficiently strong name match at the time this was checked, even if the address was a perfect match. This is only an indicator at the time the PRO was created. Subsequent checks that reuse this result may interpret this differently. ' type: boolean Workflow-Step-ResultEnum: description: "Overall result of the workflow step.\n\nDepending on the context of the step and its purpose, it will return a different result code:\n - UNCHECKED: Step was not attempted. There will be an error or suitable message indicating why, most likely due to a failure in a previous step.\n - SKIPPED: Step was skipped as it was not required to run, or had previously been run and the existing results are sufficient.\n - MISSING_DATA: Step requires additional data before it can complete. Details should be in the error objects.\n - PASS: The step completed and requested goals were met. Usually manually applied or where the result is binary.\n - FAIL: The step completed but the requested goals were not met. Usually manually applied or where the result is binary.\n - COMPLETE: The step has finished successfully and there is not necessarily a pass/fail scenario, just that the process needed to be done.\n - INCOMPLETE: The step was unable to finish successfully and there is not necessarily a pass/fail scenario, just that the process needed to be done and was not.\n - MATCH: The results of this step produced a fully successful match against the requested source(s).\n - NO_MATCH: The results of this step produced no match against the requested source(s).\n - PARTIAL: The results of this step produced a partially successful match against the requested source(s).\n - CLEAR: The step involved checking against a list/source (generally negative in nature) and no match was found (a positive outcome).\n - HIT: The step involved checking against a list/source (generally negative in nature) and a match of some kind was found.\n - CLEARED: The step involved checking against a list/source (generally negative in nature) and, while there were previously found matches, these have been resolved.\n - EXPIRED: The data found in this step has expired in some way.\n - CLEAR_REVIEW: The step was cleared but requires review.\n - HIT_ACCEPTED: A hit was found and accepted.\n - HIT_REJECTED: A hit was found and rejected.\n - NOT_APPLICABLE: The step attempted to run, but it was determined to be unnecessary (e.g., checking for a visa when already a citizen).\n - ERROR: The step attempted to run, but there was an unrecoverable error and no useful result can be determined.\n" type: string enum: - UNCHECKED - SKIPPED - MISSING_DATA - PASS - FAIL - COMPLETE - INCOMPLETE - MATCH - NO_MATCH - PARTIAL - CLEAR - HIT - CLEARED - EXPIRED - CLEAR_REVIEW - HIT_ACCEPTED - HIT_REJECTED - NOT_APPLICABLE - ERROR Address-Place-Of-Birth: type: object required: - country description: The country or address where the individual was born. properties: addressId: type: string description: As addresses are added to an entity, they are assigned an ID to assist with tracking. example: 6ad15f64-5717-4562-b3fc-2c963f66abf9 readOnly: true sourceId: type: string readOnly: true description: The source from which specific information was sourced. This is a link to an informationSource object in the informationSources map. example: 1da65f64-5717-4562-b3fc-2c963f669fba longForm: type: string description: 'In some cases, the address will need to be supplied in "long form", such as when it is determined from a document scan, or is unparsable in some way. The service will attempt to convert it to its constituent parts where possible. WARNING: Use of longForm is not guaranteed to produce perfect results, due to the variety of potential formats. You have been warned. Failure to break down or disambiguate the address will result in an error.' example: 525 Kent Dr, Harlem NY 10037, USA unstructuredLongForm: type: string readOnly: true description: Raw, unformatted address as provided by the source. Not normalized or standardized. example: 3A/525 KENT DRIVE HARLEM NEW YORK 10036 USA unitNumber: type: string description: Unit/Apartment/Flat/Suite/etc. number example: 3A buildingName: type: string description: The name of the building, apartment block, condominium, etc. example: EQ Tower streetName: type: string description: 'The name of the street. This field should ideally contain only the street name, without the street number or street type. In some cases, especially when auto-populated by external services (e.g., Google), it may include additional address components. For best results, keep the street name separate from the street number and street type. See https://apidocs.frankiefinancial.com/docs/working-with-addresses for more details.' example: Kent streetNumber: type: string description: The number assigned to the property on the street. Typically a number, but can also be alphanumeric (e.g., 3A). example: '525' streetType: type: string description: The street type, such as Road, Street, Avenue, Circuit, etc. example: Dr neighborhood: type: string description: The neighborhood or suburb within the town or city. Use this only if you require both a suburb and a locality/town/city; otherwise, use the "locality" parameter. example: Harlem locality: type: string description: The locality, borough, town, village, or city. example: Manhattan district: type: string description: The district, region, county, province, or cantonment. example: New York County subdivision: type: string description: The ISO 3166-2 alphanumeric code of the administrative area/state/sub-division, minus the country code, e.g., VIC (Victoria) or TX (Texas). example: NY country: type: string description: 'The ISO 3166-1 alphanumeric three-letter code of the country, e.g., AUS, USA, IDR, KOR, etc. For more details, refer to: https://en.wikipedia.org/wiki/ISO_3166-1' example: USA postalCode: type: string description: The postal, zip, or pin code of the address. example: '10037' Workflow-Step-Summary-NameValidation: type: object description: 'Provides summary details for the name validation step. ' required: - stepName properties: langCode: type: string description: Language code used for translation. nameMatchOrder: type: string description: 'Depending on the name to be translated and how it is presented, the native language and anglicized version ordering might be mixed up. The service will try various orderings to determine if a match can be made. The order codes represent the actual order that matched. Each letter combination represents *F*amily, *G*iven, and *O*ther names. For example, FGO means that the match was on Family, Given, and Other names, in that order. ' enum: - FGO - OFG - GOF - FOG - GFO - OGF - FG - FO - GF - OF stepName: type: string description: Name of the workflow step. Process-Result-Manual-StatusEnum-IDV: type: string enum: - CLEAR - REJECTED description: 'Any manual status set after the results have been reviewed. - CLEAR: When the result is determined to be clear and no further action is needed. - REJECTED: When the result is determined to be rejected and no further action is needed. ' Workflow-Step-Summary-Finish: type: object required: - stepName properties: workflowContextId: type: string format: uuid stepName: type: string Workflow-Step-Summary-KYC-MatchRule: type: object description: 'Provides the details of a KYC matching rule result. The details can be used to represent a rule that did match or did not match. By default, there will always be one matching rule record provided at the end of a KYC step. ' properties: ruleName: description: The name assigned to this rule. type: string default: default ruleOrder: description: The priority order of this matching rule. type: integer format: int32 minimum: 1 default: 1 ruleMatches: type: array description: The list of matches that comprise this rule. items: $ref: '#/components/schemas/Workflow-Step-Summary-KYC-MatchRule-Matches' Workflow-Issue: type: object required: - category - issue - severity properties: issueId: allOf: - $ref: '#/components/schemas/Issue-ID' readOnly: true category: $ref: '#/components/schemas/Workflow-Issue-Category' issue: $ref: '#/components/schemas/Workflow-Issue-Type' workflowExecutionId: type: string description: Identifier of the workflow execution in which this issue was generated. stepResultId: type: string description: Identifier of the step from which this issue originated, if applicable. isCleared: type: boolean description: Indicates if this specific issue has been manually flagged as addressed. createdBy: type: string description: User or system that created this issue. readOnly: true createdAt: type: string format: date-time description: The timestamp when the issue was created. readOnly: true updatedAt: type: string format: date-time description: The timestamp when the issue was last updated. readOnly: true updatedBy: type: string description: User or system that last updated this issue (e.g., System: or User:). readOnly: true updatedRequestId: type: string description: Identifier of the request that updated this issue. readOnly: true severity: $ref: '#/components/schemas/Workflow-Issue-Severity' Workflow-Execution-Steps: type: object properties: order: type: array items: type: string passed: type: array items: type: string failed: type: array items: type: string incomplete: type: array items: type: string notApplicable: type: array items: type: string Supplementary-Data-AML: type: object required: - serviceProvider description: 'Each AML match/hit generates a PRO, and this object describes the details of the matched individual or business. ' allOf: - $ref: '#/components/schemas/Supplementary-Data-Base' - type: object properties: serviceProvider: type: string description: 'The name of the service provider from which this matched record was retrieved. ' searchId: type: string description: 'The service provider''s search reference number, usually used to refer to an ongoing search. ' caseId: type: string description: 'If the service provider has case management facilities, this is their case identifier. May be the same as the search ID. ' referenceId: type: string description: 'An additional reference number provided by the service provider, or our own reference number. ' originalStepSearchLevel: type: string description: 'Indicates if this was a simple PEP or PEP media check that found this match. Used to determine if more information is needed when re-using existing results. ' groupingId: type: string description: 'Some matches can be grouped together as part of a collection of searches. This can be the searchId or a reference ID. ' reportUrl: type: string format: uri description: 'If the service provider supplies a pre-packaged report that can be downloaded independently, this is the URL to retrieve it. ' fuzziness: $ref: '#/components/schemas/FuzzinessLevel' matchData: $ref: '#/components/schemas/Supplementary-Data-AML-MatchData' aliases: type: array items: type: string description: Alternative names, aliases, "AKA"s, or names as spelled in other languages, etc. relatedParties: type: array items: $ref: '#/components/schemas/Supplementary-Data-AML-RelatedParties' referenceDocs: type: array items: $ref: '#/components/schemas/Supplementary-Data-AML-ReferenceDocs' notes: $ref: '#/components/schemas/Custom-Attributes' pepData: type: array items: $ref: '#/components/schemas/Supplementary-Data-AML-PEPData' sanctionData: type: array items: $ref: '#/components/schemas/Supplementary-Data-AML-SanctionsData' watchlistData: type: array items: $ref: '#/components/schemas/Supplementary-Data-AML-WatchlistData' mediaData: type: array items: $ref: '#/components/schemas/Supplementary-Data-AML-MediaData' parameters: entityId: name: entityId in: path schema: type: string description: Unique FrankieOne identifier for an entity required: true levelNoIdQuery: name: level in: query schema: type: string default: meta enum: - meta - base64 description: "Determines what level of detail to return in the response\n - meta: Return all metadata only, no links or base64 data\n - base64: Return all metadata and images as base64" X-Frankie-Username: name: X-Frankie-Username in: header description: Username provided by API caller required: false schema: type: string example: fred.flintstone@frankieone.com executionId: name: workflowExecutionId in: path schema: type: string description: Unique workflow execution identifier required: true query_filter_endedatafter: name: endedAtBefore in: query example: '2024-02-29T02:15:04Z' schema: type: string format: date-time description: Filter on the endedAt field, results returned are based on being before the value (inclusive) includeQuery: name: include in: query style: form explode: false schema: type: array items: type: string enum: - workflowDefinition default: [] description: Query parameter to include additional fields of fetch workflow query_filter_workflowresults: in: query name: workflowResults description: list of workflow execution result values to filter results on schema: type: array items: $ref: '#/components/schemas/Workflow-Execution-ResultEnum' X-Frankie-CustomerChildID: name: X-Frankie-CustomerChildID in: header required: false schema: type: string example: 87654321-4321-4321-4321-210987654321 description: Your Customer Child ID provided by FrankieOne sortFields: name: sortFields in: query style: form explode: false schema: type: array items: type: string description: 'List of fields that the Process Results will be filtered with Available values : createdAt, updatedAt' X-Frankie-Channel: name: X-Frankie-Channel in: header required: false schema: type: string description: 'Open string that can be used to define the "channel" the request comes in from. It can potentially be used in routing and risk calculations upon request. Default values that can be used are: api portal smartui Any alphanumeric string is supported though. Anything over 64 characters will be truncated.' query_filter_workflowexecutionstates: in: query name: workflowExecutionStates description: List of workflow execution state values to filter with schema: type: array items: $ref: '#/components/schemas/Workflow-Execution-StateEnum' page: in: query name: page example: 2 schema: type: integer description: The page number that you want to retrieve for the list query serviceName: name: serviceName in: path schema: type: string description: The unique name of the service profile required: true query_filter_endedatbefore: name: endedAtAfter in: query example: '2024-02-29T02:15:04Z' schema: type: string format: date-time description: Filter on the endedAt field, results returned are based on being before the value (inclusive) query_filter_startedatafter: name: startedAtAfter in: query example: '2024-02-29T02:15:04Z' schema: type: string format: date-time description: Filter on the startedAt field, results returned are based on being before the value (inclusive) query_filter_startedatbefore: name: startedAtBefore in: query example: '2024-02-29T02:15:04Z' schema: type: string format: date-time description: Filter on the startedAt field, results returned are based on being before the value (inclusive) levelQuery: name: level in: query schema: type: string default: meta enum: - id - meta - base64 description: "Determines what level of detail to return in the response\n - id: Return just an id\n - meta: Return all metadata only, no links or base64 data\n - base64: Return all metadata and data in base64 format" workflowName: name: workflowName in: path schema: type: string description: The unique name of the workflow required: true Api-Key: name: api_key in: header schema: type: string example: 245c765b124a098d09ef8765.... description: Your API key provided by FrankieOne required: true limit: in: query name: limit schema: type: integer minimum: 1 default: 20 example: 20 description: Limit the number of items that will be returned as part of the request serviceNameQuery: name: serviceName in: query schema: type: string description: The unique name of the service profile sort: in: query name: sort schema: type: string enum: - asc - desc description: Order of the sort fields will be sorted upon X-Frankie-Background: name: X-Frankie-Background schema: type: integer enum: - 0 - 1 description: 'If this header parameter is supplied and set to 1, then the request will not wait for the process to finish, and will return a 202 if there are no obvious errors in the input. The request will then run in the background and send a notification back to the customer. See our callback API for details on this. ' in: header required: false X-Frankie-CustomerID: name: X-Frankie-CustomerID in: header required: true schema: type: string example: 12345678-1234-1234-1234-123456789012 description: Your Customer ID provided by FrankieOne securitySchemes: Api-Key: type: apiKey in: header name: api_key description: '' jwt: type: http scheme: bearer bearerFormat: JWT