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

# ArcPass REST API Overview

> Reference for the ArcPass HTTP API — base URL, JSON request/response format, error shape, correlation IDs, and a full list of available endpoints.

The ArcPass REST API is a public HTTP API that exposes gas sponsorship infrastructure for Arc Network. All endpoints accept and return JSON. No API key or authentication token is required — ArcPass is open infrastructure designed for ecosystem-wide use.

## Base URL

```
https://api.arcpass.io
```

All paths below are relative to this base URL. The exact hostname depends on your deployment environment; the value above is the canonical production address.

## Request format

Every request that includes a body must set the `Content-Type` header:

```
Content-Type: application/json
```

Path and query parameters are URL-encoded as usual. There is no envelope or wrapper — send the payload fields directly at the top level of the JSON body.

## Response format

Successful responses return JSON with HTTP status codes in the `2xx` range. The response body contains the resource directly at the top level — there is no `data` wrapper.

```json theme={null}
{
  "id": "3f2a1c8e-9b4d-4e7f-a1d2-0c6f8e3b5a9d",
  "walletAddress": "0xAbC1234567890dEF1234567890aBcDeF12345678",
  "sponsorshipCount": 1,
  "isBlocked": false
}
```

## Correlation IDs

Every response includes an `X-Correlation-Id` header. Record this value when filing bug reports or tracing issues — it identifies the exact request in server-side logs.

## Error format

Errors return a JSON body with two fields:

```json theme={null}
{
  "error": "Wallet not found",
  "statusCode": 404
}
```

Standard HTTP status codes apply:

| Code  | Meaning                                              |
| ----- | ---------------------------------------------------- |
| `400` | Bad request — malformed input or invalid field value |
| `404` | Resource not found                                   |
| `409` | Conflict — duplicate or already-existing resource    |
| `422` | Unprocessable — wallet is blocked or ineligible      |
| `429` | Rate limit exceeded                                  |
| `500` | Internal server error                                |

## Rate limiting

ArcPass enforces rate limits per IP address and per wallet address. When a limit is exceeded, the API returns `429 Too Many Requests`. See [Rate Limits](/configuration/rate-limits) for configured thresholds and reset windows.

## Available endpoints

### Wallets

| Method | Path                        | Description                                |
| ------ | --------------------------- | ------------------------------------------ |
| `POST` | `/wallets/register`         | Register a wallet address                  |
| `GET`  | `/wallets/:address`         | Look up a wallet by address                |
| `GET`  | `/wallets/:address/history` | Paginated sponsorship history for a wallet |

### Sponsorship

| Method | Path                    | Description                                       |
| ------ | ----------------------- | ------------------------------------------------- |
| `POST` | `/sponsorship/request`  | Submit a wallet for gas sponsorship               |
| `GET`  | `/sponsorship/:id`      | Get a sponsorship request by UUID                 |
| `GET`  | `/sponsorship/tx/:hash` | Look up a sponsorship request by on-chain tx hash |

### Relay

| Method | Path         | Description                                |
| ------ | ------------ | ------------------------------------------ |
| `GET`  | `/relay/:id` | Retrieve relay transaction details by UUID |

### Health

| Method | Path      | Description                 |
| ------ | --------- | --------------------------- |
| `GET`  | `/health` | API health check and uptime |
