> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://dev.admoji.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://dev.admoji.com/_mcp/server.

# Quickstart

This walkthrough gets a website integrated with Admoji end to end: authenticate, add a customer, take a signup payment, and (optionally) charge an upsell.

## 1. Get your API key

Sign in to the Admoji CRM and open **Settings → Account settings → API Keys**. Copy the key (it looks like `secret_492796e421a34666a5695d53cd311111`) and keep it server-side — treat it like a password.

> **Note**
>
> API keys are workspace-scoped. Use a **test** key while integrating and swap to your live key at go-live.

## 2. Verify authentication

Send a `GET` to the test-auth endpoint. A `Status` of `0` means the key is valid.

**`Test auth`**

```shell title="Test auth"
curl -X GET 'https://openapi.responsecrm.com/api/v2/open/test-auth' \
  -H "Authorization: ApiKey secret_492796e421a34666a5695d53cd311111"
```

**`Response`**

```json title="Response"
{ "Status": 0 }
```

See [Authentication](/authentication) for header format, key rotation, and error handling.

## 3. Add a customer

Create a customer record before charging. All `POST` requests must include an `Idempotency-Key` (any UUID) — see [Idempotency](/idempotency).

Full request/response schema: [POST /api/v2/open/customer](/api-reference#tag/customers).

## 4. Add a signup transaction

Once the customer exists, place the initial order via the signup-transaction endpoint. The response returns the CRM order ID plus processor authorization.

Full schema: [POST /api/v2/open/signup-transaction](/api-reference#tag/orders).

## 5. (Optional) Add upsell transactions

Charge additional products against the same customer without re-collecting a payment method.

Full schema: [POST /api/v2/open/upsell-transaction](/api-reference#tag/orders).

## Next

#### [Authentication](/authentication)

API key format, headers, and rotation

#### [Idempotency](/idempotency)

Safe retries for POST requests

#### [Response codes](/errors)

Status codes and rate limits

#### [Full API reference](/api-reference)

Every endpoint, request, and response