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

# Quickstart

> Authenticate and read your first page of Sakawave accounts in under ten minutes.

## 1. Create a sandbox key

Sign in to the Sakawave dashboard, select the sandbox environment, and create an API key. Copy the complete `sk_test_…` value immediately; it is displayed only once.

Store the key in an environment variable. Do not put it in source code, shell history, tickets, or chat.

```bash theme={null}
export SAKAWAVE_API_KEY='sk_test_replace_with_your_key'
export SAKAWAVE_BASE_URL='https://sandbox-api.sakawave.com'
```

## 2. List accounts

<CodeGroup>
  ```bash cURL theme={null}
  curl --request GET \
    --url "$SAKAWAVE_BASE_URL/v1/accounts?pageSize=10" \
    --header "Authorization: Bearer $SAKAWAVE_API_KEY" \
    --header "Accept: application/json" \
    --header "X-Request-ID: quickstart_accounts_001"
  ```

  ```ts Node.js theme={null}
  const response = await fetch(
    `${process.env.SAKAWAVE_BASE_URL}/v1/accounts?pageSize=10`,
    {
      headers: {
        Authorization: `Bearer ${process.env.SAKAWAVE_API_KEY}`,
        Accept: "application/json",
        "X-Request-ID": "quickstart_accounts_001",
      },
    },
  );

  const payload = await response.json();
  if (!response.ok) {
    throw new Error(`${response.status}: ${payload.code} — ${payload.message}`);
  }

  console.log(payload.items);
  console.log("Request ID:", response.headers.get("x-request-id"));
  ```

  ```python Python theme={null}
  import os
  import requests

  response = requests.get(
      f"{os.environ['SAKAWAVE_BASE_URL']}/v1/accounts",
      params={"pageSize": 10},
      headers={
          "Authorization": f"Bearer {os.environ['SAKAWAVE_API_KEY']}",
          "Accept": "application/json",
          "X-Request-ID": "quickstart_accounts_001",
      },
      timeout=30,
  )
  payload = response.json()
  if not response.ok:
      raise RuntimeError(
          f"{response.status_code}: {payload.get('code')} — {payload.get('message')}"
      )

  print(payload["items"])
  print("Request ID:", response.headers.get("X-Request-ID"))
  ```
</CodeGroup>

## 3. Read the response

```json theme={null}
{
  "items": [],
  "pagination": {
    "page": 1,
    "pageSize": 10,
    "total": 0,
    "pageCount": 0,
    "hasNext": false,
    "hasPrevious": false
  }
}
```

An empty `items` array is a successful response for a new sandbox business. The response header contains the request ID you supplied, or a generated ID if yours was missing or invalid.

## Next steps

* [Create a customer and account](/tutorials/create-customer-and-account)
* [Learn how money values work](/guides/money-and-currencies)
* [Make a transfer](/tutorials/make-a-transfer)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.