# Quick Start - Web Integration

## Getting Started

Welcome to Orba One! We’re glad you’re here. The goal of this tutorial is to guide you through integrating Orba One into your web application. As we walk through that process, we’ll introduce and go over the underlying structure of an Orba One integration.

### Create an Orba One Developer Account

To get started with Orba One, you first need to sign up for an Orba One developer account. Once you've signed up, log into your [Developer Dashboard](https://dashboard.orbaone.com) and create a new Orba One API Key.

* Your **public** API key connects your client-side SDKs (e.g your web application) to Orba One
* Your **secret** API key is for all your server-side libraries (e.g your backend server or serverless function)

### Installing the Web SDK&#x20;

Before you start integrating Orba One, you’ll need to install the Web SDK.

{% tabs %}
{% tab title="yarn" %}

```bash
yarn add @orbaone/core
```

{% endtab %}

{% tab title="npm" %}

```
npm install --save @orbaone/core
```

{% endtab %}
{% endtabs %}

### Create your first applicant&#x20;

In order to get started with Orba One, you will need to create your first applicant. There are two ways that you can implement the verification process into your web application.

{% tabs %}
{% tab title="During Sign Up" %}

#### During the signup process&#x20;

You can start the verification process during sign up by sending the applicant's first and last name to the Orba One API. From there the verification process can occur in the middle of your sign up process. Afterwhich upon a successful response, you can continue your sign up.&#x20;
{% endtab %}

{% tab title="After Sign Up" %}

#### After the applicant has signed up for your service

After the applicant has signed up for your service you can start their verification process at any time by sending their first and last name to the Orba API.&#x20;
{% endtab %}
{% endtabs %}

#### Sending the user information to the Orba One API

After collecting the applicant's first and last name, you can start the verification process by sending this information to the Orba API as a POST request.

## Create Applicant

<mark style="color:green;">`POST`</mark> `https://api.orbaone.com/api/v1/applicants/create`

Creates an applicant with the information provided

#### Path Parameters

| Name       | Type   | Description                 |
| ---------- | ------ | --------------------------- |
| lastName   | string | The applicant's last name   |
| firstName  | string | The applicant's first name  |
| middleName | string | The applicant's middle name |

#### Headers

| Name   | Type   | Description         |
| ------ | ------ | ------------------- |
| Secret | string | Your secret API Key |
| ApiKey | string | Your public API Key |

{% tabs %}
{% tab title="200 Applicant successfully created" %}

```
{ "success" : true }
```

{% endtab %}
{% endtabs %}

{% hint style="info" %}
Check out the [REST API endpoints ](https://docs.orbaone.com/rest-api/endpoints)
{% endhint %}

### Starting the Orba One verification flow

Great job, you've successfully created your first applicant. Now it's time to start the Orba One verification process. To do this you first need to render the Verify Me button.&#x20;

You can do this in two easy steps

1\. Import the Orba One SDK

```
import { renderButton } from "@orbaone/core";
```

2\. Render the Verify Me button

```
renderButton({
  apiKey: "exampleAPIKey",
  applicantId: "0000-0000-0000-0000",
  target: "#button",
  disableStyle: false,
  onSuccess: (data) => {console.log(data)},
  onError: (err) => {console.log(err)},
  steps: ['welcome'],
})
```

From there Orba One will start the process of verifying your applicant.

{% hint style="success" %}
Congratulations, you've just created and verified  your first applicant :tada:
{% endhint %}
