> ## Documentation Index
> Fetch the complete documentation index at: https://docs.frankieone.com/llms.txt
> Use this file to discover all available pages before exploring further.

# (Re)retrieve Response Result.

> If you've received a notification that you previously backgrounded transaction has completed, or you wish to re-retrive a result from an earlier transaction, then you can simply request the result from our encrypted cache

The response will return the original HTTP code, along with the payload that would have been returned in the original request. The data can be re-retrieved for a maximum of 3 days.




## OpenAPI

````yaml GET /retrieve/response/{requestId}
openapi: 3.0.0
info:
  description: >
    ------  

    This API allows developers to integrate the Frankie Financial Compliance
    Utility into their applications. The API allows:
      - Checking name, address, date of birth against national databases
      - Validating Australian driver's licences, passports, medicare, visas and other Australian national ID documents
      - Validating Australian electricity bills
      - Validating NZ driver's licences
      - Validating Chinese bank cards and national ID card
      - Validating International passports and national ID documents
      - PEP, Sanctions, Watchlist and adverse media checking
      - Australian visa checks 
      - Fraud list and fraud background checks
      - ID validation and selfie check comparisons.
      
    ------  
     
    KYB specific services

      - Query organisation ownership
      - Perform KYC & AML checks on shareholders, beneficial owners and office bearers.
      - Query credit score and credit reports
      - International company searches
      - International company profiles
      
    ------  

    The full version of this documentation along with supplemental articles can
    be found here:
      - https://docs.frankieone.com/

    ------

    Sandbox base URL is:
      - https://api.uat.frankie.one/compliance/v1.2
      
      - All calls are the same as production, only with test data. You can download the latest test data here: https://docs.frankieone.com/docs/test-data

      - Full Swagger definition, along with test data for playing in the sandbox can be obtained once initial commercial discussions have commenced.

      - Production and optional UAT access will be opened up only to those with a signed commercial contract.
      
    ------  

    Contact us at hello@frankiefinancial.com to speak with a sales rep about
    issuing a Customer ID and Sandbox api key.
  title: Frankie Financial API
  contact:
    email: help@frankieone.com
  version: 1.15.3
servers:
  - url: https://api.uat.frankie.one/compliance/v1.2
security:
  - api_key: []
tags:
  - description: >-
      Service status functions you can use to make sure things are up and
      running.
    name: Status
  - description: Operations on specific ID documents, specific to an entity (people).
    name: Document
  - description: Operations on specific entities (people / companies / etc)
    name: Entity
  - description: Operations on entities that are set to type ORGANISATION
    name: Business
  - description: >-
      These are callback/webhook functions. If you've requested a callback, this
      will be what is sent to you. You do not need to implement these as a
      client, but you do need to be able to accept them as a server.
    name: Push Notification
  - description: Functions used for retrieving past results
    name: Retrieve
  - description: Operations on entities to set specific flags and states.
    name: Flag
paths:
  /retrieve/response/{requestId}:
    get:
      tags:
        - Retrieve
      summary: (Re)retrieve Response Result.
      description: >
        If you've received a notification that you previously backgrounded
        transaction has completed, or you wish to re-retrive a result from an
        earlier transaction, then you can simply request the result from our
        encrypted cache


        The response will return the original HTTP code, along with the payload
        that would have been returned in the original request. The data can be
        re-retrieved for a maximum of 3 days.
      operationId: RetrieveResult
      parameters:
        - description: >
            Customer ID issued by Frankie Financial. This will never change.
            Your API key, which is mapped to this identity, will change over
            time.
          name: X-Frankie-CustomerID
          in: header
          required: true
          schema:
            type: string
            format: uuid
        - description: >
            If, as a Frankie Customer, you are acting on behalf of your own
            customers, then you can populate this field with a Frankie-assigned
            ID.


            Note: If using a CustomerChildID, you will also need a separate
            api_key for each child.


            Any documents, checks, entities that are created when this field has
            been populated will now be tied to this CustomerID + CustomerChildID
            combination. Just as Customers cannot see data created by other
            Customers, so too a Customer's Children will not be able to see each
            other's data.


            A Customer can see the documents/entities and checks of all their
            Children.
          name: X-Frankie-CustomerChildID
          in: header
          schema:
            type: string
            format: uuid
        - description: >
            This will be the same RequestId that was sent in the 202 acceptance
            response.
          name: requestId
          in: path
          required: true
          schema:
            type: string
            format: string
        - description: >
            Specifies the type of the payload field in the retrieved response.
            Default is 'string'.
          name: payload
          in: query
          schema:
            type: string
            enum:
              - string
              - object
      responses:
        '200':
          description: >-
            The request was valid and able to be processed in some fashion.
            Results may or may not be successful, but it was completed as far as
            practical with no actual errors.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RetrievedResponseObject'
        '400':
          description: >-
            Bad request. One or more request fields is either missing or
            incorrect. Details are in the error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorObject'
        '401':
          description: >
            The request has failed an authorisation check. This can happen for a
            variety of reasons, such as an invalid or expired API key, or
            invalid Customer/CustomerChildIDs. 

            * NOTE: This does not include attempts to read/write data you don't
            have access to - that's a 404 error (as we don't want to leak
            information through guessing)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorObject'
        '404':
          description: >-
            Cannot return response. In the case of a query, or reference to a
            specific entity/check/etc, it means that the requested item was not
            found, or you don't have access to it. Please check your query
            before trying again.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorObject'
        '500':
          description: Unexpected error. Something went wrong during the checking process.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorObject'
components:
  schemas:
    RetrievedResponseObject:
      description: >
        When sent a notification or alert, you'll call the
        /retrive/response/{requestId} function


        This will return the original response
      type: object
      properties:
        origHTTPstatus:
          description: >
            This will be the HTTP response code that was returned originally
            (200, 404, etc). 


            In the case where you're requesting the result of a callback
            (previously backgrounded call), then this is the response that would
            have been sent, had you waited for the call to finish.
          type: integer
        payload:
          description: >
            This is a placeholder field. It will actually be a JSON object that
            is the payload that would have been returned (or was returned) in
            the original request. You'll need to process this as if it were the
            original response, and act accordingly.
          type: object
          additionalProperties: true
    ErrorObject:
      type: object
      required:
        - requestId
        - errorCode
        - errorMsg
      properties:
        commit:
          description: Server version indication
          type: string
          example: 2af478ed
        errorCode:
          description: Frankie error code
          type: string
          example: CORE-5990
        errorMsg:
          description: Will describe the error
          type: string
          example: Everything went kaflooey. Stay clam.
        httpStatusCode:
          description: |
            Deprecated:
            HTTP status code. Same as that which is passed back in the header.
          type: integer
          example: 501
        issues:
          type: array
          items:
            $ref: '#/components/schemas/ErrorObjectIssues'
          x-omitempty: true
        requestId:
          $ref: '#/components/schemas/RequestIDObject'
      x-go-type:
        import:
          alias: models_common
          package: bitbucket.org/ff_common/models/common
        type: ErrorObject
    ErrorObjectIssues:
      type: object
      required:
        - issueLocation
      properties:
        issue:
          description: Description of the problem
          type: string
          example: Invalid format. Must be YYYY-MM-DD
        issueLocation:
          description: Will describe the field or data location of the issue
          type: string
          example: dateOfBirth
      x-go-type:
        import:
          alias: models_common
          package: bitbucket.org/ff_common/models/common
        type: ErrorObjectIssues
    RequestIDObject:
      description: >
        Unique identifier for every request. Can be used for tracking down
        answers with technical support. 


        Uses the ULID format (a time-based, sortable UUID)


        Note: this will be different for every request.
      type: string
      format: ulid
      x-go-type:
        import:
          alias: models_common
          package: bitbucket.org/ff_common/models/common
        type: RequestIDObject
      example: 01BFJA617JMJXEW6G7TDDXNSHX
  securitySchemes:
    api_key:
      description: API key issued by Frankie Financial. This will rotate regularly.
      type: apiKey
      name: api_key
      in: header

````