# How to Onboard our API

{% hint style="info" %}
For more information about our API, please [read the documentation here](/for-relying-parties/api-documentation.md).
{% endhint %}

## Onboarding Steps

{% stepper %}
{% step %}

### Before you start (Prerequisites)

#### Download Singpass Staging App ([guide here](https://docs.developer.singpass.gov.sg/docs/testing/testing-with-singpass-app))

* You need a Singpass Staging App to test that your application is successfully redirecting users to the Sign portal, and that they can sign with their Singpass app.

#### Gather information about your use case

* Description of use case and estimated transaction volume
* Sample of document(s) to be signed
  {% endstep %}

{% step %}

### Design & UX Setup

#### Prepare your application details

* Prepare your application's [**display name**](#user-content-fn-1)[^1] and [**logo**](#user-content-fn-2)[^2] for display to users on our Sign portal

#### Prepare the Sign with Singpass button

* The Sign button is available to download in 2 sizes here.

{% file src="/files/jm7Nr2jO7TVwfYTFA7bc" %}

* If you want to customise the Sign button e.g. change the button font to your brand font, please consult the section [UX Guidelines](/for-relying-parties/ux-guidelines.md#implementing-the-sign-with-singpass-button) in our [UX Guidelines](/for-relying-parties/ux-guidelines.md)on how to implement the button in your application
  {% endstep %}

{% step %}

### Technical Integration

Set up the following on your (staging) application:

* [**Webhook URL**](/for-relying-parties/api-documentation/sign-v3/accept-success-signing-webhook.md)
* [**JWKS URL**](/for-relying-parties/api-documentation/sign-v3/jwks-specification.md)
* [**Redirect URL**](/for-relying-parties/api-documentation/sign-v3/redirect-from-sign-with-singpass.md)&#x20;
  {% endstep %}

{% step %}

### Request for Staging access

{% hint style="warning" %}
Please complete steps 1 to 3 before requesting for staging access. You will need that information to fill in the onboarding form.&#x20;
{% endhint %}

Submit a **staging onboarding** form at: <https://go.gov.sg/sign-onboarding>&#x20;

**You will receive a confirmation email when your request to onboard has been approved.** You may then proceed to call the API endpoints.&#x20;

If you encounter any issues, please submit a request at [partnersupport.singpass.gov.sg](http://partnersupport.singpass.gov.sg/).&#x20;
{% endstep %}

{% step %}

### Test your integration

Once you have received access to the endpoints, we recommend performing these tasks:

* [ ] Check that you can [initiate a signing request](/for-relying-parties/api-documentation/sign-v3/initiate-sign-request.md)
* [ ] Complete a signing request (with your Staging Singpass app) and check that your application's webhook is successfully called
* [ ] Retrieve the signed document from the [webhook call](/for-relying-parties/api-documentation/sign-v3/accept-success-signing-webhook.md)
* [ ] Check that you can call the [get signing result endpoint](/for-relying-parties/api-documentation/sign-v3/get-signing-result.md)
* [ ] (Upon smooth integration) [Record your user journey (video + images)](#user-content-fn-3)[^3] as part of production onboarding requirements
  {% endstep %}

{% step %}

### Request for Production Access

Once your staging implementation is complete and you are ready to go live, please submit our **production onboarding form** at: <https://go.gov.sg/sign-onboarding>

{% hint style="warning" %}
You should only submit the onboarding form when you have your **User Journey** ready, and your system's JWKS, webhook, and redirect page are **functioning in production.**
{% endhint %}
{% endstep %}
{% endstepper %}

[^1]: **Display name**

    Use the name that your users recognise. You may consider shorter versions of your company's official name for e.g. instead of *"ABC Solutions Pte Ltd", use "ABC Solutions"*

[^2]: **Logo**

    * Ensure that your logo can be displayed clearly within square dimensions, similar to a favicon.  [See examples here](broken://spaces/zS82l43R1Jce6vsyJvJv)
    * Preferred file type: SVG&#x20;
    * Alternative file type: PNG with a max width and height of about 100 pixels each

[^3]: **User Journey requirement for Production Onboarding**\
    \
    As part of production onboarding we would require:&#x20;

    1. A screen recording of your user's journey to sign a document with Singpass successfully on your website.

    2) Screenshots of what your user will see if they had an unsuccessful signing attempt with Singpass.\
       \
       More details can be found on the onboarding form <https://go.gov.sg/sign-onboarding>


---

# 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.sign.singpass.gov.sg/for-relying-parties/onboard.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.
