# UAE Pass

UAE Pass is the UAE's national digital identity solution, providing secure and seamless access to government and private sector services. It simplifies authentication with a single digital identity, reducing complexity and enhancing security.

This guide explains how to integrate with the UAE Pass API, including endpoints, authentication, error handling, and best practices.

***

#### Key Features

* **Unified Identity**: Access multiple services with one secure login.
* **Enhanced Security**: Advanced encryption and multi-factor authentication.
* **Easy Integration**: Streamlined APIs for quick deployment.
* **Future-Ready**: Supports the UAE’s smart digital economy vision.

***

#### Services

1. **Authentication**: Verify user identity.
2. **Digital Signing**: Enable legally valid digital document signing.

***

#### Usage Flow

1. Choose a service
2. Send a corresponding request in the ***Request Data*** folder
3. Send follow up request(s)\* to ***Polling/Poll Data***

***

Integrate UAE Pass to deliver secure and efficient digital experiences.

## Authentication

> Retrieves user identity details following a successful UAE Pass login.

```json
{"openapi":"3.1.0","info":{"title":"Fill Easy Services","version":"1.0.0"},"tags":[{"name":"UAE Pass","description":"UAE Pass is the UAE's national digital identity solution, providing secure\nand seamless access to government and private sector services. It\nsimplifies authentication with a single digital identity, reducing\ncomplexity and enhancing security.\n\n\nThis guide explains how to integrate with the UAE Pass API, including\nendpoints, authentication, error handling, and best practices.\n\n\n---\n\n\n### Key Features\n\n\n- **Unified Identity**: Access multiple services with one secure login.\n    \n- **Enhanced Security**: Advanced encryption and multi-factor\nauthentication.\n    \n- **Easy Integration**: Streamlined APIs for quick deployment.\n    \n- **Future-Ready**: Supports the UAE’s smart digital economy vision.\n    \n\n---\n\n\n### Services\n\n\n1. **Authentication**: Verify user identity.\n    \n2. **Digital Signing**: Enable legally valid digital document signing.\n    \n\n---\n\n\n### Usage Flow\n\n\n1. Choose a service\n    \n2. Send a corresponding request in the _**Request Data**_ folder\n    \n3. Send follow up request(s)\\* to _**Polling/Poll Data**_\n    \n\n---\n\n\nIntegrate UAE Pass to deliver secure and efficient digital experiences.\n"}],"servers":[{"url":"sandbox.staging-api.fill-easy.com"}],"security":[{"ClientID":[],"ClientSecret":[]}],"components":{"securitySchemes":{"ClientID":{"type":"apiKey","description":"Client ID in x-client-id header.","name":"x-client-id","in":"header"}},"schemas":{"RedirectUri":{"type":"string","description":"Redirect URI after user authorization.\n\nBrowser: https URL to your website.\n\nMobile: Universal link (your-app://) or app scheme.\n"},"Error":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message"}}}},"responses":{"BadRequest":{"description":"Bad Request - Invalid input parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"InternalServerError":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"paths":{"/uaepass/request/auth":{"post":{"tags":["UAE Pass"],"summary":"Authentication","description":"Retrieves user identity details following a successful UAE Pass login.","operationId":"uaepassAuth","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["redirect","source"],"properties":{"redirect":{"$ref":"#/components/schemas/RedirectUri"},"scope":{"type":"string","description":"List of values, separated by spaces, that represent the scope of the authorization that the application wants to obtain.\nIt queries the scopes required for accessing the resources or services in question.\nAvailable scopes: sub, fullnameAR, gender, mobile, lastnameEN, fullnameEN, uuid, lastnameAR, idn, nationalityEN, firstnameEN, userType, nationalityAR, firstnameAR, email.\n(To be shared by UAEPASS Team if its value is other than specified in sample above)\n"},"lang":{"type":"string","enum":["en","ar"],"description":"UAE Pass display language, case sensitive"},"source":{"type":"string","enum":["PC_Browser","android","iOS","Mobile_Browser"],"description":"Platform source for the authentication request"}}}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","required":["token","oAuthUrl"],"properties":{"token":{"type":"string","description":"JWT token for polling authentication status"},"oAuthUrl":{"type":"string","format":"uri","description":"UAE Pass authorization URL to redirect user to"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"500":{"$ref":"#/components/responses/InternalServerError"}}}}}}
```

## Poll Data

> Short poll this endpoint, passing in the \`token\` (from endpoints in \`Request Data\` folder) to obtain the results.\
> \
> For authentication, this includes user data. For signing, this provides a link by which the signed document can be obtained.\
> \
> The response's \`token\` is a JWT or JWE depending if there's sensitive personal data. You should handle them like so:\
> \
> \- \`JWT\` verify\\\* token\
> &#x20;   \
> \- \`JWE\` decrypt using the private keys that Fill Easy has previously provided.\
> &#x20;   \
> \
> Please note that the data result is returned only once and is deleted immediately.\
> \
> \\\*you can try using online decoder like \[<https://jwt.io/]\\(https://jwt.io/)\\>
> \
> all responses are \`JWE\` unless noted otherwise.

```json
{"openapi":"3.1.0","info":{"title":"Fill Easy Services","version":"1.0.0"},"tags":[{"name":"UAE Pass","description":"UAE Pass is the UAE's national digital identity solution, providing secure\nand seamless access to government and private sector services. It\nsimplifies authentication with a single digital identity, reducing\ncomplexity and enhancing security.\n\n\nThis guide explains how to integrate with the UAE Pass API, including\nendpoints, authentication, error handling, and best practices.\n\n\n---\n\n\n### Key Features\n\n\n- **Unified Identity**: Access multiple services with one secure login.\n    \n- **Enhanced Security**: Advanced encryption and multi-factor\nauthentication.\n    \n- **Easy Integration**: Streamlined APIs for quick deployment.\n    \n- **Future-Ready**: Supports the UAE’s smart digital economy vision.\n    \n\n---\n\n\n### Services\n\n\n1. **Authentication**: Verify user identity.\n    \n2. **Digital Signing**: Enable legally valid digital document signing.\n    \n\n---\n\n\n### Usage Flow\n\n\n1. Choose a service\n    \n2. Send a corresponding request in the _**Request Data**_ folder\n    \n3. Send follow up request(s)\\* to _**Polling/Poll Data**_\n    \n\n---\n\n\nIntegrate UAE Pass to deliver secure and efficient digital experiences.\n"}],"servers":[{"url":"sandbox.staging-api.fill-easy.com"}],"security":[{"ClientID":[],"ClientSecret":[]}],"components":{"securitySchemes":{"ClientID":{"type":"apiKey","description":"Client ID in x-client-id header.","name":"x-client-id","in":"header"}},"schemas":{"Token":{"type":"string","pattern":"^[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]*$","description":"JWT token"}}},"paths":{"/uaepass/poll":{"post":{"tags":["UAE Pass"],"summary":"Poll Data","description":"Short poll this endpoint, passing in the `token` (from endpoints in `Request Data` folder) to obtain the results.\n\nFor authentication, this includes user data. For signing, this provides a link by which the signed document can be obtained.\n\nThe response's `token` is a JWT or JWE depending if there's sensitive personal data. You should handle them like so:\n\n- `JWT` verify\\* token\n    \n- `JWE` decrypt using the private keys that Fill Easy has previously provided.\n    \n\nPlease note that the data result is returned only once and is deleted immediately.\n\n\\*you can try using online decoder like [https://jwt.io/](https://jwt.io/)\n\nall responses are `JWE` unless noted otherwise.","operationId":"uaepassPoll","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["token"],"properties":{"token":{"$ref":"#/components/schemas/Token"}}}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"},"data":{"description":"Response data from UAE Pass"}}}}}},"202":{"description":"Pending - Authentication not yet complete","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}}}}}}}
```

## Callback

> UAE Pass will redirect to this endpoint after user authorization.\
> This endpoint then redirects the user again to the original \`redirect\` URI provided in the \`/uaepass/request/auth\` request, appending the authorization \`code\` and \`state\` as query parameters.

```json
{"openapi":"3.1.0","info":{"title":"Fill Easy Services","version":"1.0.0"},"tags":[{"name":"UAE Pass","description":"UAE Pass is the UAE's national digital identity solution, providing secure\nand seamless access to government and private sector services. It\nsimplifies authentication with a single digital identity, reducing\ncomplexity and enhancing security.\n\n\nThis guide explains how to integrate with the UAE Pass API, including\nendpoints, authentication, error handling, and best practices.\n\n\n---\n\n\n### Key Features\n\n\n- **Unified Identity**: Access multiple services with one secure login.\n    \n- **Enhanced Security**: Advanced encryption and multi-factor\nauthentication.\n    \n- **Easy Integration**: Streamlined APIs for quick deployment.\n    \n- **Future-Ready**: Supports the UAE’s smart digital economy vision.\n    \n\n---\n\n\n### Services\n\n\n1. **Authentication**: Verify user identity.\n    \n2. **Digital Signing**: Enable legally valid digital document signing.\n    \n\n---\n\n\n### Usage Flow\n\n\n1. Choose a service\n    \n2. Send a corresponding request in the _**Request Data**_ folder\n    \n3. Send follow up request(s)\\* to _**Polling/Poll Data**_\n    \n\n---\n\n\nIntegrate UAE Pass to deliver secure and efficient digital experiences.\n"}],"servers":[{"url":"sandbox.staging-api.fill-easy.com"}],"security":[],"paths":{"/uaepass/callback":{"get":{"tags":["UAE Pass"],"description":"UAE Pass will redirect to this endpoint after user authorization.\nThis endpoint then redirects the user again to the original `redirect` URI provided in the `/uaepass/request/auth` request, appending the authorization `code` and `state` as query parameters.","summary":"Callback","operationId":"uaepassCallback","responses":{"302":{"description":"Redirect to client application"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}}}}}}}}}}}
```

## POST /uaepass/logout

> UAEPass Logout

```json
{"openapi":"3.1.0","info":{"title":"Fill Easy Services","version":"1.0.0"},"tags":[{"name":"UAE Pass","description":"UAE Pass is the UAE's national digital identity solution, providing secure\nand seamless access to government and private sector services. It\nsimplifies authentication with a single digital identity, reducing\ncomplexity and enhancing security.\n\n\nThis guide explains how to integrate with the UAE Pass API, including\nendpoints, authentication, error handling, and best practices.\n\n\n---\n\n\n### Key Features\n\n\n- **Unified Identity**: Access multiple services with one secure login.\n    \n- **Enhanced Security**: Advanced encryption and multi-factor\nauthentication.\n    \n- **Easy Integration**: Streamlined APIs for quick deployment.\n    \n- **Future-Ready**: Supports the UAE’s smart digital economy vision.\n    \n\n---\n\n\n### Services\n\n\n1. **Authentication**: Verify user identity.\n    \n2. **Digital Signing**: Enable legally valid digital document signing.\n    \n\n---\n\n\n### Usage Flow\n\n\n1. Choose a service\n    \n2. Send a corresponding request in the _**Request Data**_ folder\n    \n3. Send follow up request(s)\\* to _**Polling/Poll Data**_\n    \n\n---\n\n\nIntegrate UAE Pass to deliver secure and efficient digital experiences.\n"}],"servers":[{"url":"sandbox.staging-api.fill-easy.com"}],"security":[{"ClientID":[],"ClientSecret":[]}],"components":{"securitySchemes":{"ClientID":{"type":"apiKey","description":"Client ID in x-client-id header.","name":"x-client-id","in":"header"}},"schemas":{"RedirectUri":{"type":"string","description":"Redirect URI after user authorization.\n\nBrowser: https URL to your website.\n\nMobile: Universal link (your-app://) or app scheme.\n"},"Error":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message"}}}},"responses":{"BadRequest":{"description":"Bad Request - Invalid input parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"InternalServerError":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"paths":{"/uaepass/logout":{"post":{"tags":["UAE Pass"],"summary":"UAEPass Logout","operationId":"uaepassLogout","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["redirect"],"properties":{"redirect":{"$ref":"#/components/schemas/RedirectUri"}}}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","required":["logoutUrl"],"properties":{"logoutUrl":{"type":"string","format":"uri","description":"UAE Pass logout URL to redirect user to"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"500":{"$ref":"#/components/responses/InternalServerError"}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.fill-easy.com/uae-pass.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
