---
title: Dapatkan Proses
description: Ambil status dan hasil terkini dari sebuah proses verifikasi.
canonical: https://developer.unico.io/id/dual-api/developers/api-reference/web-sdk/get-process
locale: id
generated_by: markdown-export
---

- [/id/](/id/)
- [Referensi API](/id/dual-api/developers/api-reference/)
- [Web & Native](/id/dual-api/developers/api-reference/web-sdk/)
- Dapatkan Proses

**Di halaman iniDapatkan ProsesGETAmbil proses yang sudah ada berdasarkan identifier-nya. Sesuai kontrak API, hasil sudah dikembalikan secara sinkron saat proses dibuat — gunakan endpoint ini untuk kueri ulang, audit, dan dukungan.

peringatanSebelum mengambil proses, tinjau konfigurasi webhook dan strategi fallback kami — [klik di sini](/id/developers/webhooks-and-events/setup).
### Endpoint​

LingkunganURL**Production**`GET https://api.idcloud.unico.app/client/v1/process/{processId}`**Sandbox**`GET https://api.idcloud.uat.unico.app/client/v1/process/{processId}`
### Permintaan​

Headers
HeaderNilai`Authorization``Bearer <access_token>`
Parameter path
ParameterTipeWajibDeskripsi`processId`string (UUID)yaIdentifier proses yang dikembalikan oleh [Create Process](/id/dual-api/developers/api-reference/web-sdk/post-process).
### Contoh​

cURLNode.js```
curl -X GET https://api.idcloud.unico.app/client/v1/process/$PROCESS_ID \  -H "Authorization: Bearer $TOKEN"
```

```
import fetch from 'node-fetch';const res = await fetch(  `https://api.idcloud.unico.app/client/v1/process/${processId}`,  { headers: { Authorization: `Bearer ${accessToken}` } });const { process: proc } = await res.json();
```

### Respons​

200 OK
```
{  "process": {    "id": "226fd950-4b80-4da6-a476-ba9d397ddc91",    "flow": "id_r2",    "callbackUri": "/",    "userRedirectUrl": "https://cadastro.uat.unico.app/flow?collect-data=true&dynamic-wrapper=true&id=226fd950-4b80-4da6-a476-ba9d397ddc91",    "state": "PROCESS_STATE_FINISHED",    "result": "PROCESS_RESULT_APPROVED",    "createdAt": "2026-08-06T01:42:21.693615Z",    "finishedAt": "2026-08-06T01:43:03.080508Z",    "person": {      "duiType": "DUI_TYPE_BR_CPF",      "duiValue": "40*******50",      "friendlyName": "teste",      "email": "",      "phone": "5511999999999",      "notifications": [        { "notificationChannel": "NOTIFICATION_CHANNEL_WHATSAPP" }      ],      "phoneCountryCodeAlpha3": ""    },    "purpose": "personAuthentication",    "services": [],    "authenticationInfo": { "authenticationId": "55cba227-9828-49df-a16f-bcdaa7bdaa4d" },    "capacities": ["PROCESS_CAPACITY_IDCLOUDONE"],    "expiresAt": "2026-08-13T01:42:21.536500Z",    "token": "",    "companyData": { "branchId": "", "countryCode": "BRA" },    "simulated": false  }}
```

Field proses
FieldArti`id`UUID proses; identifier yang digunakan untuk mencari dan melacak flow.`flow`Jenis journey yang dijalankan (misalnya `id_r2`, `idlivetrust_r2`, `idtrust_r2`, ...).`callbackUri`URI callback tempat aplikasi klien diarahkan ulang pada akhir flow.`userRedirectUrl`URL lengkap halaman CbU yang dibuka pengguna untuk menjalankan journey (membawa `id` dan flag perilaku).`state`Status siklus hidup proses. Nilai `PROCESS_STATE_*` (misalnya `CREATED`, `FAILED`, `FINISHED`, `AWAITING_FOR_DOCUMENT`, `UNSPECIFIED`).`result`Keputusan akhir dari evaluasi. Nilai `PROCESS_RESULT_*` (misalnya `APPROVED`, `AUTHENTICATED`, `NOT_APPROVED`, ...). Hanya bersifat final ketika `state = PROCESS_STATE_FINISHED`.`createdAt`Timestamp pembuatan proses (UTC).`finishedAt`Timestamp penyelesaian proses (UTC).`person`Sub-objek dengan data orang yang diverifikasi.`purpose`Tujuan proses (misalnya `personAuthentication`, registrasi orang).`services`Daftar layanan tambahan yang terkait dengan proses; kosong jika tidak ada.`authenticationInfo.authenticationId`ID event autentikasi identitas yang dihasilkan oleh flow.`capacities`Kapabilitas/produk yang digunakan. Nilai `PROCESS_CAPACITY_*` (misalnya `IDCLOUDONE`).`expiresAt`Timestamp kedaluwarsa proses/link (UTC).`token`Token sesi/akses yang terkait dengan proses (dapat kosong).`companyData`Sub-objek dengan data perusahaan/tenant pemilik proses.`simulated`Boolean; menunjukkan apakah proses ini bersifat simulasi/sandbox (`true`) atau nyata (`false`).
Field person
FieldArti`duiType`Jenis dokumen identifikasi unik. Nilai `DUI_TYPE_*` (misalnya `BR_CPF`).`duiValue`Nilai dokumen (misalnya nomor CPF).`friendlyName`Nama ramah/panggilan untuk orang tersebut (teks bebas, tidak divalidasi).`email`Email orang tersebut; dapat kosong.`phone`Nomor telepon dalam format E.164 (kode negara + kode area + nomor).`notifications`Daftar saluran notifikasi. Setiap item membawa `notificationChannel` dengan nilai `NOTIFICATION_CHANNEL_*` (misalnya `WHATSAPP`, `SMS`, `EMAIL`).`phoneCountryCodeAlpha3`Kode negara ISO alpha-3 dari nomor telepon (misalnya `BRA`); dapat kosong.
Field data perusahaan
FieldArti`branchId`Identifier cabang tenant; kosong jika tidak disegmentasi berdasarkan cabang.`countryCode`Negara perusahaan dalam ISO alpha-3 (misalnya `BRA`).
Tipe dokumen dan field OCR
`process.services[].documents[].doc.code` melaporkan tipe dokumen sebagai kode singkat dalam huruf kapital. `unico.moja.dictionary.br.cnh.v2.Cnh` menjadi `CNH`.
Kode ini tidak memuat negara maupun versi skema; versinya dikembalikan secara terpisah pada `doc.version`.
Tipe dokumen yang menggunakan skema terpadu — `unified_schema` dalam [referensi field](/id/assets/files/document-content-fields-0e4663f2ade946e901bbc7523c21f032.json) — dilaporkan sebagai tipe yang teridentifikasi saat pengambilan, dalam huruf kapital: `IDCARD`, `DRIVERLICENSE`, `PASSPORT`, atau `VOTERID`.
Paspor Amerika Serikat mempertahankan variannya alih-alih digabungkan menjadi `PASSPORT`, sehingga nilai seperti `POLYCARBONATEPASSPORT`, `PASSPORTCARD`, dan `PAPERPASSPORT` juga dikembalikan.
Sebagai contoh, `unico.moja.dictionary.ar.generic.v1.IdCard` dan `unico.moja.dictionary.us.generic.v1.PolycarbonatePassport` dilaporkan sebagai `IDCARD` dan `POLYCARBONATEPASSPORT`.
Skema spesifik
Tipe dokumen yang menggunakan skema field-nya sendiri — terdaftar di bawah `specific_document_schemas` dalam [referensi field](/id/assets/files/document-content-fields-0e4663f2ade946e901bbc7523c21f032.json) — ditampilkan pada tabel di bawah ini. Gunakan tipe dictionary untuk mencari setiap skema pada file tersebut.
Negara`doc.code`Tipe dictionaryDokumenBR`RG``unico.moja.dictionary.br.rg.v2.Rg`RGBR`CNH``unico.moja.dictionary.br.cnh.v2.Cnh`CNH (surat izin mengemudi)BR`CIN``unico.moja.dictionary.br.cin.v1.Cin`CINBR`PASSAPORTE``unico.moja.dictionary.br.passaporte.v1.Passaporte`PasporMX`INE``unico.moja.dictionary.mx.ine.v1.Ine`Kredensial pemilih INEMX`LPC``unico.moja.dictionary.mx.lpc.v1.Lpc`Licencia para conducir (surat izin mengemudi)MX`PASAPORTE``unico.moja.dictionary.mx.pasaporte.v1.Pasaporte`Paspor—`UNKNOWN``unico.moja.dictionary.other.unknown.v1.Unknown`Tipe tidak dapat diidentifikasi — `doc.data` kosong
`PASSAPORTE` dan `PASAPORTE` adalah dokumen yang berbedaPaspor Brasil adalah `PASSAPORTE` (dua S) dan paspor Meksiko adalah `PASAPORTE` (satu S), masing-masing mengikuti ejaan pada dictionary-nya sendiri. Ini bukan salah ketik — jangan perlakukan kedua nilai tersebut sebagai setara.
Tidak ada ekstraksi OCR yang dilakukan dan tidak ada field yang dilaporkan pada `doc.data` ketika `doc.code` bernilai `UNKNOWN`.
Klien di Brasil dapat menerima payload proses lengkapStruktur respons secara keseluruhan tetap sama — hasil tunggal adalah default-nya.Integrasi di Brasil dapat menerima objek proses lengkap di bawah ini, dengan hasil per kapabilitas di authenticationInfo.```
{  "process": {    "id": "53060f52-f146-4c12-a234-5bb5031f6f5b",    "flow": "idchecktrust",    "callbackUri": "https://example.com/callback",    "userRedirectUrl": "https://example.com/redirect",    "state": "PROCESS_STATE_FINISHED",    "result": "PROCESS_RESULT_OK",    "createdAt": "2024-01-01T10:00:00Z",    "finishedAt": "2024-01-01T10:15:00Z",    "expiresAt": "2024-01-08T10:00:00Z",    "purpose": "VERIFICATION",    "clientReference": "client-ref-abc",    "useCase": "smart_revalidation",    "capacities": ["liveness", "face_match"],    "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",    "person": {      "duiType": "DUI_TYPE_BR_CPF",      "duiValue": "12345678909",      "friendlyName": "Luke Skywalker",      "notifications": [        {          "notificationChannel": "email"        }      ]    },    "authenticationInfo": {      "authenticationId": "auth-123",      "livenessResult": "LIVENESS_RESULT_LIVE",      "authenticationResult": "AUTHENTICATION_RESULT_INCONCLUSIVE",      "identityFraudstersResult": "TRUST_RESULT_INCONCLUSIVE",      "bioTokenEngineResult": "BIO_TOKEN_ENGINE_RESULT_UNSPECIFIED",      "smartRevalidationResult": "SMART_REVALIDATION_RESULT_UNSPECIFIED",      "idAgeResult": "ID_AGE_RESULT_UNSPECIFIED",      "scoreEngineResult": {        "scoreEnabled": "SCORE_ENABLED_TRUE",        "score": 85.5      }    },    "companyData": {      "branchId": "branch-123",      "countryCode": "BR"    },    "bioTokenData": {      "referenceProcessId": "ref-proc-123",      "authenticationId": "auth-ref-123"    },    "services": [      {        "envelopeId": "4d4f3d90-04a3-4259-b63b-930ab10d2e47",        "documentIds": ["doc-abc-123"],        "consent_granted": true,        "documents": [          {            "doc_id": "doc-abc-123",            "typified": true,            "cpf_match": true,            "face_match": true,            "validate_doc": true,            "reused_doc": false,            "signed_url": "https://example.com/doc?token=xyz",            "doc": {              "version": 1,              "code": "CNH",              "data": {                "numero": "044589731564",                "cpfNumero": "12345678909",                "nomeCivil": "Luke Skywalker",                "dataNascimento": "1990-05-12T00:00:00Z",                "dataExpiracao": "2027-12-07T00:00:00Z",                "categoria": "B"              }            }          }        ]      }    ]  }}
```

Field tingkat atasFieldTipeDeskripsi`process.id`string (UUID)Identifier proses.`process.flow`stringIdentifier flow yang dikirim saat pembuatan.`process.callbackUri`stringURL callback yang dikonfigurasi untuk event proses.`process.userRedirectUrl`stringURL untuk mengarahkan pengguna setelah journey selesai.`process.state`enumStatus proses saat ini. Lihat nilai di bawah.`process.result`enumHasil verifikasi. Muncul hanya ketika `state = PROCESS_STATE_FINISHED`.`process.createdAt`string (datetime)Timestamp ISO 8601 ketika proses dibuat.`process.finishedAt`string (datetime)Timestamp ISO 8601 ketika proses selesai. Muncul hanya ketika `state = PROCESS_STATE_FINISHED`.`process.expiresAt`string (datetime)Timestamp ISO 8601 ketika proses kedaluwarsa.`process.purpose`stringTujuan proses seperti yang dikonfigurasi dalam flow.`process.clientReference`stringReferensi sisi klien opsional untuk pengindeksan di portal.`process.useCase`stringIdentifier skenario yang terkait dengan flow.`process.capacities`array of stringsDaftar kapabilitas yang diaktifkan dalam proses ini.`process.token`stringJWT yang ditandatangani untuk integrasi SDK.`process.person`objectIdentifikasi yang diberikan saat pembuatan.`process.person.notifications`arraySaluran notifikasi yang dikonfigurasi untuk journey (misalnya `email`).`process.authenticationInfo`objectHasil per kapabilitas. Lihat di bawah.`process.companyData`objectKonteks perusahaan dan cabang.`process.companyData.branchId`stringIdentifier cabang.`process.companyData.countryCode`stringKode negara ISO 3166-1 alpha-2.`process.bioTokenData`objectInfo proses referensi — muncul hanya dalam alur Validasi 1:1 dan Revalidasi Cerdas.`process.services`arrayEnvelope yang ditandatangani, dokumen yang ditangkap, dan output layanan lainnya. Lihat di bawah.Nilai process.stateNilaiArti`PROCESS_STATE_CREATED`Proses dibuat; pengguna belum menyelesaikan journey.`AWAITING_FOR_DOCUMENT`Proses dibuat tanpa dokumen identifikasi; menunggu untuk diatur melalui [Set Process Document](/id/dual-api/developers/api-reference/web-sdk/post-process-document). Hanya muncul ketika Custom Flow mengizinkan dokumen opsional.`PROCESS_STATE_FINISHED`Journey selesai. Periksa `result` dan `authenticationInfo`.`PROCESS_STATE_FAILED`Error pemrosesan.Inkonsistensi penamaan state`AWAITING_FOR_DOCUMENT` tidak mengikuti konvensi prefiks `PROCESS_STATE_*` yang digunakan oleh state lainnya. Ini adalah inkonsistensi penamaan yang diketahui dalam API saat ini.Nilai process.resultNilaiArti`PROCESS_RESULT_OK`Semua kapabilitas mengembalikan hasil positif.`PROCESS_RESULT_INVALID_IDENTITY`Setidaknya satu kapabilitas mengembalikan hasil negatif definitif (misalnya liveness gagal, identitas tidak cocok).`PROCESS_RESULT_ERROR`Error selama pemrosesan hasil.`PROCESS_RESULT_EXPIRED`Proses kedaluwarsa sebelum journey selesai.`PROCESS_RESULT_UNSPECIFIED`Proses belum selesai.Hasil kapabilitas dalam authenticationInfoSemua field selalu dikembalikan terlepas dari flow. Field untuk kapabilitas yang tidak digunakan dalam flow mengembalikan `*_UNSPECIFIED`.Nilai enum yang disingkatNilai singkat (misalnya `livenessResult = LIVE`, `authenticationResult = INCONCLUSIVE`) dipetakan langsung ke nilai enum lengkap yang didokumentasikan di sini (`LIVENESS_RESULT_LIVE`, `AUTHENTICATION_RESULT_INCONCLUSIVE`, dll.) — prefiks dihilangkan untuk singkatnya.FieldKapabilitasNilai yang mungkin`authenticationId`—Identifier unik untuk percobaan autentikasi ini.`livenessResult`[Deteksi Kehidupan](/id/capabilities/liveness)`LIVENESS_RESULT_LIVE`, `LIVENESS_RESULT_NOT_LIVE`, `LIVENESS_RESULT_UNSPECIFIED``authenticationResult`[Verifikasi Identitas](/id/capabilities/identity-verification)`AUTHENTICATION_RESULT_POSITIVE`, `AUTHENTICATION_RESULT_NEGATIVE`, `AUTHENTICATION_RESULT_INCONCLUSIVE`, `AUTHENTICATION_RESULT_UNSPECIFIED``identityFraudstersResult`[Klasifikasi Risiko Penipuan](/id/capabilities/fraud-risk-classification)`TRUST_RESULT_YES`, `TRUST_RESULT_INCONCLUSIVE`, `TRUST_RESULT_UNSPECIFIED``bioTokenEngineResult`[Validasi 1:1](/id/capabilities/1-1-validation)`BIO_TOKEN_ENGINE_RESULT_POSITIVE`, `BIO_TOKEN_ENGINE_RESULT_NEGATIVE`, `BIO_TOKEN_ENGINE_RESULT_UNSPECIFIED``smartRevalidationResult`[Revalidasi Cerdas](/id/capabilities/smart-revalidation)`SMART_REVALIDATION_RESULT_POSITIVE`, `SMART_REVALIDATION_RESULT_NEGATIVE`, `SMART_REVALIDATION_RESULT_UNSPECIFIED``idAgeResult`[Verifikasi Usia](/id/capabilities/age-verification)`ID_AGE_RESULT_POSITIVE`, `ID_AGE_RESULT_NEGATIVE`, `ID_AGE_RESULT_INCONCLUSIVE`, `ID_AGE_RESULT_UNSPECIFIED``scoreEngineResult.scoreEnabled`[Skor Risiko](/id/capabilities/risk-score)`SCORE_ENABLED_TRUE`, `SCORE_ENABLED_FALSE`, `SCORE_ENABLED_UNSPECIFIED``scoreEngineResult.score`[Skor Risiko](/id/capabilities/risk-score)Angka dari -100 sampai +100. Muncul ketika `authenticationResult = AUTHENTICATION_RESULT_INCONCLUSIVE` dan Skor Risiko diaktifkan.`serproResult.score`[Hasil Kemiripan Serpro](/id/capabilities/serpro-similarity-return)`0`–`100` (kemiripan); `-1` (tidak ada wajah yang terdaftar untuk CPF ini); `-2` (error integrasi).Field process.servicesKonvensi penamaan campuran dalam `services`Array `services` menggunakan camelCase untuk field tingkat envelope (`envelopeId`, `documentIds`) dan snake_case untuk field tingkat dokumen (`doc_id`, `consent_granted`, `face_match`, dll.). Ini mencerminkan respons API yang sebenarnya — kedua konvensi disengaja dan bukan merupakan kesalahan dokumentasi.FieldTipeDeskripsi`envelopeId`string (UUID)Identifier envelope yang ditandatangani.`documentIds`array of stringsID dokumen yang ditangkap dalam layanan ini.`consent_granted`booleanApakah pengguna memberikan persetujuan berbagi data.`documents`arrayDokumen yang ditangkap dengan data OCR dan hasil validasi.`documents[].doc_id`stringIdentifier dokumen.`documents[].typified`booleanApakah tipe dokumen berhasil diidentifikasi.`documents[].cpf_match`booleanApakah CPF pada dokumen cocok dengan CPF yang diberikan (khusus Brasil).`documents[].face_match`booleanApakah selfie cocok dengan foto di dokumen.`documents[].validate_doc`booleanApakah dokumen lolos validasi keaslian.`documents[].reused_doc`booleanApakah dokumen ini digunakan kembali dari proses sebelumnya.`documents[].signed_url`stringURL yang telah ditandatangani untuk mengunduh PDF dokumen (berlaku selama 5 menit — ambil ulang untuk memperbarui).`documents[].doc.version`integerVersi skema OCR.`documents[].doc.code`stringKode tipe dokumen singkat (misalnya `CNH`). Lihat [Tipe dokumen dan field OCR](#document-type-values) untuk semua nilai dan cara kode tersebut diturunkan.`documents[].doc.data`objectField OCR yang diekstrak. Konten bervariasi berdasarkan tipe dokumen — lihat [referensi field lengkap](/id/assets/files/document-content-fields-0e4663f2ade946e901bbc7523c21f032.json) untuk katalog lengkapnya. Nama field dalam `doc.data` (misalnya `nomeCivil`, `dataNascimento`) dikembalikan dalam bahasa Portugis — ini adalah nilai aktual yang dihasilkan oleh mesin OCR.
Klien di Meksiko dapat menerima blok RENAPO VerificationRespons mempertahankan struktur yang sama dan menambahkan blok idGov.Integrasi di Meksiko dengan RENAPO Verification aktif menerima blok idGov tambahan di bawah authenticationInfo, berisi data yang disimpan RENAPO untuk CURP pengguna. Ini adalah jawaban terpisah dari hasil identitas.```
{  "process": {    "id": "11111111-2222-3333-4444-555555555555",    "state": "PROCESS_STATE_FINISHED",    "result": "PROCESS_RESULT_APPROVED",    "person": {      "duiType": "DUI_TYPE_MX_CURP",      "duiValue": "PUEA880304MDFRJN04"    },    "authenticationInfo": {      "authenticationId": "22222222-3333-4444-5555-666666666666",      "idGov": {        "government_valid": true,        "curp": "PUEA880304MDFRJN04",        "government_name": "ANA PRUEBA EJEMPLO"      }    },    "companyData": { "countryCode": "MEX" }  }}
```

Field lain dan sisa key `idGov` dihilangkan agar ringkas. Untuk tabel lengkap field `idGov`, lihat [RENAPO Verification](/id/capabilities/renapo-verification#possible-responses).FieldTipeDeskripsi`authenticationInfo.idGov`objectData RENAPO untuk CURP. Tidak ada jika kapabilitas tidak diaktifkan. `{}` jika RENAPO tidak merespons. Hanya Meksiko. Lihat [RENAPO Verification](/id/capabilities/renapo-verification).
### Kode Error​

400 Bad Request401 Unauthorized404 Not Found429 Too Many Requests500 Internal Server ErrorCodeMessageDeskripsi`3`process id is invalidKetika process ID tidak valid.CodeMessageDeskripsi—Jwt header is an invalid JSONKetika access token yang digunakan mengandung karakter yang salah.—Jwt is expiredKetika access token yang digunakan telah kedaluwarsa.CodeMessageDeskripsi`5`error getting process: rpc error: code = NotFound desc = process not foundKetika process ID tidak ditemukan.Batas rate tercapai. Ketika sistem Anda menerima error HTTP 429, Anda harus mengimplementasikan mekanisme untuk mencegah kegagalan berantai dan menghindari memperburuk pembatasan.
**Praktik terbaik:**

**Periode pendinginan (backoff):** Segera hentikan atau kurangi permintaan berikutnya dari sistem Anda. Jangan terus-menerus mencoba ulang permintaan yang gagal dalam loop yang ketat.
**Antrean & pembatasan (Queueing & throttling):** Buffer atau antrean permintaan keluar dari sisi Anda untuk mengontrol aliran lalu lintas sebelum mengirimnya kembali.
**Exponential backoff dengan jitter:** Saat mencoba ulang, tingkatkan waktu tunggu secara eksponensial antar percobaan (misalnya, 1 s, 2 s, 4 s, 8 s) dan tambahkan penundaan acak kecil ("jitter") untuk mencegah efek kawanan di mana semua permintaan yang diantrean mencoba ulang pada milidetik yang sama persis.

peringatanTerus-menerus mengirim permintaan ke endpoint yang dibatasi rate tanpa menerapkan backoff dapat **memperpanjang periode pembatasan** dan sangat memengaruhi throughput operasional sistem Anda. Membatasi permintaan dengan benar dari sisi Anda memastikan integrasi yang lebih lancar dan lebih tangguh.
Untuk batas default, peningkatan permintaan, dan detail tambahan, lihat [Batas Rate](/id/dual-api/developers/api-reference/rate-limits).CodeMessageDeskripsi`99999`Internal failure! Try again laterKetika terjadi error internal.
### Polling vs webhook​

Anda dapat melakukan polling pada endpoint ini untuk memeriksa progres, tetapi pola yang disarankan adalah **berlangganan webhook** dan hanya memanggil endpoint ini sebagai fallback. Lihat [Webhook dan Event](/id/developers/webhooks-and-events).
### Selanjutnya​

Untuk selfie yang ditangkap, lihat [Get Selfie](/id/dual-api/developers/api-reference/web-sdk/get-selfie).
Untuk bundel audit bukti, lihat [Get Evidence Set](/id/dual-api/developers/api-reference/web-sdk/get-evidence-set).
Terakhir diperbarui pada 8 Okt 2026**