Skip to content
Last updated

In External mode VideoID, digital evidence is collected on your side and uploaded to the One-Shot API. You create a VideoID request, then upload evidences (data + images + OCR + security checks) and the video file. When all evidence is uploaded, the request status becomes VIDEOREVIEW. An RAO approves the request; then the flow continues as in eIDAS VideoID (upload documents, contract, OTP, sign, retrieve).

Partial upload sets status to VIDEOINCOMPLETE; upload failure can set VIDEOERROR.

Steps

  1. Create a new VideoID signature request Call Create Videoid (POST /oneshot/api/v1/videoid) with JSON: mobile_phone_number, email, registration_authority, profile (e.g. PFnubeQAFCiudadano). Response returns videoid_link (or similar id) and request_pk. Request is in VIDEOPENDING.

  2. Upload data and video

    • Evidences: Upload Videoid Evidences (POST /oneshot/api/v1/videoid/{videoid_pk}/evidences) with JSON body containing:
      • acceptance: e.g. terms and conditions acceptance, IP, user-agent, URLs, date.
      • videoid_data: images (e.g. document_front, document_rear, document_photo, document_owner as base64), ocr_data (given_name, surname_1, surname_2, mobile_phone_number, email, serial_number, id_document_type, id_document_country, etc.), security_checks (e.g. otp_validation, documents_match, liveliness), similarity_level.
    • Video: Upload Videoid Video (POST /oneshot/api/v1/videoid/{videoid_pk}/video) with multipart/form-data and video=@sample_video.mp4. When all required evidence and video are uploaded, status becomes VIDEOREVIEW. To retrieve the uploaded video, use Download Videoid Video (see API reference).
  3. Request approval Call Approve Videoid (or the approve endpoint indicated in the API for this flow) with RAO credentials or token. Status becomes ENROLLREADY. To reject, use Refuse Videoid.

  4. Upload documentsUpload Document (POST /oneshot/api/v1/document/{request_pk}) with file(s).

  5. Retrieve service contractGet Request Contract (GET /oneshot/api/v1/contract/{request_pk}).

  6. Generate OTP (Uanataca SMS only)Generate OTP (POST /oneshot/api/v1/otp/{request_pk}).

  7. Sign the documentSign (POST /oneshot/api/v1/sign/{request_pk}) with secret or ext_unlock_type/ext_unlock_value.

  8. Retrieve signed documentGet Document (GET /oneshot/api/v1/document/{request_pk}/signed/{document_uid}).

  9. Delete documents from the OptimizerDelete Document (DELETE /oneshot/api/v1/document/{request_pk}/{document_uid}). Back up any file you need before deleting.

Data objects in detail

  • acceptance: Client acceptance parameters (terms, privacy policy, IP, URL, user-agent, date). Customizable JSON.
  • videoid_data.images: Pictures of the ID document and face selfie (base64).
  • videoid_data.ocr_data: Text extracted from the ID (OCR).
  • videoid_data.security_checks: Validation flags (e.g. underage, match, liveness).
  • videoid_data.similarity_level: Similarity between document photo and selfie (e.g. 0–100 or "high").

See the API reference for the exact field names and formats.