---
title: Dapatkan Proses
description: Mengambil state dan hasil terkini dari suatu proses verifikasi.
canonical: https://developer.unico.io/id/developers/api-reference/get-process
locale: id
generated_by: markdown-export
---

- [/id/](/id/)
- Referensi API
- Dapatkan Proses

**Di halaman iniDapatkan ProsesGETMengambil proses yang sudah ada berdasarkan identifier-nya. Berdasarkan kontrak API, hasilnya sudah dikembalikan secara sinkron saat pembuatan proses — 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**Produksi**`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 [Buat Proses](/id/developers/api-reference/post-processes).
### 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; kunci yang digunakan untuk mengueri dan melacak flow.`flow`Jenis perjalanan yang dijalankan (misalnya `id_r2`, `idlivetrust_r2`, `idtrust_r2`, ...).`callbackUri`Callback URI tempat aplikasi klien diarahkan pada akhir flow.`userRedirectUrl`URL lengkap dari halaman CbU yang dibuka pengguna untuk menjalankan perjalanan (membawa `id` dan flag perilaku).`state`State siklus hidup proses. Nilai `PROCESS_STATE_*` (misalnya `CREATED`, `FAILED`, `FINISHED`, `AWAITING_FOR_DOCUMENT`, `UNSPECIFIED`).`result`Verdict akhir dari evaluasi. Nilai `PROCESS_RESULT_*` (misalnya `APPROVED`, `AUTHENTICATED`, `NOT_APPROVED`, ...). Hanya konklusif saat `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 terlampir pada proses; kosong jika tidak ada.`authenticationInfo.​authenticationId`ID dari 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 yang memiliki proses.`simulated`Boolean; apakah ini adalah proses simulasi/sandbox (`true`) atau proses sungguhan (`false`).
Field person
FieldArti`duiType`Tipe dokumen identifikasi unik. Nilai `DUI_TYPE_*` (misalnya `BR_CPF`).`duiValue`Nilai dokumen (misalnya nomor CPF).`friendlyName`Nama panggilan/nickname 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 kanal 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 companyData
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
Tipe dokumen yang menggunakan skema terpadu — `unified_schema` pada [referensi field](/id/assets/files/document-content-fields-0e4663f2ade946e901bbc7523c21f032.json) — dilaporkan sebagai tipe huruf besar yang diidentifikasi selama pengambilan gambar: `IDCARD`, `DRIVERLICENSE`, `PASSPORT`, atau `VOTERID`.
Paspor A.S. mempertahankan variannya masing-masing dan tidak digabungkan menjadi `PASSPORT`, sehingga nilai seperti `POLYCARBONATEPASSPORT`, `PASSPORTCARD`, dan `PAPERPASSPORT` juga dikembalikan.
Misalnya, `unico.moja.dictionary.ar.generic.v1.IdCard` dan `unico.moja.dictionary.us.generic.v1.PolycarbonatePassport` dilaporkan sebagai `IDCARD` dan `POLYCARBONATEPASSPORT`.
`process.services[].documents[].doc.code` melaporkan tipe dokumen sebagai kode singkat huruf besar. `unico.moja.dictionary.br.cnh.v2.Cnh` menjadi `CNH`.
Kode tersebut tidak membawa negara maupun versi skema; versinya dikembalikan secara terpisah di `doc.version`.
Skema khusus
Tipe dokumen yang menggunakan skema field sendiri — tercantum di bawah `specific_document_schemas` pada [referensi field](/id/assets/files/document-content-fields-0e4663f2ade946e901bbc7523c21f032.json) — ditunjukkan 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` (S ganda) dan paspor Meksiko adalah `PASAPORTE` (S tunggal), masing-masing mencerminkan ejaan dictionary-nya sendiri. Ini bukan kesalahan penulisan — jangan menganggap kedua nilai tersebut setara.
Tidak ada ekstraksi OCR yang dilakukan dan tidak ada field yang dilaporkan di `doc.data` saat `doc.code` adalah `UNKNOWN`.
Klien di Brasil dapat menerima payload proses lengkapStruktur respons secara keseluruhan tetap sama — hasil tunggal adalah default.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": "iddocs_r2",    "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": "USE_CASE_LOGIN",    "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_UNSPECIFIED",      "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`stringCallback URL yang dikonfigurasi untuk event proses.`process.​userRedirectUrl`stringURL untuk mengarahkan pengguna setelah perjalanan selesai.`process.state`enumState proses saat ini. Lihat nilai di bawah.`process.result`enumHasil verifikasi. Hanya ada saat `state = PROCESS_STATE_FINISHED`.`process.createdAt`string (datetime)Timestamp ISO 8601 saat proses dibuat.`process.finishedAt`string (datetime)Timestamp ISO 8601 saat proses selesai. Hanya ada saat `state = PROCESS_STATE_FINISHED`.`process.expiresAt`string (datetime)Timestamp ISO 8601 saat proses kedaluwarsa.`process.purpose`stringTujuan proses sebagaimana dikonfigurasi dalam flow.`process.​clientReference`stringReferensi opsional sisi klien 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 disediakan saat pembuatan.`process.​person.​notifications`arrayKanal notifikasi yang dikonfigurasi untuk perjalanan (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`objectInformasi proses referensi — hanya ada pada alur Validasi 1:1 dan Revalidasi Cerdas.`process.services`arrayEnvelope yang ditandatangani, dokumen yang diambil, dan output layanan lainnya. Lihat di bawah.Nilai process.stateValueArti`PROCESS_STATE_CREATED`Proses dibuat; pengguna belum menyelesaikan perjalanan.`AWAITING_FOR_DOCUMENT`Proses dibuat tanpa dokumen identifikasi. Hanya ada saat Custom Flow mengizinkan dokumen opsional. Kirim dokumen dengan [Tetapkan Dokumen Proses](/id/developers/api-reference/set-process-document).`PROCESS_STATE_FINISHED`Perjalanan 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 sudah diketahui pada API saat ini.Nilai process.resultValueArti`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 perjalanan selesai.`PROCESS_RESULT_UNSPECIFIED`Proses belum selesai.Hasil kapabilitas dalam authenticationInfoSemua field selalu dikembalikan terlepas dari flow-nya. Field untuk kapabilitas yang tidak digunakan dalam flow mengembalikan `*_UNSPECIFIED`.Nilai enum yang disingkatNilai singkat (misalnya `livenessResult = LIVE`, `authenticationResult = INCONCLUSIVE`) mengacu langsung ke nilai enum lengkap yang didokumentasikan di sini (`LIVENESS_RESULT_LIVE`, `AUTHENTICATION_RESULT_INCONCLUSIVE`, dst.) — prefiksnya dihilangkan demi keringkasan.FieldKapabilitasNilai yang memungkinkan`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 hingga +100. Ada saat `authenticationResult = AUTHENTICATION_RESULT_INCONCLUSIVE` dan Skor Risiko diaktifkan.`serproResult.score`[Kemiripan Serpro](/id/capabilities/serpro-similarity-return)`0`–`100` (kemiripan); `-1` (tidak ada wajah tersimpan untuk CPF ini); `-2` (error integrasi).Field process.servicesKonvensi penamaan yang bercampur 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`, dst.). Ini mencerminkan respons API yang sebenarnya — kedua konvensi tersebut disengaja dan bukan kesalahan dokumentasi.FieldTipeDeskripsi`envelopeId`string (UUID)Identifier envelope yang ditandatangani.`documentIds`array of stringsID dokumen yang diambil dalam layanan ini.`consent_granted`booleanApakah pengguna memberikan consent untuk berbagi data.`documents`arrayDokumen yang diambil beserta 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 pada dokumen.`documents[].​validate_doc`booleanApakah dokumen lolos validasi keaslian.`documents[].​reused_doc`booleanApakah dokumen ini digunakan kembali dari proses sebelumnya.`documents[].​signed_url`stringURL pre-signed untuk mengunduh PDF dokumen (berlaku selama 5 menit — ambil ulang untuk memperbarui).`documents[].​doc.​version`integerVersi skema OCR.`documents[].​doc.​code`stringKode singkat tipe dokumen (misalnya `CNH`). Lihat [Tipe dokumen dan field OCR](#document-type-values) untuk semua nilai dan cara kode tersebut diperoleh.`documents[].​doc.​data`objectField OCR yang diekstrak. Isinya bervariasi berdasarkan tipe dokumen — lihat [referensi field lengkap](/id/assets/files/document-content-fields-0e4663f2ade946e901bbc7523c21f032.json) untuk katalog lengkapnya. Nama field di dalam `doc.data` (misalnya `nomeCivil`, `dataNascimento`) dikembalikan dalam bahasa Portugis — ini adalah nilai sebenarnya yang dihasilkan oleh mesin OCR.
### Kode Error​

400 Bad Request401 Unauthorized404 Not Found429 Too Many Requests500 Internal Server ErrorCodeMessageDescription`3`process id is invalidKetika ID proses tidak valid.CodeMessageDescription—Jwt header is an invalid JSONKetika access token yang digunakan mengandung karakter yang salah.—Jwt is expiredKetika access token yang digunakan sudah kedaluwarsa.CodeMessageDescription`5`error getting process: rpc error: code = NotFound desc = process not foundKetika ID proses 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/developers/start/rate-limits).CodeMessageDescription`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 direkomendasikan adalah **berlangganan webhook** dan hanya memanggil endpoint ini sebagai fallback. Lihat [Webhook dan Event](/id/developers/webhooks-and-events).
### Selanjutnya​

Untuk selfie yang diambil, lihat [Dapatkan Selfie](/id/developers/api-reference/get-selfie).
Untuk paket audit bukti, lihat [Dapatkan Evidence Set](/id/developers/api-reference/get-evidence-set).
Terakhir diperbarui pada 8 Okt 2026**