Skip to main content

Service Documentation CUSTOMER EXPOSED SERVICE: "Data Push"

To make use of any of the invocations contained within this information, as well as the provided APIs, the use of a ProjectName, UrlBase, and an ApiKey requested beforehand is required.

Important Contact Information:

  • For technical inquiries or assistance: soporte@ado-tech.com
  • For information about this API and other solutions in our catalog, please contact our financial area for evaluation at julian@ado-tech.com
  • For changes that require adjustments, you can contact the financial area for validation

Note: All access keys, endpoint URLs, and other access elements will only be provided after reaching a formal agreement between both entities.

Service Overview

This connectiondocumentation covers two types of servicesservices:

exposed
  1. Client-Exposed Services (implemented by the clientclient): helps us ensureServices that wheneverthe aclient transactionmust isimplement completed,to wereceive webhook notifications and handle authentication
  2. ADO Services (provided by ADO): Services that clients can pushcall theto retrieve validation data towith yourimages
  3. end,
allowing

Client-Exposed you to maintain this information on your side.

Services

To enable ADO to perform push operations on the database, theThe client must expose a RESTful web service utilizing the OAuth2 authentication method.method Thisto serviceenable shouldADO exposeto perform push operations on the followingdatabase. methods:These services include token generation and webhook data reception.

ADO Services

TokenADO Serviceprovides validation services that clients can call to retrieve complete transaction data including images when requested.

Key Differences

  • Webhook (Client-Exposed): Receives transaction notifications without images
  • Validation Service (ADO): Returns complete transaction data with images when requested

Client-Exposed Services

Token Service (Client Implementation Required)

Description: This service issuesmust be implemented by the client to issue an OAuth2 authentication token to authorize subsequent requests to the database push service.

  • HTTP Method: POST


  • Input Parameters:Endpoint:
      /api/token

    • Request Parameters

      (String):
    • (String):
    • (String):
    • Response:
    • ParameterTypeRequiredDescription
      grant_type String YesType of HTTP authentication.authentication
      username String YesUsername for token retrieval.retrieval
      password String YesCorresponding password for token retrieval.retrieval

        Response
      • Parameters
      • (String):
      • (String):
      • (Int):
      • (String):
      • (String):
        ParameterTypeDescription
        access_token String Issued access token.token
        token_type String Generated token type.type
        expires_in Integer Token expiration time in minutes.minutes
        .issued String Token issuance date and time.time
        .expires String Token expiration date and time.time

        HttpHTTP consumptionRequest Example:Example

        curl -X POST http://localhost:62859/api/token \
        -H "Content-Type: application/x-www-form-urlencoded" \
        -d "grant_type=password&username=admin&password=contraseña"

        Request BodyResponse Example

         

        {
          "access_token": "laK8SdjrKUAN7ja4SicUS-mL8eNWW74OTU2ZmSzjABLCGUgZknEifQkNtd5F20pBQiWvDpVwda9Bf31hB-mnzJLWmuKYY1sygHT37RQGI3Ym1HkLHwduutHwze2m9ZSBWCSV9NgOjO5Zd0Rcl9eexjFOS7cR6lOIZxxu31rLI_mHMbgtdSMAG-gToiHkgeXw6zbYjVaO1IzKMDjczyLZuvlYOfKNiJeh-3XbfjRxUy0",
          "token_type": "bearer",
          "expires_in": 59,
          ".issued": "Mon, 27 May 2024 20:38:24 GMT",
          ".expires": "Mon, 27 May 2024 20:39:24 GMT"
        }

        Database Push Service - Webhook (Client Implementation Required)

        SERVICE PUSH DATABASE

        Push to Database

        • Description: This service receivesmust abe listimplemented ofby documentsthe client to bereceive signedtransaction anddata storesvia themwebhook innotifications. theNote: database.
        • This
        • webhook does not contain images.

          HTTP Method: POST


        • Input Parameters:Endpoint:
            /api/Integration/Documents

          • Request Parameters

            (JSON):
          • (String):
          • Response:
          • ParameterTypeRequiredDescription
            JsonTransaction JSON YesJSON object containing transaction information in progress.progress
            Authorization String YesAuthentication token (in request header).

              Response
            • Codes
            • CodeDescription
              200: Process completed successfully.successfully
              401: Authorization failure.failure
              500: Internal server error.error

              HttpHTTP consumptionRequest Example:Example

              curl -X POST http://localhost:62859/api/Integration/Documents \
              -H "Authorization: Bearer {token}" \
              -H "Content-Type: application/json" \
              -d '{
                "Uid":"d3a0bc78a0c344c48f1951a9e181c6b2",
                "StartingDate":"2024-05-05T19:43:31.968755-05:00",
                "CreationDate":"2024-05-05T19:43:28.0930662-05:00",
                "CreationIP":"127.0.0.1",
                "DocumentType":1,
                "IdNumber":"1193539722",
                "FirstName":"ROGER",
                "SecondName":"JAVIER",
                "FirstSurname":"DE AVILA",
                "SecondSurname":"ARIAS",
                "Gender":"M",
                "BirthDate":"1990-05-03T00:00:00",
                "PlaceBirth":"BOGOTÁ D.C. (BOGOTÁ D.C.)",
                "TransactionType":1,
                "TransactionTypeName":"Enroll",
                "IssueDate":"2008-05-08T00:00:00",
                "AdoProjectId":"126",
                "TransactionId":"8676",
                "ProductId":"1",
                "ComparationFacesSuccesful":false,
                "FaceFound":false,
                "FaceDocumentFrontFound":false,
                "BarcodeFound":false,
                "ResultComparationFaces":0.0,
                "ComparationFacesAproved":false,
                "Extras":{
                "IdState":"8676",
                "StateName":"Proceso satisfactorio"
                },
                "Scores":[
                {
                "Id":8676,
                "UserName":"Rest",
                "StateName":"Proceso satisfactorio",
                "StartingDate":"2020-08-05T19:43:31.968755-05:00",
                "Observation":"Calificado automáticamente - Rest_Close"
                }
                ]
              }'

              Validation Service (ADO Provided)

              Get Validation Data

              Description: This service is provided by ADO and allows clients to retrieve complete validation information for a specific transaction. Note: This service returns images when requested (returnImages=true).

              HTTP Method: GET
              Endpoint: /api/Example/Validation/Example

              Query Parameters

              ParameterTypeRequiredDescription
              returnImagesBooleanNoWhether to return images in response
              returnDocumentsBooleanNoWhether to return signed documents
              returnVideoLivenessBooleanNoWhether to return video liveness data

              Headers

              HeaderTypeRequiredDescription
              acceptStringYesResponse content type (application/json)
              apiKeyStringYesAPI key for authentication

              HTTP Request Example

              curl -X GET "https://adocolombia.ado-tech.com/Example/api/Example/Validation/Example?returnImages=true" \
              -H "accept: application/json" \
              -H "apiKey: Example" \
              -H "returnDocuments: false" \
              -H "returnVideoLiveness: true"
              

              Complete Response Structure

              Main Response Fields

              FieldTypeDescription
              UidStringUnique identifier for the transaction
              StartingDateDateTimeDate and time when the process started
              CreationDateDateTimeDate and time when the record was created
              CreationIPStringIP address from which the transaction was initiated
              DocumentTypeIntegerType of document (1 = ID Card, etc.)
              IdNumberStringDocument identification number
              FirstNameStringPerson's first name
              SecondNameStringPerson's second name
              FirstSurnameStringPerson's first surname
              SecondSurnameStringPerson's second surname
              GenderStringPerson's gender (M/F)
              BirthDateDateTimePerson's birth date
              StreetStringStreet address
              CedulateConditionStringID card condition
              SpouseStringSpouse information
              HomeStringHome address
              MaritalStatusStringMarital status
              DateOfIdentificationDateTimeDate of identification
              DateOfDeathDateTimeDate of death (if applicable)
              MarriageDateDateTimeMarriage date
              InstructionStringSpecial instructions
              PlaceBirthStringPlace of birth
              NationalityStringNationality
              MotherNameStringMother's name
              FatherNameStringFather's name
              HouseNumberStringHouse number
              ProfessionStringProfession
              ExpeditionCityStringCity where document was issued
              ExpeditionDepartmentStringDepartment where document was issued
              BirthCityStringCity of birth
              BirthDepartmentStringDepartment of birth
              TransactionTypeIntegerType of transaction (1 = Enroll)
              TransactionTypeNameStringName of transaction type
              IssueDateDateTimeDate when document was issued
              BarcodeTextStringBarcode text from document
              OcrTextSideOneStringOCR text from side one
              OcrTextSideTwoStringOCR text from side two
              SideOneWrongAttemptsIntegerNumber of wrong attempts on side one
              SideTwoWrongAttemptsIntegerNumber of wrong attempts on side two
              FoundOnAdoAlertBooleanWhether found on ADO alert list
              AdoProjectIdStringADO project identifier
              TransactionIdStringTransaction identifier
              ProductIdStringProduct identifier
              ComparationFacesSuccesfulBooleanWhether face comparison was successful
              FaceFoundBooleanWhether face was found
              FaceDocumentFrontFoundBooleanWhether face was found on document front
              BarcodeFoundBooleanWhether barcode was found
              ResultComparationFacesFloatResult of face comparison
              ResultCompareDocumentFacesFloatResult of document face comparison
              ComparationFacesAprovedBooleanWhether face comparison was approved
              ThresholdCompareDocumentFacesFloatThreshold for document face comparison
              CompareFacesDocumentResultStringResult of face document comparison
              NumberPhoneStringPhone number
              CodFingerprintStringFingerprint code
              ResultQRCodeStringQR code result
              DactilarCodeStringDactyloscopic code
              ReponseControlListStringControl list response
              LatitudeStringGPS latitude coordinate
              LongitudeStringGPS longitude coordinate
              SessionIdStringSession identifier
              CustomerIdFromClientStringCustomer ID from client
              ProcessIdStringProcess identifier
              DocumentTypeFromClientIntegerDocument type from client
              IdNumberFromClientStringID number from client
              NotEnrolledForComparisonWithClientDataBooleanWhether not enrolled for comparison
              ExpirationDateDateTimeExpiration date

              Extras Object Fields

              FieldTypeDescription
              IdStateStringState identifier
              StateNameStringState name

              Images Array Fields

              FieldTypeDescription
              IdIntegerImage identifier
              ImageTypeIdIntegerType of image identifier
              ImageTypeNameStringType of image name
              ImageStringBase64 encoded image data
              DownloadCodeStringDownload code for image

              Image Types

              ImageTypeIdImageTypeNameDescription
              1Documento de identidad cara 1ID document side 1
              2Documento de identidad cara 2ID document side 2
              3Fotografía del clienteClient photograph
              12Fotografía facial del documentoDocument facial photograph
              13Fotografía firma del documentoDocument signature photograph
              17Recorte Documento de identidad cara 1ID document side 1 crop
              18Recorte Documento de identidad cara 2ID document side 2 crop
              20Video de LivenessLiveness video

              SignedDocuments Array Fields

              FieldTypeDescription
              (Array structure depends on signed document type)VariousSigned document information

              Scores Array Fields

              FieldTypeDescription
              IdIntegerScore identifier
              UserNameStringUsername who scored
              StateNameStringState name
              CausalRejectionNameStringReason for rejection
              StartingDateDateTimeDate when scoring started
              ObservationStringObservation notes
              ObservationFromListStringObservation from predefined list

              Response_ANI Object Fields

              FieldTypeDescription
              NiupStringNational identification number
              FirstSurnameStringFirst surname
              ParticleStringParticle (connecting word)
              SecondSurnameStringSecond surname
              FirstNameStringFirst name
              SecondNameStringSecond name
              ExpeditionMunicipalityStringMunicipality where document was issued
              ExpeditionDepartmentStringDepartment where document was issued
              ExpeditionDateStringDate when document was issued
              CedulaStateStringID card state code
              CedulaStateDescriptionStringID card state description

              Parameters Object Fields

              FieldTypeDescription
              (Structure depends on specific parameters)VariousAdditional parameters

              StateSignatureDocument Object Fields

              FieldTypeDescription
              (Structure depends on signature state)VariousSignature document state information

              Error Handling

              Common Error Responses

              HTTP StatusDescriptionResponse Format
              400Bad Request{"error": "Invalid request parameters"}
              401Unauthorized{"error": "Invalid or expired token"}
              404Not Found{"error": "Resource not found"}
              500Internal Server Error{"error": "Internal server error"}