> ## Documentation Index
> Fetch the complete documentation index at: https://vouch-sdk.vercel.app/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Provision a Developer Account — Vouch API

> Create a new Vouch developer account with an email and password. This is the first step to accessing the API and generating authentication keys.

Provisioning a developer account is the starting point for integrating Vouch into your platform. This is a **public endpoint** — no API key is required — and it takes just an email address and a password to get you set up. Once your account is created, you will receive an API key in the response that you can use to authenticate all subsequent requests. You can also generate additional keys at any time via the [Generate API Key](/docs/api/developer/api-keys) endpoint.

## Endpoint

```
POST /v1/developer/signup
```

This endpoint is **public** and does not require an `x-api-key` header.

## Request

### Body Parameters

<ParamField body="email" type="string" required>
  The email address to associate with your developer account. This must be a valid email address and will be used for account recovery and notifications.
</ParamField>

<ParamField body="password" type="string" required>
  A password to secure your developer account. Choose a strong password — a minimum of 8 characters including a mix of letters, numbers, and symbols is recommended.
</ParamField>

<ParamField body="name" type="string">
  An optional display name for your developer account. Defaults to the local part of your email address if not provided.
</ParamField>

## Examples

<CodeGroup>
  ```bash cURL theme={null}
  curl --request POST \
    --url https://vouch-fmql.onrender.com/v1/developer/signup \
    --header "Content-Type: application/json" \
    --data '{
      "email": "dev@example.com",
      "password": "your-secure-password"
    }'
  ```

  ```typescript TypeScript theme={null}
  const response = await fetch(
    "https://vouch-fmql.onrender.com/v1/developer/signup",
    {
      method: "POST",
      headers: { "Content-Type": "application/json" },
      body: JSON.stringify({
        email: "dev@example.com",
        password: "your-secure-password",
      }),
    }
  );

  const { developerId, apiKey } = await response.json();

  // Store your API key immediately — treat it like a password
  console.log("Developer ID:", developerId);
  console.log("API Key:", apiKey);
  ```
</CodeGroup>

## Response

A successful request returns HTTP `201 Created` with your new developer account details and an initial API key.

<ResponseField name="developerId" type="string">
  Vouch's unique identifier for your developer account. This appears in agreement objects and audit logs.
</ResponseField>

<ResponseField name="apiKey" type="string">
  Your initial API key. Use this as the `x-api-key` header value to authenticate all subsequent API requests. Store it securely — treat it like a password and never commit it to version control.
</ResponseField>

<ResponseField name="developer" type="object">
  The full developer account object, including your `id`, `email`, and account metadata.
</ResponseField>

<Warning>
  **Store your API key immediately.** Vouch does not store keys in plain text. If you lose it, you will need to generate a new one via [POST /v1/developer/api-keys](/docs/api/developer/api-keys).
</Warning>

### Example Response

```json theme={null}
{
  "developerId": "dev_abc123",
  "apiKey": "vouch_live_8f9a2b3c4d5e6f7a...",
  "developer": {
    "id": "dev_abc123",
    "email": "dev@example.com"
  }
}
```

<Note>
  To generate additional API keys — for example, separate keys for staging and production — call [POST /v1/developer/api-keys](/docs/api/developer/api-keys) with your existing key in the `x-api-key` header.
</Note>
