## eIDAS VideoID workflow overview In the **eIDAS VideoID** workflow, the user completes video identification on a **Uanataca VideoID** link. The request starts in `VIDEOPENDING`; when the user finishes the video ID, the status moves to `VIDEOREVIEW`. An RAO then approves the request (status becomes `ENROLLREADY`). After that, you upload documents, retrieve the service contract, generate OTP (if using Uanataca SMS), sign, and retrieve signed documents. Implementing a **webhook** is recommended so your application is notified when the status changes from VIDEOPENDING to VIDEOREVIEW. See [Webhook configuration](/products/namirialpkiaas/one-shot/enterprise-documentation/developer-documentation/callbacks/webhooks). ## Steps 1. **Create a new VideoID signature request** Call [Create Videoid](/products/namirialpkiaas/one-shot/openapi#operation/call_create_videoid_api_v1_videoid_post) (`POST /oneshot/api/v1/videoid`) with JSON body: `mobile_phone_number`, `email`, `registration_authority`, `profile`, `billing_username`, `billing_password`. Response includes `videoid_link`, `videoid_pk`, and `request_pk`. The request is in `VIDEOPENDING` status. Redirect the user to `videoid_link` to complete video identification. 2. **Request approval** When video ID is complete, status becomes `VIDEOREVIEW`. Call [Approve Videoid](/products/namirialpkiaas/one-shot/openapi#operation/call_approve_videoid_api_v1_videoid__videoid_pk__approve_post) (`POST /oneshot/api/v1/videoid/{videoid_pk}/approve`) with RAO credentials (username/password/pin and `rao`) or with `token` and `rao`. In 1-step mode, this performs both validation and approval. Status becomes `ENROLLREADY`. To reject, use [Refuse Videoid](/products/namirialpkiaas/one-shot/openapi#operation/call_refuse_videoid_api_v1_videoid__videoid_pk__refuse_post) (see API reference). 3. **Upload documents** — [Upload Document](/products/namirialpkiaas/one-shot/openapi#operation/call_upload_document_api_v1_document__request_pk__post) (`POST /oneshot/api/v1/document/{request_pk}`) with `file=@doc.pdf` (or multiple files). Response returns document `uid`s. 4. **Retrieve service contract** — [Get Request Contract](/products/namirialpkiaas/one-shot/openapi#operation/call_get_request_contract_api_v1_contract__request_pk__get) (`GET /oneshot/api/v1/contract/{request_pk}`) (binary PDF). 5. **Generate OTP (Uanataca SMS only)** — [Generate OTP](/products/namirialpkiaas/one-shot/openapi#operation/call_generate_otp_api_v1_otp__request_pk__post) (`POST /oneshot/api/v1/otp/{request_pk}`). 6. **Sign the document** — [Sign](/products/namirialpkiaas/one-shot/openapi#operation/call_sign_api_v1_sign__request_pk__post) (`POST /oneshot/api/v1/sign/{request_pk}`) with JSON e.g. `{"secret": "123456"}` or with `ext_unlock_type` and `ext_unlock_value` for other auth. 7. **Retrieve signed document** — [Get Document](/products/namirialpkiaas/one-shot/openapi#operation/call_get_document_api_v1_document__request_pk___document_uid__get) (`GET /oneshot/api/v1/document/{request_pk}/signed/{document_uid}`) (binary PDF). 8. **Delete documents from the Optimizer** — [Delete Document](/products/namirialpkiaas/one-shot/openapi#operation/call_delete_document_api_v1_document__request_pk___document_uid__delete) (`DELETE /oneshot/api/v1/document/{request_pk}/{document_uid}`). Back up files you need before deleting. If the process fails or is incomplete, the request may move to `VIDEOINCOMPLETE` or `VIDEOERROR`. Use [Update Request](/products/namirialpkiaas/one-shot/openapi#operation/call_update_request_api_v1_request__request_pk__put) or [Get Request](/products/namirialpkiaas/one-shot/openapi#operation/call_get_request_api_v1_request__request_pk__get) if needed. ## Related documentation - [Workflows overview](/products/namirialpkiaas/one-shot/enterprise-documentation/products-and-modules/workflows/overview) - [VideoID External mode](/products/namirialpkiaas/one-shot/enterprise-documentation/products-and-modules/workflows/videoid-external) — When you upload evidence and video yourself - [Webhooks](/products/namirialpkiaas/one-shot/enterprise-documentation/developer-documentation/callbacks/webhooks) - [API reference](/products/namirialpkiaas/one-shot/openapi)