---
title: प्रक्रिया बनाएं
description: कैप्चर की गई image को सीधे भेजकर एक सत्यापन प्रक्रिया बनाएं। समकालिक परिणाम लौटाता है।
canonical: https://developer.unico.io/hi/dual-api/developers/api-reference/api/post-processes
locale: hi
generated_by: markdown-export
---

- [/hi/](/hi/)
- [API संदर्भ](/hi/dual-api/developers/api-reference/)
- [API](/hi/dual-api/developers/api-reference/api/)
- प्रक्रिया बनाएं

**इस पेज पर# प्रक्रिया बनाएं

यह endpoint तीन उत्पादों को संभालता है जो एक ही path साझा करते हैं लेकिन body पैरामीटर, क्षमताओं और प्रतिक्रिया फ़ील्ड में भिन्न हैं:

**ऑनबोर्डिंग** — Unico के पहचान आधार के विरुद्ध उनका चेहरा तुलना करके यह सत्यापित करता है कि उपयोगकर्ता कौन है (`subject.duiType` + `subject.code` आवश्यक)।
**Transactional** — पिछली प्रक्रिया से चेहरे की तुलना करके यह सत्यापित करता है कि यह वही व्यक्ति है (`referenceProcessId` OR selfie / process id के साथ `references` array आवश्यक)।
**Cardholder Verification** — बिना किसी selfie कैप्चर के यह पुष्टि करता है कि कोई कार्ड उसके घोषित धारक का है (`subject.code` + `card` आवश्यक)। वैकल्पिक रूप से `referenceProcessId` के माध्यम से पहले से सत्यापित प्रक्रिया का पुनः उपयोग करके पुनः उपयोग गेट को ट्रिगर करता है; इसके बिना, प्रतिक्रिया डिफ़ॉल्ट रूप से `unsure` परिणाम देती है। [Cardholder Verification](/hi/capabilities/cardholder-verification) क्षमता देखें।

सक्रिय उत्पाद request header में भेजी गई **APIKEY** द्वारा निर्धारित होता है।
संपूर्ण एकीकरण प्रवाह के लिए, [API अवलोकन](/hi/dual-api/developers/api-reference/api/) देखें।
### Endpoint​

वातावरणURL**Production**`POST https://api.id.unico.app/processes/v1`**Sandbox**`POST https://api.id.uat.unico.app/processes/v1`
### अनुरोध​

Headers
HeaderValue`Authorization``Bearer <access_token>` ([Authentication](/hi/dual-api/developers/api-reference/authentication) देखें)`APIKEY`प्रावधानित API key — सक्रिय उत्पाद और सक्षम capabilities को परिभाषित करता है।`Content-Type``application/json`
Body parameters
ऑनबोर्डिंगTransactionalCardholder VerificationFieldTypeRequiredविवरण`subject.duiType`integeryesदस्तावेज़ प्रकार पहचानकर्ता। नीचे [`duiType` मान](#duitype-values) देखें।`subject.code`stringyes`subject.duiType` द्वारा परिभाषित पहचानकर्ता मान। कोई बिंदु या डैश नहीं।`subject.name`stringnoपूरा नाम।`subject.gender`stringno`M` या `F`।`subject.birthDate`string (ISO 8601)noजन्म तिथि (`YYYY-MM-DD`)।`subject.email`stringnoईमेल पता।`subject.phone`stringnoE.164 phone number।`subject.clientReference`stringconditionalआपके सिस्टम में उपयोगकर्ता का अद्वितीय पहचानकर्ता। **[मल्टी अकाउंट](/hi/capabilities/multi-accounts) क्षमता के लिए आवश्यक।** आपके आधार में अद्वितीय, अधिकतम 256 वर्ण, कोई स्पेस नहीं।`useCase`stringnoOperation context, जैसे `Onboarding`।`subsidiaryId`stringnoशाखा ID — केवल तभी आवश्यक जब एकाधिक शाखाएं हों।`imageBase64`stringyesआपके front-end द्वारा capture की गई selfie, base64 में।FieldTypeRequiredविवरण`references`arrayconditional1:1 सत्यापन flows के लिए reference inputs। प्रत्येक आइटम में `referenceType` (`REFERENCE_TYPE_IMAGE_BASE64` या `REFERENCE_TYPE_PROCESS_ID`) और `referenceContent` (base64-encoded image या process UUID) होता है।`referenceProcessId`stringconditional**Deprecated.** इसके बजाय `references` का उपयोग करें। तुलना के लिए reference Onboarding प्रक्रिया का ID। यदि reference एक by-Unico प्रक्रिया है, तो `authenticationInfo.authenticationId` का उपयोग करें।`imageBase64`stringyesआपके front-end द्वारा capture की गई selfie, base64 में।`subject`objectnoउपयोगकर्ता जानकारी container।`subject.duiType`stringnoपहचानकर्ता प्रकार। संभावित मान: `DUI_TYPE_AR_DNI`, `DUI_TYPE_BR_CPF`, `DUI_TYPE_ID_NIK`, `DUI_TYPE_MX_CURP`, `DUI_TYPE_NG_NIN`, `DUI_TYPE_US_SSN`।`subject.code`stringno`subject.duiType` द्वारा परिभाषित पहचानकर्ता मान। कोई बिंदु या डैश नहीं।`subject.name`stringnoउपयोगकर्ता का पूरा नाम।`subject.gender`stringno`M` या `F`।`subject.birthDate`string (ISO 8601)noजन्म तिथि (`YYYY-MM-DD`)।`subject.email`stringnoईमेल पता।`subject.phone`stringnoE.164 phone number।`useCase`stringnoOperation context, जैसे `Transactional`।`subsidiaryId`stringnoBranch ID — के वल तभी आवश्यक जब एकाधिक branches हों।जानकारीइस उत्पाद के लिए, धोखाधड़ी जोखिम वर्गीकरण के साथ orchestrate करना संभव नहीं है। परिणाम हमेशा POST प्रतिक्रिया में समकालिक रूप से लौटाया जाता है।FieldTypeRequiredविवरण`subject.duiType`integeryesदस्तावेज़ प्रकार पहचानकर्ता। नीचे [`duiType` मान](#duitype-values) देखें। वर्तमान में केवल `DUI_TYPE_BR_CPF`।`subject.code`stringyesसत्यापित किए जा रहे cardholder का CPF। कोई बिंदु या डैश नहीं।`card.bin`stringconditionalकार्ड के पहले 6 या 8 अंक (BIN)। `card.last4` के साथ आवश्यक।`card.last4`stringconditionalकार्ड के अंतिम 4 अंक। `card.bin` के साथ आवश्यक।`card.name`stringnoकार्ड पर मुद्रित cardholder का नाम।`referenceProcessId`string (UUID)noपुनः उपयोग के लिए पहले से सत्यापित की गई किसी प्रक्रिया का ID — वह जिसमें उसी CPF के लिए स्वीकृत पहचान सत्यापन या लाइवनेस परिणाम हो। इस क्षमता का मौजूदा संस्करण पुनरुपयोग-आधारित है: इस फ़ील्ड के बिना, गेट कभी ट्रिगर नहीं होता और प्रतिक्रिया डिफ़ॉल्ट रूप से मानक `unsure` परिणाम देती है — रिक्वेस्ट स्वयं कभी विफल नहीं होती।`useCase`stringnoOperation context, जैसे `CardholderVerification`।`subsidiaryId`stringnoशाखा ID — केवल तभी आवश्यक जब एकाधिक शाखाएं हों।जानकारीइस उत्पाद के लिए कोई `imageBase64` नहीं भेजा जाता — Cardholder Verification पूरी तरह back-end पर चलता है, बिना किसी selfie कैप्चर चरण के।
**`duiType` मान**देशकोडविवरणAR6अर्जेंटीनी पासपोर्टAR7अर्जेंटीनी DNIAR49अर्जेंटीनी ड्राइविंग लाइसेंस (Licencia Nacional de Conducir)AT34ऑस्ट्रियाई कर संख्या (STNR)BE36बेल्जियन राष्ट्रीय नंबर (NN)BR1ब्राज़ीलियाई CPFBR5ब्राज़ीलियाई पासपोर्टBR14ब्राज़ीलियाई CNPJCA28कैनेडियन SINCH33स्विस AHV/AVS नंबरCL9चिली RUNCL52चिली पासपोर्टCL57चिली ड्राइविंग लाइसेंस (Licencia de Conducir)CO26कोलंबियाई NITCO53कोलंबियाई पासपोर्टCO55कोलंबियाई ड्राइविंग लाइसेंस (Licencia de Conducción)CO56कोलंबियाई नागरिकता कार्ड (Cédula de Ciudadanía)DE41जर्मन कर पहचान संख्या (IdNr)DK29डैनिश CPREC10इक्वाडोरी NIES50स्पेनिश विदेशी पहचान संख्या (NIE)ES51स्पेनिश राष्ट्रीय पहचान दस्तावेज़ (DNI)FI35फिनिश व्य  क्तिगत पहचान कोड (HETU)FR46फ्रेंच कर संदर्भ संख्या (SPI)GB30ब्रिटिश राष्ट्रीय बीमा नंबर (NINO)GT12ग्वाटेमाला CUIID16इंडोनेशियाई NIKIE47आयरिश व्यक्तिगत सार्वजनिक सेवा नंबर (PPSN)IT37इटालियन कोडिस फिस्काले (CF)LU48लक्ज़मबर्ग राष्ट्रीय पहचान संख्या (Matricule)MX2मैक्सिकन CURPMX25मैक्सिकन RFC (व्यक्तिगत)MX58मैक्सिकन ड्राइविंग लाइसेंस (Licencia de Conducir)NG8नाइजीरियाई NINNG20नाइजीरियाई बैंक सत्यापन नंबर (BVN)NG43नाइजीरियाई BVN टोकन (हैश्ड)NG44नाइजीरियाई NIN टोकन (हैश्ड)NL42डच नागरिक सेवा नंबर (BSN)NO39नॉर्वेजियन राष्ट्रीय पहचान नंबर (Fødselsnummer)PE27पेरूवियन RUCPE40पेरूवियन DNIPE54पेरूवियन पासपोर्टPL31पोलिश PESELPT45पॉर्चुगीज कर पहचान संख्या (NIF)SE32स्वीडिश व्यक्तिगत नंबर (PNR)SE38स्वीडि श समन्वय नंबर (Samordningsnummer)TR24तुर्की पहचान संख्या (TCKN)US4संयुक्त राज्य SSNUS11संयुक्त राज्य पासपोर्टUS18संयुक्त राज्य ड्राइविंग लाइसेंसUS21संयुक्त राज्य पासपोर्ट कार्डUS22संयुक्त राज्य पॉलीकार्बोनेट पासपोर्टUS23संयुक्त राज्य पहचान पत्र (ID Card)UY13उरुग्वे CIZZ15ईमेल पताZZ17फ़ोन नंबर—0अनिर्दिष्ट—3Unico आंतरिक पहचानकर्ता
इमेज आवश्यकताएं
न्यूनतम resolution: 640 × 480 (HD standard)
अधिकतम फ़ाइल आकार: 800 KB (JPEG92 compression अनुशंसित)
स्वीकृत formats: PNG, JPEG, WebP
SDK के JWT token **10 मिनट** के बाद expire हो जाते हैं और केवल **एक बार** उपयोग किए जा सकते हैं

संपीड़ित अनुरोध
API स्टैंडर्ड `Content-Encoding` HTTP header का उपयोग करके संपीड़ित request body भेजने का समर्थन करता है। यह वैकल्पिक है और पूरी तरह से backward-compatible है: जो क्लाइंट यह header नहीं भेजते, वे पहले की तरह ही काम करते रहते हैं।
समर्थित प्रारूप
Encoding`Content-Encoding` headerस्थितिGzip`gzip`✅ अनुशंसितDeflate`deflate`✅ समर्थितकोई संपीड़न नहीं(header अनुपस्थित)✅ समर्थित (डिफ़ॉल्ट व्यवहार)
सिफारिश`gzip` का उपयोग करें। इसका भाषाओं और HTTP libraries में सबसे व्यापक समर्थन है, जो अन्य प्रारूपों में मौजूद implementation संबंधी अस्पष्टताओं से बचाता है।
बड़े body वाले requests (जैसे, व्यापक JSON payloads, base64-encoded image uploads, batch submissions) के लिए संपीड़न की सिफारिश की जाती है। छोटे requests के लिए, संपीड़न का overhead कोई प्रासंगिक लाभ नहीं दे सकता।
संपीड़ित request कैसे भेजें

चुने गए algorithm का उपयोग करके request body (जैसे, serialized JSON) को संपीड़ित करें।
संपीड़ित body को request में binary bytes के रूप में भेजें।
मिलान करने वाले value (`gzip` या `deflate`) के साथ `Content-Encoding` header शामिल करें।
`Content-Type` को मूल content प्रारूप (जैसे, `application/json`) का वर्णन करने के लिए रखें, transport encoding का नहीं।

cURLPython (requests).NET (C#, HttpClient)```
echo '{"subject":{"code":"12345678909"},"useCase":"Onboarding","imageBase64":"/9j/4AAQSkZJR..."}' | gzip > body.json.gzcurl -X POST https://api.id.unico.app/processes/v1 \  -H "Authorization: Bearer $TOKEN" \  -H "APIKEY: $API_KEY" \  -H "Content-Type: application/json" \  -H "Content-Encoding: gzip" \  --data-binary @body.json.gz
```

```
import gzipimport jsonimport requestspayload = {    "subject": {"code": "12345678909"},    "useCase": "Onboarding",    "imageBase64": capturedImage,}compressed_body = gzip.compress(json.dumps(payload).encode("utf-8"))response = requests.post(    "https://api.id.unico.app/processes/v1",    data=compressed_body,    headers={        "Authorization": f"Bearer {token}",        "APIKEY": api_key,        "Content-Type": "application/json",        "Content-Encoding": "gzip",    },)
```

```
using System.IO.Compression;using System.Text;using System.Text.Json;var json = JsonSerializer.Serialize(payload);var jsonBytes = Encoding.UTF8.GetBytes(json);using var outputStream = new MemoryStream();using (var gzipStream = new GZipStream(outputStream, CompressionMode.Compress, leaveOpen: true)){    await gzipStream.WriteAsync(jsonBytes, 0, jsonBytes.Length);}outputStream.Position = 0;var content = new ByteArrayContent(outputStream.ToArray());content.Headers.ContentType = new MediaTypeHeaderValue("application/json");content.Headers.ContentEncoding.Add("gzip");using var client = new HttpClient();client.DefaultRequestHeaders.Add("Authorization", $"Bearer {token}");client.DefaultRequestHeaders.Add("APIKEY", apiKey);var response = await client.PostAsync("https://api.id.unico.app/processes/v1", content);
```

टिपPython उदाहरण के लिए, `json=` के बजाय `data=` पैरामीटर का उपयोग करें। `json=` पैरामीटर पेलोड को स्वचालित रूप से सीरियलाइज़ करता है, लेकिन इसे संपीड़ित नहीं करता।
**इसके बजाय `deflate` का उपयोग करना:** ऊपर दिया गया फ़्लो पूरी तरह समान है — केवल compression कॉल और `Content-Encoding` का मान बदलता है।
भाषा`deflate`Bash / cURL`zlib-flate -compress < body.json > body.json.deflate` (`qpdf` से), फिर `-H "Content-Encoding: deflate"`Python`gzip.compress(data)` के बजाय `zlib.compress(data)`.NET (C#)`GZipStream` के बजाय `System.IO.Compression.DeflateStream`
व्यवहार में `deflate` अस्पष्ट हैHTTP का `deflate` content encoding एक zlib stream (RFC 1950) के रूप में निर्दिष्ट है, लेकिन कुछ क्लाइंट और सर्वर ऐतिहासिक रूप से इसके बजाय raw DEFLATE (RFC 1951) भेजते या अपेक्षा करते हैं। यह API स्टैंडर्ड zlib-wrapped stream की अपेक्षा करता है — वही आउटपुट जो `zlib.compress()` (Python) या `DeflateStream` (.NET) डिफ़ॉल्ट रूप से produce करते हैं। संदेह होने पर, `gzip` को प्राथमिकता दें, जिसमें ऐसी कोई अस्पष्टता नहीं है।
त्रुटि व्यवहारयदि `Content-Encoding` को किसी असमर्थित value के साथ भेजा जाता है, या body corrupted है या घोषित encoding के लिए अमान्य है, तो API `400 Bad Request` लौटाता है जिसमें यह संदेश होता है कि request body को decompress करना विफल हो गया।
अक्सर पूछे जाने वाले प्रश्न
**यदि मैं संपीड़न का उपयोग नहीं करना चाहता तो क्या मुझे कुछ बदलने की आवश्यकता है?**
नहीं। `Content-Encoding` समर्थन additive है — इस header के बिना requests को पहले की तरह ही सामान्य रूप से process किया जाता रहता है।
**क्या यह API प्रतिक्रिया को प्रभावित करता है?**
नहीं। यह feature केवल क्लाइंट द्वारा भेजे गए body (request) से संबंधित है। प्रतिक्रिया संपीड़न (API जो लौटाता है) `Accept-Encoding` header द्वारा अलग से नियंत्रित होता है।
**मुझे कौन सा प  ्रारूप चुनना चाहिए?**
`gzip` का उपयोग करें, जब तक कि आपके environment में कोई विशेष सीमा किसी अन्य प्रारूप की आवश्यकता न बताए।
### उदाहरण​

ऑनबोर्डिंग — cURLऑनबोर्डिंग — Node.jsTransactional — cURLTransactional — Node.jsCardholder Verification — cURLCardholder Verification — Node.js```
curl -X POST https://api.id.unico.app/processes/v1 \  -H "Authorization: Bearer $TOKEN" \  -H "APIKEY: $API_KEY" \  -H "Content-Type: application/json" \  -d '{    "subject": {      "duiType": 1,      "code": "12345678909",      "name": "Luke Skywalker",      "gender": "M",      "birthDate": "2000-05-20",      "email": "luke@example.com",      "phone": "5519725570707"    },    "useCase": "Onboarding",    "imageBase64": "/9j/4AAQSkZJR..."  }'
```

```
import fetch from 'node-fetch';const res = await fetch('https://api.id.unico.app/processes/v1', {  method: 'POST',  headers: {    'Authorization': `Bearer ${process.env.UNICO_ACCESS_TOKEN}`,    'APIKEY': process.env.UNICO_API_KEY,    'Content-Type': 'application/json'  },  body: JSON.stringify({    subject: {      duiType: 1,      code: '12345678909',      name: 'Luke Skywalker',      gender: 'M',      birthDate: '2000-05-20',      email: 'luke@example.com',      phone: '5519725570707'    },    useCase: 'Onboarding',    imageBase64: capturedImage  })});const result = await res.json();
```

```
curl -X POST https://api.id.unico.app/processes/v1 \  -H "Authorization: Bearer $TOKEN" \  -H "APIKEY: $API_KEY" \  -H "Content-Type: application/json" \  -d '{    "references": [      {        "referenceType": "REFERENCE_TYPE_PROCESS_ID",        "referenceContent": "4f00b35f-69d4-415a-a843-d975cefcb169"      }    ],    "useCase": "Transactional",    "imageBase64": "/9j/4AAQSkZJR..."  }'
```

```
import fetch from 'node-fetch';const res = await fetch('https://api.id.unico.app/processes/v1', {  method: 'POST',  headers: {    'Authorization': `Bearer ${process.env.UNICO_ACCESS_TOKEN}`,    'APIKEY': process.env.UNICO_API_KEY,    'Content-Type': 'application/json'  },  body: JSON.stringify({    references: [      {        referenceType: 'REFERENCE_TYPE_PROCESS_ID',        referenceContent: '4f00b35f-69d4-415a-a843-d975cefcb169'      }    ],    useCase: 'Transactional',    imageBase64: capturedImage  })});const result = await res.json();
```

```
curl -X POST https://api.id.unico.app/processes/v1 \  -H "Authorization: Bearer $TOKEN" \  -H "APIKEY: $API_KEY" \  -H "Content-Type: application/json" \  -d '{    "subject": {      "duiType": 1,      "code": "12345678909"    },    "card": {      "bin": "12345678",      "last4": "4321",      "name": "Luke Skywalker"    },    "referenceProcessId": "4f00b35f-69d4-415a-a843-d975cefcb169",    "useCase": "CardholderVerification"  }'
```

```
import fetch from 'node-fetch';const res = await fetch('https://api.id.unico.app/processes/v1', {  method: 'POST',  headers: {    'Authorization': `Bearer ${process.env.UNICO_ACCESS_TOKEN}`,    'APIKEY': process.env.UNICO_API_KEY,    'Content-Type': 'application/json'  },  body: JSON.stringify({    subject: {      duiType: 1,      code: '12345678909'    },    card: {      bin: '12345678',      last4: '4321',      name: 'Luke Skywalker'    },    referenceProcessId: '4f00b35f-69d4-415a-a843-d975cefcb169',    useCase: 'CardholderVerification'  })});const result = await res.json();
```

### प्रतिक्रियाएं​

ऑनबोर्डिंगTransactionalCardholder Verification200 OKContract अद्वितीय है — `idCloud.result` फ़ील्  ड में उपयोग की गई capabilities का समेकित निर्णय होता है।Unico निष्पादित capabilities के परिणामों को एकल `idCloud.result` में समेकित करता है, जो आपके flow के अगले चरण को तय करने के लिए तैयार होता है — व्यक्तिगत परिणामों को व्यवस्थित करने की आवश्यकता के बिना।```
{  "id": "80371b2a-3ac7-432e-866d-57fe37896ac6",  "status": 3,  "idCloud": {    "result": "approved"  }}
```

FieldTypeविवरण`id`string (UUID)Process identifier। पुनः-क्वेरी के लिए [Get Process](/hi/dual-api/developers/api-reference/api/get-process) के साथ उपयोग करें।`status`integer`1` (processing), `3` (सफलतापूर्वक समाप्त), `5` (त्रुटि)।Possible result valuesidCloud.resultअर्थअनुशंसित कार्रवाईapprovedवास्तविक व्यक्ति और सत्यापित पहचान।flow के साथ आगे बढ़ें।deniedपहचान सत्यापित नहीं हुई, लाइवनेस जाँच विफल रही, या अत्यधिक जोखिम की पहचान हुई।flow समाप्त करें या किसी वैकल्पिक flow पर रीडायरेक्ट करें।critical-riskगंभीर जोखिम स्तर की पहचान हुई।flow समाप्त करें या मैन्युअल समीक्षा पर भेजें।high-riskउच्च जोखिम स्तर की पहचान हुई।मैन्युअल समीक्षा या किसी वैकल्पिक flow पर भेजें।retryमूल्यांकन के लिए अपर्याप्त कैप्चर या स्कोर।उपयोगकर्ता से नया कैप्चर माँगें।inconclusiveनिर्णय के लिए पर्याप्त साक्ष्य नहीं।मैन्युअल समीक्षा या किसी वैकल्पिक flow पर भेजें।लौटाए गए मान आपकी APIKey में configured recipe पर निर्भर करते हैं। प्रत्येक recipe जो परिणाम मान लौटा सकती है, उसके लिए [प्रवाह](/hi/dual-api/developers/api-reference/api/flows) देखें।ब्राज़ील में क्लाइंट प्रति-capability प्रतिक्रिया प्राप्त कर सकते हैंसमग्र प्रतिक्रिया संरचना वही रहती है — एकल परिणाम डिफ़ॉल्ट है।ब्राज़ील में integrations प्रति-capability खुले परिणाम प्राप्त कर सकती हैं। APIKey में सक्षम प्रत्येक capability प्रतिक्रिया में अपना स्वयं का ब्लॉक जोड़ती है — अक्षम capabilities के फ़ील्ड पूरी तरह छोड़ दिए जाते हैं।```
{  "id": "80371b2a-3ac7-432e-866d-57fe37896ac6",  "status": 3,  "unicoId": { "result": "yes" },  "riskLevel": { "result": "inconclusive" },  "idFace": {    "personId": "a1b2c3d4e5f67890a1b2c3d4e5f67890a1b2c3d4e5f67890a1b2c3d4e5f67890",    "result": "FOUND"  },  "government": { "serpro": 87 },  "liveness": 1}
```

प्रतिक्रिया फ़ील्ड आपकी APIKey पर निर्भर करते हैंऊपर दिया गया उदाहरण सभी संभावित capability फ़ील्ड दिखाता है। आपकी वास्तविक प्रतिक्रिया में केवल वे फ़ील्ड शामिल होंगे जो आपकी APIKey कॉन्फ़िगरेशन में सक्षम capabilities के लिए हैं — अक्षम capabilities के फ़ील्ड पूरी तरह से छोड़ दिए जाते हैं। capabilities को सक्षम करने या समायोजित करने के लिए अपने Unico प्रोजेक्ट मैनेजर से संपर्क करें।FieldTypeविवरण`unicoId.result`string`yes`, `no`, `inconclusive` — [पहचान सत्यापन](/hi/capabilities/identity-verification) देखें।`riskLevel.result`string`approved`, `reproved`, `risk-critical`, `risk-high`, `inconclusive` — नीचे [संभावित मान](#risklevel-values) देखें या [धोखाधड़ी जोखिम वर्गीकरण](/hi/capabilities/fraud-risk-classification) देखें।`idFace.result`string`FOUND` — फेस आइडेंटिफायर देखें।`idFace.personId`stringचेहरे के लिए स्थिर अपारदर्शी पहचानकर्ता, जो `idFace.result = FOUND` के साथ लौटाया जाता है। जब छवि में किसी चेहरे की पहचान नहीं की जा सकती, तो request [`20532`](#error-codes) error के साथ विफल हो जाता है, `idFace` block लौटाने के बजाय।`identityFraudsters.result`string**बहिष्कृत.** इसके बजाय `riskLevel` का उपयोग करें। जारी एकीकरण वाले ग्राहक प्रोजेक्ट टीम के साथ माइग्रेशन का समन्वय करते हुए इसका उपयोग जारी रख सकते हैं।`government.serpro`integerSerpro similarity score (0–100, -1, -2)। केवल ब्राज़ील में उपलब्ध। [सेर्प्रो समानता रिटर्न](/hi/capabilities/serpro-similarity-return) देखें।`liveness`integer`1` (passed), `2` (failed) — [लाइवनेस](/hi/capabilities/liveness) देखें।riskLevel.result — संभावित मानमानअर्थ`approved`यह ID धारक का चेहरा है, और धोखाधड़ी से संबंधित कोई साक्ष्य नहीं मिला।`reproved`अस्वीकृति की अनुशंसा की जाती है, क्योंकि कई धोखाधड़ी संकेतक पाए गए।`risk-critical`अस्वीकृति की अनुशंसा की जाती है, लेकिन अंतिम निर्णय आपके विवेक पर निर्भर है। क्रिटिकल जोखिम इंगित करता है कि हमें धोखाधड़ी के कम से कम 2 मजबूत साक्ष्य मिले हैं।`risk-high`अस्वीकृति की भी अनुशंसा की जाती है, लेकिन निर्णय आपका है। उच्च जोखिम इंगित करता है कि हमें धोखाधड़ी का कम से कम एक मजबूत साक्ष्य मिला है।`inconclusive`धोखाधड़ी का कोई मजबूत साक्ष्य नहीं मिला। इसलिए, यह निष्कर्ष निकालना संभव नहीं है कि कोई प्रासंगिक जोखिम है या नहीं।जानकारीजब `unicoId.result = inconclusive` और धोखाधड़ी जोखिम वर्गीकरण orchestration सक्रिय हो, तो प्रक्रिया `status: 1` (processing) लौटा सकती है। अंतिम परिणाम प्राप्त करने के लिए [Get Process](/hi/dual-api/developers/api-reference/api/get-process) को poll करें या webhooks का उपयोग करें।मेक्सिको में क्लाइंट RENAPO Verification block प्राप्त कर सकते हैंप्रतिक्रिया की संरचना वही रहती है और उसमें idGov block जुड़ जाता है।RENAPO Verification सक्षम होने पर मेक्सिको में integrations को एक अतिरिक्त idGov block मिलता है, जिसमें उपयोगकर्ता के CURP के लिए RENAPO के पास मौजूद रिकॉर्ड होता है। यह पहचान परिणाम से एक अलग उत्तर है।```
{  "id": "11111111-2222-3333-4444-555555555555",  "status": 3,  "idCloud": { "result": "approved" },  "idGov": {    "government_valid": true,    "curp": "PUEA880304MDFRJN04",    "government_name": "ANA PRUEBA EJEMPLO",    "date_of_birth": "1988-03-04",    "age": 38,    "gender": "F",    "deceased": false,    "is_mexican": true,    "citizenship": "MEXICO",    "state_of_birth": "Ciudad de México",    "state_iso": "MX-CMX",    "issuing_entity_code": "DF",    "municipality_registration": ""  }}
```

FieldTypeविवरण`idGov`objectCURP के लिए RENAPO रिकॉर्ड। capability सक्षम न होने पर अनुपस्थित। RENAPO के उत्तर न देने पर `{}`। केवल मेक्सिको में। [RENAPO Verification](/hi/capabilities/renapo-verification) देखें।200 OKContract अद्वितीय है — `idCloud.result` फ़ील्ड में उपयोग की गई capabilities का समेकित निर्णय होता है।Unico निष्पादित capabilities के परिणामों को एकल `idCloud.result` में समेकित करता है, जो आपके flow के अगले चरण को तय करने के लिए तैयार होता है — व्यक्तिगत परिणामों को व्यवस्थित कर  ने की आवश्यकता के बिना।```
{  "id": "80371b2a-3ac7-432e-866d-57fe37896ac6",  "status": 3,  "idCloud": {    "result": "approved"  }}
```

FieldTypeविवरण`id`string (UUID)Process identifier।`status`integer`3` (सफलतापूर्वक समाप्त), `5` (त्रुटि)। सभी संभावित values के लिए, [Get Process](/hi/dual-api/developers/api-reference/api/get-process) देखें।Possible result valuesidCloud.resultअर्थअनुशंसित कार्रवाईapprovedवास्तविक व्यक्ति और सत्यापित पहचान।flow के साथ आगे बढ़ें।deniedपहचान सत्यापित नहीं हुई, लाइवनेस जाँच विफल रही, या अत्यधिक जोखिम की पहचान हुई।flow समाप्त करें या किसी वैकल्पिक flow पर रीडायरेक्ट करें।critical-riskगंभीर जोखिम स्त  र की पहचान हुई।flow समाप्त करें या मैन्युअल समीक्षा पर भेजें।high-riskउच्च जोखिम स्तर की पहचान हुई।मैन्युअल समीक्षा या किसी वैकल्पिक flow पर भेजें।retryमूल्यांकन के लिए अपर्याप्त कैप्चर या स्कोर।उपयोगकर्ता से नया कैप्चर माँगें।inconclusiveनिर्णय के लिए पर्याप्त साक्ष्य नहीं।मैन्युअल समीक्षा या किसी वैकल्पिक flow पर भेजें।लौटाए गए मान आपकी APIKey में configured recipe पर निर्भर करते हैं। प्रत्येक recipe जो परिणाम मान लौटा सकती है, उसके लिए [प्रवाह](/hi/dual-api/developers/api-reference/api/flows) देखें।ब्राज़ील में क्लाइंट प्रति-capability प्रतिक्रिया प्राप्त कर सकते हैंसमग्र प्रतिक्रिया संरचना वही रहती है — एकल परिणाम डि  फ़ॉल्ट है।ब्राज़ील में integrations प्रति-capability खुले परिणाम प्राप्त कर सकती हैं। APIKey में सक्षम प्रत्येक capability प्रतिक्रिया में अपना स्वयं का ब्लॉक जोड़ती है — अक्षम capabilities के फ़ील्ड पूरी तरह छोड़ दिए जाते हैं।```
{  "id": "80371b2a-3ac7-432e-866d-57fe37896ac6",  "status": 3,  "biometryToken": { "result": true },  "liveness": 1}
```

FieldTypeविवरण`biometryToken.result`boolean`true` यदि submit किया गया चेहरा reference process से मेल खाता है; अन्यथा `false`।`liveness`integer`1` (passed), `2` (failed) — [लाइवनेस](/hi/capabilities/liveness) देखें।200 OK```
{  "id": "80371b2a-3ac7-432e-866d-57fe37896ac6",  "status": 3,  "cardholderVerification": {    "result": "approved"  }}
```

FieldTypeविवरण`id`string (UUID)Process identifier।`status`integer`1` (processing), `3` (सफलतापूर्वक समाप्त), `5` (त्रुटि)। सभी मानों के लिए, [Get Process](/hi/dual-api/developers/api-reference/api/get-process) देखें।`cardholderVerification.result`string`approved` — CPF और कार्ड एक ही व्यक्ति के हैं। `unsure` — या तो पुनः उपयोग गेट संतुष्ट नहीं हुआ, या सत्यापन स्वयं अनिर्णायक था। जब तक `status` अभी `3` न हो, तब तक अनुपस्थित। [Cardholder Verification](/hi/capabilities/cardholder-verification) देखें।
### त्रुटि कोड​

400 Bad Request403 Forbidden409 Conflict429 Too Many Requests500 Internal Server Errorकोडसंदेशविवरण`40221`This flow does not support reusing a prior process (referenceProcessId or bioTokenId) without an image; send an image (imageBase64, or references[0] with type IMAGE_BASE64) instead.पुन:उपयोग फ़्लो (`referenceProcessId`/`bioTokenId`, बिना इमेज के) अस्वीकृत कर दिया गया क्योंकि इस API कुंजी के लिए प्रोसेस पुन:उपयोग सक्षम नहीं है।`20900`O base64 informado não é válido.base64 पैरामीटर अमान्य है। संभावित कारण: यह छवि नहीं है या injection का प्रयास है।`20807`A imagem precisa estar no padrão HD ou possuir uma resolução superior a 640 x 480.अपलोड की गई छवि का रिज़ॉल्यूशन बहुत कम है।`20532`No face detected in image.सबमिट की गई छवि में कोई चेहरा नहीं पाया जा सका।`20513`The referenced process was not found.`referenceProcessId` एक ऐसी प्रक्रिया की ओर इंगित करता है जो मौजूद नहीं है या अब उपलब्ध नहीं है।`20512`The referenced process is not available for reuse.संदर्भित प्रक्रिया मौजूद है लेकिन पुन:उपयोग के लिए उपलब्ध नहीं है।`20509`The subject.name field is invalid.`subject.name` में अमान्य वर्ण हैं।`20508`The subject.gender field is invalid.`subject.gender` का मान `M` या `F` होना चाहिए।`20507`O parâmetro subject.code é inválido.गैर-मानक या अस्तित्वहीन CPF।`20506`O base64 informado é muito grande. O tamanho máximo suportado é até 800kb.छवि आकार 800 KB से अधिक है; JPEG92 में संपीड़ित करें।`20505`O base64 informado não é suportado. Os formatos aceitos são png, jpeg e webp.base64 प्रारूप अमान्य या असमर्थित है।`20065`The referenceProcessId field is invalid.`referenceProcessId` वैध UUID नहीं है।`20062`The useCase field is invalid.`useCase` फ़ील्ड में अपरिचित मान।`20024`The referenceProcessId field is missing.`referenceProcessId` पैरामीटर प्रदान नहीं किया गया और `references` को विकल्प के रूप में नहीं भेजा गया। Cardholder Verification पर लागू नहीं होता — इसका `referenceProcessId` कभी भी आवश्यक के रूप में सत्यापित नहीं होता; एक असंतुष्ट पुनः उपयोग गेट इसके बजाय `unsure` जवाब देता है।`20533`The card field is missing.[Cardholder Verification](/hi/capabilities/cardholder-verification): `card` object प्रदान नहीं किया गया।`20534`The card.bin field is missing.[Cardholder Verification](/hi/capabilities/cardholder-verification): `card.bin` प्रदान नहीं किया गया।`20535`The card.last4 field is missing.[Cardholder Verification](/hi/capabilities/cardholder-verification): `card.last4` प्रदान नहीं किया गया।`20536`The card data is invalid.[Cardholder Verification](/hi/capabilities/cardholder-verification): कार्ड डेटा को अमान्य के रूप में अस्वीकृत कर दिया गया।`20021`The subject.phone field is invalid.`subject.phone` प्रारूप अमान्य (IDD + area code + number, 13 वर्ण)।`20019`The subject.birthDate field is invalid.`subject.birthDate` ISO 8601 प्रारूप (`YYYY-MM-DD`) से बाहर है।`20009`O parâmetro imagebase64 não foi informado.selfie छवि पैरामीटर अनुपस्थित।`20008`The subject.email field is invalid.`subject.email` में अमान्य ईमेल प्रारूप।`20006`O parâmetro subject.name não foi informado.subject.name पैरामीटर अनुपस्थित।`20005`O parâmetro subject.code não foi informado.subject.code पैरामीटर अनुपस्थित।`20004`O parâmetro subject não foi informado.subject पैरामीटर अनुपस्थित।`20003`The request body is missing or invalid.Null या अमान्य payload।`20002`O parâmetro APIKey não foi informado.APIKEY पैरामीटर अनुरोध header से अनुपस्थित।`20001`O parâmetro authtoken não foi informado.integration token पैरामीटर अनुरोध header से अनुपस्थित।`10508`The JWT with the captured face has already been used.JWT केवल एक बार उपयोग किया जा सकता है।`10507`The JWT with the captured face is expired.JWT समाप्त हो गया; 10 मिनट के भीतर भेजना होगा।`10506`The imageBase64 field is not a valid JWT from SDK.`imageBase64` SDK द्वारा उत्पन्न वैध JWT नहीं है।Bearer token या `APIKEY` अनुपस्थित, expired, या अमान्य है। [Authentication](/hi/dual-api/developers/api-reference/authentication) देखें।कोडसंदेशविवरण`30017`User does not have permission to perform this action.अविधिमान्य JWT या उपयोगकर्ता के पास यह ऑपरेशन करने की अनुमति नहीं।`10502`O token informado está expirado.access-token समाप्त हो गया।`10501`O token informado é inválido.authentication token अमान्य है।`10201`O AppKey informado é inválido.APIKEY अमान्य है या मौजूद नहीं है।कोडसंदेशविवरण`20073`The processID already exists.प्रदान किया गया `processId` इस tenant के लिए पहले से मौजूद है।Rate limit पहुंच गई। `Retry-After` response header में दर्शाए गए अंतराल के बाद पुनः प्रयास करें। [Rate limits](/hi/dual-api/developers/api-reference/rate-limits) देखें।कोडसंदेशविवरण`99999`Internal failure! Try again laterआंतरिक त्रुटि होने पर।
### आगे क्या है​

किसी ऑनबोर्डिंग प्रक्रिया के परिणाम को query करने के लिए, [Get Process](/hi/dual-api/developers/api-reference/api/get-process) देखें।
सभी recipe combinations और उनके संभावित result मानों को देखने के लिए, [प्रवाह](/hi/dual-api/developers/api-reference/api/flows) देखें।
Document और आयु सत्यापन operations के लिए, इस अनुभाग के संबंधित पृष्ठ देखें।
अंतिम अपडेट 8 अक्टू॰ 2026** को