# Configure Singpass Application on SDP (In-Progress)

Every Singpass Application is assigned with a unique identity known as Client ID that will be required when calling Singpass’s Endpoint. Login to [Singpass Developer Portal](https://api.singpass.gov.sg) to create a new Singpass Application or use an existing application client’s ID for the integration.

Configure the following necessary Application settings.

## Step 1: Configure App Name

This application name is the name of your digital service/application. This will appear on the consent page that your users will see when they give consent to login to your digital service.

<figure><img src="https://4078627714-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIQVffPvHpumbSBzjD6fZ%2Fuploads%2Fa2YrXBqLXXxz9YVp2F1D%2Fimage.png?alt=media&#x26;token=c302b81f-f701-47af-ac7d-15277378431a" alt=""><figcaption></figcaption></figure>

  Example of consent page when App Name is configured as Test App.

<figure><img src="https://4078627714-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIQVffPvHpumbSBzjD6fZ%2Fuploads%2FU859wpZspdtdUA2ucB7X%2Fimage.png?alt=media&#x26;token=d755d2ef-0418-48b6-81ee-6340cfbb361e" alt=""><figcaption></figcaption></figure>

## Step 2: Configure App Description

Description of your digital service/application. Describe the use case for your app and what it does for Singpass’s administrative purposes.

<figure><img src="https://4078627714-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIQVffPvHpumbSBzjD6fZ%2Fuploads%2FTochlzTFGaLR8wfxMZ1M%2Fimage.png?alt=media&#x26;token=472c1954-48a8-4a94-b9f7-49073b824806" alt=""><figcaption></figcaption></figure>

## Step 3: Select Client Profile Type

Set the client profile type. This will determine the [claims response](https://ndi-px.gitbook.io/singpassdevdocs/getting-started/understanding-the-basics/..#client-profile-types) from Singpass's token endpoint.&#x20;

<figure><img src="https://4078627714-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIQVffPvHpumbSBzjD6fZ%2Fuploads%2FIyx13nGfWmovIqGn73wU%2Fimage.png?alt=media&#x26;token=25e94f2c-3a64-4a0a-aa8c-bd0b08d58d72" alt=""><figcaption></figcaption></figure>

## Step 4: Configure Redirect URI(s)

A redirect URL is a URL in your application that Singpass will use to redirect users after they have been authenticated or when the ID Token is being returned. For the staging environment, if not set the default callback URL is set to <http://localhost:3000> which means users will be redirected to the application's initial loading page.

<figure><img src="https://4078627714-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIQVffPvHpumbSBzjD6fZ%2Fuploads%2FlbLNVSmOWvYVbD4MUFFy%2Fimage.png?alt=media&#x26;token=3e1479db-a860-4591-a89f-aaacc081f02a" alt=""><figcaption></figcaption></figure>

## Step 5: Configure JSON Web Key Store (JWKS)

Configure JWKS with the public keys set in the [previous step](https://ndi-px.gitbook.io/singpassdevdocs/getting-started/understanding-the-basics/setup-json-web-key-store-jwks). This will be used by Singpass for verification and encryption purposes. Relying Party (RP) can do so only via ONE of the following forms:&#x20;

* Provide a JWKS in a JSON format
* Host the JWKS on a publicly accessible URL. This endpoint must be compatible with [Singpass’s service level expectations](https://stg-id.singpass.gov.sg/docs/authorization/api#_jwt_header)

**For configuration with JWKS Endpoint**

* Select JWKS Endpoint and provide the JWKS Endpoint

<figure><img src="https://4078627714-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIQVffPvHpumbSBzjD6fZ%2Fuploads%2FmdBK7JMjivrd8NBFfijH%2Fimage.png?alt=media&#x26;token=1a4d3a72-5f57-4bf8-b6c5-d6cc04e87df4" alt=""><figcaption></figcaption></figure>

**For configuration with JWKS Object**

* Select JWKS Object and provide the JWKS Object

<figure><img src="https://4078627714-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIQVffPvHpumbSBzjD6fZ%2Fuploads%2FYhiIsMI61KHTOkBi9cDn%2Fimage.png?alt=media&#x26;token=8248daf6-93b5-4e3a-b697-528d9984db8b" alt=""><figcaption></figcaption></figure>

## Step 6: Save Application Settings

Once saved, the client ID will be populated. This is a unique identity known as that will be required when calling Singpass’s Endpoint.

### Next steps

* [Create Singpass Login Button](https://ndi-px.gitbook.io/singpassdevdocs/getting-started/custom-integration/invoke-authorization-endpoint) to call Singpass's Authorization Endpoint
* If you have successfully integrated with Singpass's Authorization, proceed to [setup the Client Assertion](https://ndi-px.gitbook.io/singpassdevdocs/getting-started/custom-integration/setup-client-assertion)
