# Send Consent Request

#### <mark style="color:green;">Send Consent Request (/api/v1/consent/transaction/send)</mark>&#x20;

### Request

This endpoint triggers a notification on UAEPASS App of the user requesting for the consent of the user to share the documents with the requestor.

| API URL                 | [https://stg-apis.uaepass.ae/api/v1/consent/transaction/send  ](https://stg-apis.uaepass.ae/api/v1/consent/transaction/send)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Source                  | Service Provider (Data Owner)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| Target                  | UAEPASS                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Message Type            | JSON                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Communication Mechanism | REST/HTTPS                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| SSL Enabled?            | YES                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Method                  | POST                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Security                | client credentials grant                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| Headers                 | <p>X-Timestamp: \[time this request was generated, used in HMAC token generation] </p><p></p><p>X-UAEPASS-Signature: Refer section <mark style="color:green;">API nonrepudiation – HMAC</mark> in <a href="../api-security#api-nonrepudiation-hmac">SECURITY</a>.</p><p></p><p>X-UP-AccessToken: Refer section <mark style="color:green;">Generating client credential tokens</mark> <mark style="color:$info;">in</mark> <a href="api-security"><mark style="color:blue;">Security</mark></a></p><p></p><p>Authorization: Refer section <mark style="color:green;">Generating client credential tokens</mark> in <a href="api-security">Security</a>.</p> |

#### Request Parameters

| Name                                                          | Type   | Mandatory/Optional | Description                                                                                                                                                                    |
| ------------------------------------------------------------- | ------ | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Identifier                                                    | String | M                  | Emirates id or passport number based on document id type                                                                                                                       |
| idDocType                                                     | String | M                  | Expected Values: \[EMIRATES\_ID, PASSPORT, GCC\_NATIONAL\_ID\_CARDS]                                                                                                           |
| requestedById                                                 | String | O                  | <p> Client id for the requesting SP in the UAE Pass backend.  </p><p>Mandatory in case of SP-to-SP data sharing flow.  </p><p>Not applicable in case of Peer-to-Peer flow </p> |
| spId                                                          | String | M                  | Configured Service Provider’s (Data Owner) client id in the UAE Pass backend                                                                                                   |
| spTransactionID                                               | String | M                  | Transaction id generated by the service provider                                                                                                                               |
| purpose                                                       | String | O                  | Requestor’s Reason for requesting authorization from UAE Pass User in english.                                                                                                 |
| purposeAr                                                     | String | O                  | Requestor’s Reason for requesting authorization from UAEPass User in arabic.                                                                                                   |
| requestType                                                   | String | O                  | <p>Expected Values \[peerToPeer, spToSp]. </p><p>spToSp is a default value. </p>                                                                                               |
| Requestor                                                     | Object | O                  | <p> These Fields are mandatory for request type \[peerToPeer]. </p><p>idType : Expected Values: \[EMIRATES\_ID,  PASSPORT, GCC\_NATIONAL\_ID\_CARDS] </p>                      |
| requestor.name                                                | String | O                  | <p> These Fields are mandatory for request type \[peerToPeer]. </p><p>idType : Expected Values: \[EMIRATES\_ID,  PASSPORT, GCC\_NATIONAL\_ID\_CARDS] </p>                      |
| requestor.nameAr                                              | String | O                  | <p> These Fields are mandatory for request type \[peerToPeer]. </p><p>idType : Expected Values: \[EMIRATES\_ID,  PASSPORT, GCC\_NATIONAL\_ID\_CARDS] </p>                      |
| requestor.identifier                                          | String | O                  | <p> These Fields are mandatory for request type \[peerToPeer]. </p><p>idType : Expected Values: \[EMIRATES\_ID,  PASSPORT, GCC\_NATIONAL\_ID\_CARDS] </p>                      |
| requestor.idType                                              | String | O                  | <p> These Fields are mandatory for request type \[peerToPeer]. </p><p>idType : Expected Values: \[EMIRATES\_ID,  PASSPORT, GCC\_NATIONAL\_ID\_CARDS] </p>                      |
| requestor.additionalInfo                                      | Object | O                  | It is map object with extra info and won’t be shown in screen.                                                                                                                 |
| Content                                                       | Object | M                  | Content of the request                                                                                                                                                         |
| <p>content  </p><p>.documents </p>                            | List   | M                  | List of documents                                                                                                                                                              |
| content.documents name                                        | String | M                  | document Name                                                                                                                                                                  |
| <p>content  </p><p>.documents.nameAr </p>                     | String | M                  | document Name in arabic                                                                                                                                                        |
| <p>content  </p><p>.documents\[0].type </p>                   | String | M                  | Document type                                                                                                                                                                  |
| <p>ct </p><p>.ypeAr </p>                                      | String | M                  | Document type in arabic                                                                                                                                                        |
| <p>content  </p><p>.documents\[0].metadata </p>               | List   | M                  | List of meta data                                                                                                                                                              |
| <p>content  </p><p>.documents\[0].metadata.displayName </p>   | String | M                  | Name of each point meta data                                                                                                                                                   |
| <p>content  </p><p>.documents\[0].metadata.displayNameAr </p> | String | M                  | Name in arabic of each point meta data                                                                                                                                         |

#### Sample Request

```
{ 

    "identifier": "7841995659945349000", 

    "idDocType": "EMIRATES_ID", 

    "requestedById": "requester_sp_client_id", 

    "spId": "owner_sp_client_id", 

    "spTransactionID": "spTransactionID-208", 

    "purpose": "Dicsdetek contract", 

    "purposeAr": "عقد ديسيتيك", 

    "requestType": "spToSp", 

    "requestor": { 

        "name": "mohamed", 

        "nameAr": "محمد", 

        "identifier": "7841984319372919", 

        "idType": "EMIRATES_ID", 

        "additionalInfo": { 

            "address": "dubai", 

            "mobile": "0555566556" 

        } 

    }, 

    "content": { 

        "documents": [ 

            { 

                "name": "Salary Certifcate", 

                "nameAr": "المرتب", 

                "type": "Document", 

                "typeAr": "الوثيقة", 

                "metaData": [ 

                    { 

                        "displayName": "Salary", 

                        "displayNameAr": "الراتب" 

                    }, 

                    { 

                        "displayName": "Allowance", 

                        "displayNameAr": "البدل" 

                    }, 

                    { 

                        "displayName": "Job Title", 

                        "displayNameAr": "المسمى وظيفي" 

                    }, 

                    { 

                        "displayName": "Date of Birth", 

                        "displayNameAr": "التاريخ الميلاد" 

                    } 

                ] 

            } 

        ] 

    } 

} 
```

#### Curl Command

```
curl --location --request POST '/v1/consent/transaction/send' \
--header 'X-Timestamp: 1700000000' \
--header 'X-UAEPASS-Signature: {{X-UAEPASS-Signature}}' \
--header 'X-UP-AccessToken: {{datasharing_ccg_access_token}}' \
--header 'Authorization: JWS {{datasharing_ccg_jwt_token}}' \
--header 'User-Agent: Apidog/1.0.0 (https://apidog.com)' \
--header 'Content-Type: application/json' \
--data-raw '{
    "identifier": "784190000000000",
    "idDocType": "EMIRATES_ID",
    "requestedById": "abcdef_mob_prod",
    "spId": "dataowner_client_id",
    "spTransactionID": "XXX-12520",
    "requestType": "peerToPeer",
    "requestor": {
        "name": "ahmed",
        "nameAr": "احمد",
        "identifier": "7841900000000",
        "idType": "EMIRATES_ID",
        "additionalInfo": {
            "address": "dubai",
            "mobile": "05500000000"
        }
    },
    "content": {
        "documents": [
            {
                "name": "ABCD contract 2024.pdf",
                "nameAr": 2024.pdf",
                "type": "Salary document",
                "typeAr": "وثيقة الراتب",
                "metaData": [
                    {
                        "displayName": "Salary",
                        "displayNameAr": "الراتب"
                    },
                    {
                        "displayName": "Allowance",
                        "displayNameAr": "البدل"
                    },
                    {
                        "displayName": "Job Title",
                        "displayNameAr": "المسمى وظيفي"
                    },
                    {
                        "displayName": "Date of Birth",
                        "displayNameAr": "التاريخ الميلاد"
                    }
                ]
            }
        ]
    }
}'
```

### Response

#### Response Parameters

| Name                 | Type   | Mandatory/Optional | Description                                    |
| -------------------- | ------ | ------------------ | ---------------------------------------------- |
| uaePassTransactionID | String | M                  | Generated uaepass id                           |
| transactionStatus    | String | M                  | Status will be for initial status as TRIGGERED |
| spTransactionID      | String | O                  | Request transaction                            |

#### Sample Success Reponse

```
{ 

    "code": "0", 

    "desc": { 

        "ar": "تم تشغيل الإخطار بنجاح.", 

        "en": "Notification has been triggered successfully." 

    }, 

    "data": { 

        "uaePassTransactionID": "08c03fd4-1a99-4e6e-bb9c-793b1a4bb7b6", 

        "spTransactionID": "spTransactionID-212", 

        "transactionStatus": "TRIGGERED" 

    } 

} 
```

#### Error Response Codes

| Description                                                         | Error Message                                                                                                                                                                                                                                                                                                                                               | Http Status Code |
| ------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------- |
| Transaction Id Already Exist                                        | <p>{ </p><p>    "code": "CONS\_1000001", </p><p>    "desc": { </p><p>        "ar": "المعاملة موجودة بالفعل.", </p><p>        "en": "Transaction already exists." </p><p>    } </p><p>} </p><p></p>                                                                                                                                                          | 409              |
| Missing headers: \[X-UAEPASS-Signature - X-Timestamp]               | <p>{ </p><p>    "code": "401", </p><p>    "desc": { </p><p>        "ar": "UNAUTHORIZED", </p><p>        "en": "UNAUTHORIZED" </p><p>    } </p><p>} </p>                                                                                                                                                                                                     | 401              |
| User Profile does not exist                                         | <p>{ </p><p>    "code": "0001", </p><p>    "desc": { </p><p>        "ar": "ملف تعريف المستخدم غير موجود", </p><p>        "en": "User Profile does not exist with provided details" </p><p>    } </p><p>} </p>                                                                                                                                               | 404              |
| Mismatch Document Id type with user profile                         | <p>{ </p><p>    "code": "CONS\_1000002", </p><p>    "desc": { </p><p>        "ar": "نوع مستند الهوية خاطئ.", </p><p>        "en": "Wrong Id document type." </p><p>    } </p><p>} </p>                                                                                                                                                                      | 409              |
| Account is not verified                                             | <p>{ </p><p>    "code": "CONS\_1000003", </p><p>    "desc": { </p><p>        "ar": "لم يتم التحقق من الحساب.", </p><p>        "en": "Account is not verified" </p><p>    } </p><p>} </p>                                                                                                                                                                    | 094              |
| Missing Configuration in Backend                                    | <p>{ </p><p>    "code": "CONS\_1000004", </p><p>    "desc": { </p><p>        "ar": "الاعدادات المطلوبة مفقودة.", </p><p>        "en": "Required configuration is missing" </p><p>    } </p><p>} </p>                                                                                                                                                        | 500              |
| X-UAEPASS-Signature is mismatch with generated signature in backend | <p>{ </p><p>    "code": "CONS\_1000005", </p><p>    "desc": { </p><p>        "ar": "التوقيع غير صحيح.", </p><p>        "en": "Invalid signature." </p><p>    } </p><p>} </p>                                                                                                                                                                                | 401              |
| Invalid Document Type                                               | <p>{ </p><p>    "code": "CONS\_1000006", </p><p>    "desc": { </p><p>        "ar": "idDocType is missing or invalid value, allowed values \[EMIRATES\_ID, PASSPORT, GCC\_NATIONAL\_ID\_CARDS]", </p><p>        "en": "idDocType is missing or invalid value, allowed values \[EMIRATES\_ID, PASSPORT, GCC\_NATIONAL\_ID\_CARDS]" </p><p>    } </p><p>} </p> | 400              |
| Consent Already done                                                | <p>{ </p><p>    "code": "CONS\_1000011", </p><p>    "desc": { </p><p>        "ar": "تمت الموافقة على المعاملة رقم \[spTransactionID-apidog-494]، وحالتها الحالية هي \[ACCEPTED].", </p><p>        "en": "Consent for transaction ID \[spTransactionID -494] has been done. Its current status is \[ACCEPTED]." </p><p>    } </p><p>} </p>                   | 409              |
| Service Provider \[owner\_sp\_client\_id] is not found.             | <p>{ </p><p>    "code": "CONS\_1000012", </p><p>    "desc": { </p><p>        "ar": "مقدم الخدمة \[owner\_sp \_client\_id] غير موجودة.", </p><p>        "en": "Service Provider \[owner\_sp \_client\_id] is not found." </p><p>    } </p><p>} </p>                                                                                                          | 404              |
| <p>invalid identifier                                               |                                                                                                                                                                                                                                                                                                                                                             |                  |
| <br>ex: "identifier": "X"</p>                                       | <p>{ </p><p>    "code": "UMS\_VAL\_025", </p><p>    "desc": { </p><p>        "ar": " الهوية غير صحيحة", </p><p>        "en": "invalid identifier" </p><p>    } </p><p>} </p>                                                                                                                                                                                | 400              |
