> For the complete documentation index, see [llms.txt](https://docs.corppass.gov.sg/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.corppass.gov.sg/technical-specifications/corppass-authorization-api-fapi-2.0/integration-guide/4.-userinfo-endpoint/auth-info.md).

# Auth Info

The `auth_info` claim provides **authorization details** about the **user acting on behalf of the entity**.

{% hint style="info" %}
This claim is only returned in the [Userinfo Endpoint](/technical-specifications/corppass-authorization-api-fapi-2.0/integration-guide/4.-userinfo-endpoint.md) response when **`authinfo`** scope is requested.
{% endhint %}

## `auth_info` Attributes

<table data-full-width="true"><thead><tr><th width="184.78125">Field</th><th width="149.86328125">Data Type</th><th width="99.79296875">Length</th><th>Description</th></tr></thead><tbody><tr><td><code>Result_Set</code></td><td>JSON</td><td>-</td><td>Digital Service authorization result set.</td></tr></tbody></table>

#### `auth_info.Result_Set` attributes

<table data-full-width="true"><thead><tr><th width="184.8515625">Field</th><th width="149.8828125">Data Type</th><th width="100.21875">Length</th><th>Description</th></tr></thead><tbody><tr><td><code>ESrvc_Row_Count</code></td><td>Integer</td><td>10</td><td><p>The number of Digital Services for which the authorizations are present in the <code>Result_Set.ESrvc_Result</code> JSON object.</p><p></p><p>Returns <code>0</code> if <code>ESrvc_Result</code> is empty.</p></td></tr><tr><td><code>ESrvc_Result</code></td><td>Array of JSON</td><td>-</td><td><p>Array of JSON objects, each containing authorization details for the Digital Service.</p><p></p><p>Refer to <a href="#e-service-item-attributes-auth_info.result_set.esrvc_result-item">E-Service item attributes</a> for more details.</p></td></tr></tbody></table>

#### E-Service item attributes (`auth_info.Result_Set.ESrvc_Result[]` item)

Contains authorization details for the digital service.

<table data-full-width="true"><thead><tr><th width="179.8515625">Field</th><th width="150.265625">Data Type</th><th width="99.93359375">Length</th><th>Description</th></tr></thead><tbody><tr><td><code>CPESrvcID</code></td><td>String</td><td>25</td><td>The readable ID of the Digital Service.</td></tr><tr><td><code>Auth_Result_Set</code></td><td>JSON</td><td>-</td><td><p>JSON object. Contains user assignment details for the Digital Service.</p><p></p><p>Refer to <a href="#user-assignment-result-set-attributes-auth_info.result_set.esrvc_result-.auth_result_set">User Assignment Result Set attributes</a> for more details.</p></td></tr></tbody></table>

#### User Assignment Result Set attributes (`auth_info.Result_Set.ESrvc_Result[].Auth_Result_Set`)

<table data-full-width="true"><thead><tr><th width="180.28515625">Field</th><th width="150.21484375">Data Type</th><th width="99.8359375">Length</th><th>Description</th></tr></thead><tbody><tr><td><code>Row_Count</code></td><td>Integer</td><td>10</td><td><p>The number of rows included in the auth result set (ie. number of assignments the user has for the e-service).</p><p><br>e.g. If the user is granted two separate assignments to the same e-service on behalf of the same entity, this value will be <code>2</code> . The following result set will contain then contain two objects, each representing one assignment.</p></td></tr><tr><td><code>Row</code></td><td>Array of JSON</td><td>-</td><td><p>Array of JSON objects, where each JSON object describes a single third-party assignment.</p><p></p><p>Refer to <a href="#user-assignment-item-attributes-auth_info.result_set.esrvc_result-.auth_result_set.row-item">User Assignment Item attributes</a> for more details.</p></td></tr></tbody></table>

#### User Assignment Item attributes (`auth_info.Result_Set.ESrvc_Result[].Auth_Result_Set.Row[]` item)

<table data-full-width="true"><thead><tr><th width="180.0625">Field</th><th width="149.625">Data Type</th><th width="100.125">Length</th><th>Description</th></tr></thead><tbody><tr><td><code>CPEntID_SUB</code></td><td>String</td><td>32</td><td>Sub-UEN value of that entity to which the user is assigned the authorization. <br><br>If the Digital Service requires a mandatory Sub-UEN attribute but no value was supplied, <code>"ERROR_MISSING_VALUE"</code> will be returned for the field.</td></tr><tr><td><code>CPRole</code></td><td>String</td><td>20</td><td>The role assigned to the user in this particular authorisation.</td></tr><tr><td><code>StartDate</code></td><td>String (format YYYY-MM-DD)</td><td>10</td><td>The start date for validity of the authorisation.</td></tr><tr><td><code>EndDate</code></td><td>String (format YYYY-MM-DD)</td><td>10</td><td>The end date for validity of the authorisation.</td></tr><tr><td><code>Parameter</code></td><td>Array of JSON</td><td>-</td><td><p>This is an optional array of parameters (JSON objects containing only name and value pair attributes) defined by Digital Service administrator. <br><br>These parameters will be populated as required. These parameters use a name-value pair format.<br><br>If no parameters are defined this will be returned as empty array.<br><br>If a parameter is defined as mandatory by the Digital Service administrator but no value was supplied, <code>"ERROR_MISSING_VALUE"</code> will be returned for the field.</p><p></p><p>Refer to <a href="#user-assignment-parameter-attributes-auth_info.result_set.esrvc_result-.auth_result_set.row-.paramet">User Assignment Parameter attributes</a> for more details.</p></td></tr></tbody></table>

#### User Assignment Parameter attributes (`auth_info.Result_Set.ESrvc_Result[].Auth_Result_Set.Row[].Parameter`)

<table data-full-width="true"><thead><tr><th width="179.54296875">Field</th><th width="150.12109375">Data Type</th><th width="99.56640625">Length</th><th>Description</th></tr></thead><tbody><tr><td><code>name</code></td><td>String</td><td>30</td><td>Parameter name defined by defined by Digital Service administrator</td></tr><tr><td><code>value</code></td><td>String</td><td>66</td><td>Parameter value defined by defined by Digital Service administrator</td></tr></tbody></table>

## Sample Payload

<details>

<summary>User with two authorisations</summary>

Authorization info payload for a User with two authorisations:

* One to e-service `SAMPLE-ESERVICE`&#x20;
* One to e-service `OTHER-ESERVICE`

{% code lineNumbers="true" %}

```json
{
  "auth_info": {
    "Result_Set": {
      "ESrvc_Row_Count": 2,
      "ESrvc_Result": [
        {
          "CPESrvcID": "SAMPLE-ESERVICE",
          "Auth_Result_Set": {
            "Row_Count": 1,
            "Row": [
              {
                "CPEntID_SUB": "",
                "CPRole": "Approver",
                "StartDate": "2017-11-14",
                "EndDate": "9999-12-31",
                "Parameter": [
                  {
                    "name": "Effective YA",
                    "value": "2020"
                  },
                ]
              }
            ]
          }
        },
        {
          "CPESrvcID": "OTHER-ESERVICE",
          "Auth_Result_Set": {
            "Row_Count": 1,
            "Row": [
              {
                "CPEntID_SUB": "",
                "CPRole": "Editor",
                "StartDate": "2017-11-14",
                "EndDate": "9999-12-31",
                "Parameter": []
              }
            ]
          }
        }
      ]
    }
  }
}

```

{% endcode %}

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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.corppass.gov.sg/technical-specifications/corppass-authorization-api-fapi-2.0/integration-guide/4.-userinfo-endpoint/auth-info.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.
