# Getting Started

#### 1. Request API Access

To receive your API key:

1. Email **<pavel@alignlabs.dev>** to request API access
2. Sign the developer agreement
3. Receive **sandbox** and **production** API keys via secure link

> Store your API keys securely and only use them from a secure backend environment.

#### 2. Create a Customer

Every transfer is completed on behalf of a customer. To create a customer, use a [Create Customer](https://docs.alignlabs.dev/align-api/customers/create-customer) endpoint.

Example:

```javascript
curl -X POST https://api.alignlabs.dev/v0/customers \
-H "Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
  "email": "name@gmail.com",
  "first_name": "John",
  "last_name": "Doe",
  "type": "individual"
}'
```

Response:

```javascript
{
  "customer_id": "123e4567-e89b-12d3-a456-426614174000",
  "first_name": "John",
  "last_name": "Doe",
  "email": "name@gmail.com",
  "type": "individual"
}
```

You can now use `customer_id` to initiate a KYC session.

#### 3. Start KYC Verification

Every customer needs to go through KYC/KYB. To initiate a KYC session, use a [Create KYC Session](https://docs.alignlabs.dev/align-api/customers/create-kyc-session) endpoint.

Example:

```javascript
curl -X POST https://api.alignlabs.dev/v0/customers/{customer_id}/kycs \
-H "Api-Key: YOUR_API_KEY" \
```

Response:

```javascript
{
  "kycs": {
    "kyc_flow_link": "https://link-to-kyc-provider.com"
  }
}
```

Once a customer completed KYC, their `kycs.status_breakdown`  object will display for which currency / rails customer is `approved`.

### 4. Complete Verification and Enable Payment Rails

When the customer completes KYC/KYB, Align will approve currency and payment rail access (for example USD, EUR, GBP, or stablecoins).

After approval, you can:

* Create virtual accounts
* Initiate on-ramp transfers (fiat to stablecoin)
* Initiate off-ramp transfers (stablecoin to fiat)

### 5. Webhooks for Real-Time Updates

To receive live events such as:

* Customer KYC status changes
* Transfer updates
* Account events

Register your webhook URL:

**Docs:** <https://docs.alignlabs.dev/align-api/webhooks>

Align will push real-time events to your webhook.

### 6. Developer Dashboard Access

You can manage customers, transfers, and test flows from the dashboard.

Request access by sending admin emails to the Align team.

**URL:** <https://dashboard.alignlabs.dev/>

We will provision accounts for your team.

***

### That's It - You Are Ready to Build

From here you can:

* Initiate payments
* Create virtual accounts
* Monitor activity and users in real time
* Plug into global fiat and stablecoin rails
