# List tools

`GET /v0/tools`

Returns bounded typeahead results for evolving tool and technology resources.

## Authentication

`bearerAuth` (http bearer) — Organisation API key supplied only through the Authorization header. Required scopes: `catalogues:read`.

## Request

### cURL

```shell
curl --request GET \
  --url "https://api.luranta.com/v0/tools" \
  --header "Authorization: Bearer $LURANTA_API_KEY" \
  --header "Accept: application/json" \
  --get \
  --data-urlencode "query=london" \
  --data-urlencode "limit=20"
```

### TypeScript

```ts
const url = new URL("https://api.luranta.com/v0/tools")
url.searchParams.append("query", "london")
url.searchParams.append("limit", "20")

const response = await fetch(url, {
  headers: {
    Authorization: `Bearer ${process.env.LURANTA_API_KEY}`,
  },
})

const result = await response.json()
```

### Python

```python
import os
import requests

response = requests.get(
    "https://api.luranta.com/v0/tools",
    params=[
        ("query", "london"),
        ("limit", "20"),
    ],
    headers={"Authorization": f"Bearer {os.environ['LURANTA_API_KEY']}"},
    timeout=30,
)
response.raise_for_status()
result = response.json()
```

## Parameters

### `query`

`string` · query · required

Case-insensitive typeahead text. At least 2 characters are required; empty catalogue dumps are not supported.

- Type: `string`
  - Description: Case-insensitive typeahead text. At least 2 characters are required; empty catalogue dumps are not supported.
  - Examples: `["london"]`
  - Maximum length: `100`
  - Minimum length: `2`

Examples

- example-1: `london`

### `cursor`

`string` · query · optional

Opaque pagination cursor.

- Type: `string`
  - Description: Opaque pagination cursor.
  - Maximum length: `1000`
  - Minimum length: `1`

### `limit`

`integer` · query · optional

Maximum resources to return, from 1 to 20. Defaults to 20.

- Type: `integer`
  - Description: Maximum resources to return, from 1 to 20. Defaults to 20.
  - Default: `20`
  - Maximum: `20`
  - Minimum: `1`

## Responses

### 200

The requested catalogue resource.

#### Headers

##### `Cache-Control`

`string` · required

Public cache policy for the bounded catalogue response.

- Type: `string`

##### `ETag`

`string` · required

Strong representation validator for conditional GET requests.

- Type: `string`

##### `traceparent`

`string` · required

W3C trace context generated for this request attempt.

- Type: `string`
  - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$`

##### `X-Request-Id`

`string<uuid>` · required

Unique UUIDv7 identifier for this request attempt.

- Type: `string<uuid>`
  - Format: `uuid`

#### application/json

- Type: `ToolList`
  - Component: [`ToolList`](/reference/schemas#ToolList)
  - Additional properties: `forbidden`
  - Properties:
    - `data` (required):
      - Type: `object[]`
        - Maximum items: `20`
        - Items:
          - Type: `object`
            - Additional properties: `forbidden`
            - Properties:
              - `code` (required):
                - Type: `string`
                  - Maximum length: `160`
                  - Minimum length: `1`
                  - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$`
              - `label` (required):
                - Type: `string`
                  - Maximum length: `240`
                  - Minimum length: `1`
              - `object` (required):
                - Type: `string`
                  - Constant: `tool`
    - `has_more` (required):
      - Type: `boolean`
    - `next_cursor` (required):
      - Type: `string | null`
        - anyOf:
          - Type: `string`
            - Maximum length: `1000`
          - Type: `null`
    - `object` (required):
      - Type: `string`
        - Constant: `list`

### 400

The request contains an invalid parameter, parameter combination, or cursor.

This response uses [Problem Details](/reference/problem-details).

#### Headers

##### `Cache-Control`

`string` · required

Public cache policy for the bounded catalogue response.

- Type: `string`

##### `ETag`

`string` · required

Strong representation validator for conditional GET requests.

- Type: `string`

##### `traceparent`

`string` · required

W3C trace context generated for this request attempt.

- Type: `string`
  - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$`

##### `X-Request-Id`

`string<uuid>` · required

Unique UUIDv7 identifier for this request attempt.

- Type: `string<uuid>`
  - Format: `uuid`

#### application/problem+json

Errors follow [Problem Details](/reference/problem-details).

- Type: `ProblemDetails`
  - Component: [`ProblemDetails`](/reference/problem-details)
  - Additional properties: `forbidden`
  - Properties:
    - `available_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `code` (required):
      - Type: `string`
        - Maximum length: `80`
        - Minimum length: `1`
    - `detail` (required):
      - Type: `string`
        - Maximum length: `1000`
        - Minimum length: `1`
    - `errors` (optional):
      - Type: `object[]`
        - Maximum items: `100`
        - Items:
          - Type: `object`
            - Additional properties: `forbidden`
            - Properties:
              - `code` (required):
                - Type: `string`
                  - Maximum length: `80`
                  - Minimum length: `1`
              - `message` (required):
                - Type: `string`
                  - Maximum length: `500`
                  - Minimum length: `1`
              - `pointer` (required):
                - Type: `string`
                  - Pattern: `^\/.*`
    - `instance` (required):
      - Type: `string`
        - Pattern: `^\/.*`
    - `param` (optional):
      - Type: `string`
        - Maximum length: `160`
        - Minimum length: `1`
    - `request_id` (required):
      - Type: `string<uuid>`
        - Format: `uuid`
        - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`
    - `required_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `retryable` (required):
      - Type: `boolean`
    - `status` (required):
      - Type: `integer`
        - Maximum: `599`
        - Minimum: `400`
    - `title` (required):
      - Type: `string`
        - Maximum length: `120`
        - Minimum length: `1`
    - `top_up_url` (optional):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`
    - `type` (required):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`

### 401

The organisation API key is missing, invalid, expired, or revoked.

This response uses [Problem Details](/reference/problem-details).

#### Headers

##### `Cache-Control`

`string` · required

Public cache policy for the bounded catalogue response.

- Type: `string`

##### `ETag`

`string` · required

Strong representation validator for conditional GET requests.

- Type: `string`

##### `traceparent`

`string` · required

W3C trace context generated for this request attempt.

- Type: `string`
  - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$`

##### `X-Request-Id`

`string<uuid>` · required

Unique UUIDv7 identifier for this request attempt.

- Type: `string<uuid>`
  - Format: `uuid`

#### application/problem+json

Errors follow [Problem Details](/reference/problem-details).

- Type: `ProblemDetails`
  - Component: [`ProblemDetails`](/reference/problem-details)
  - Additional properties: `forbidden`
  - Properties:
    - `available_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `code` (required):
      - Type: `string`
        - Maximum length: `80`
        - Minimum length: `1`
    - `detail` (required):
      - Type: `string`
        - Maximum length: `1000`
        - Minimum length: `1`
    - `errors` (optional):
      - Type: `object[]`
        - Maximum items: `100`
        - Items:
          - Type: `object`
            - Additional properties: `forbidden`
            - Properties:
              - `code` (required):
                - Type: `string`
                  - Maximum length: `80`
                  - Minimum length: `1`
              - `message` (required):
                - Type: `string`
                  - Maximum length: `500`
                  - Minimum length: `1`
              - `pointer` (required):
                - Type: `string`
                  - Pattern: `^\/.*`
    - `instance` (required):
      - Type: `string`
        - Pattern: `^\/.*`
    - `param` (optional):
      - Type: `string`
        - Maximum length: `160`
        - Minimum length: `1`
    - `request_id` (required):
      - Type: `string<uuid>`
        - Format: `uuid`
        - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`
    - `required_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `retryable` (required):
      - Type: `boolean`
    - `status` (required):
      - Type: `integer`
        - Maximum: `599`
        - Minimum: `400`
    - `title` (required):
      - Type: `string`
        - Maximum length: `120`
        - Minimum length: `1`
    - `top_up_url` (optional):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`
    - `type` (required):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`

### 402

The organisation does not have enough credit to reserve this operation.

This response uses [Problem Details](/reference/problem-details).

#### Headers

##### `Cache-Control`

`string` · required

Public cache policy for the bounded catalogue response.

- Type: `string`

##### `ETag`

`string` · required

Strong representation validator for conditional GET requests.

- Type: `string`

##### `traceparent`

`string` · required

W3C trace context generated for this request attempt.

- Type: `string`
  - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$`

##### `X-Request-Id`

`string<uuid>` · required

Unique UUIDv7 identifier for this request attempt.

- Type: `string<uuid>`
  - Format: `uuid`

#### application/problem+json

Errors follow [Problem Details](/reference/problem-details).

- Type: `ProblemDetails`
  - Component: [`ProblemDetails`](/reference/problem-details)
  - Additional properties: `forbidden`
  - Properties:
    - `available_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `code` (required):
      - Type: `string`
        - Maximum length: `80`
        - Minimum length: `1`
    - `detail` (required):
      - Type: `string`
        - Maximum length: `1000`
        - Minimum length: `1`
    - `errors` (optional):
      - Type: `object[]`
        - Maximum items: `100`
        - Items:
          - Type: `object`
            - Additional properties: `forbidden`
            - Properties:
              - `code` (required):
                - Type: `string`
                  - Maximum length: `80`
                  - Minimum length: `1`
              - `message` (required):
                - Type: `string`
                  - Maximum length: `500`
                  - Minimum length: `1`
              - `pointer` (required):
                - Type: `string`
                  - Pattern: `^\/.*`
    - `instance` (required):
      - Type: `string`
        - Pattern: `^\/.*`
    - `param` (optional):
      - Type: `string`
        - Maximum length: `160`
        - Minimum length: `1`
    - `request_id` (required):
      - Type: `string<uuid>`
        - Format: `uuid`
        - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`
    - `required_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `retryable` (required):
      - Type: `boolean`
    - `status` (required):
      - Type: `integer`
        - Maximum: `599`
        - Minimum: `400`
    - `title` (required):
      - Type: `string`
        - Maximum length: `120`
        - Minimum length: `1`
    - `top_up_url` (optional):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`
    - `type` (required):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`

### 403

The authenticated organisation lacks the required scope, or the browser origin is not allowed.

This response uses [Problem Details](/reference/problem-details).

#### Headers

##### `Cache-Control`

`string` · required

Public cache policy for the bounded catalogue response.

- Type: `string`

##### `ETag`

`string` · required

Strong representation validator for conditional GET requests.

- Type: `string`

##### `traceparent`

`string` · required

W3C trace context generated for this request attempt.

- Type: `string`
  - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$`

##### `X-Request-Id`

`string<uuid>` · required

Unique UUIDv7 identifier for this request attempt.

- Type: `string<uuid>`
  - Format: `uuid`

#### application/problem+json

Errors follow [Problem Details](/reference/problem-details).

- Type: `ProblemDetails`
  - Component: [`ProblemDetails`](/reference/problem-details)
  - Additional properties: `forbidden`
  - Properties:
    - `available_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `code` (required):
      - Type: `string`
        - Maximum length: `80`
        - Minimum length: `1`
    - `detail` (required):
      - Type: `string`
        - Maximum length: `1000`
        - Minimum length: `1`
    - `errors` (optional):
      - Type: `object[]`
        - Maximum items: `100`
        - Items:
          - Type: `object`
            - Additional properties: `forbidden`
            - Properties:
              - `code` (required):
                - Type: `string`
                  - Maximum length: `80`
                  - Minimum length: `1`
              - `message` (required):
                - Type: `string`
                  - Maximum length: `500`
                  - Minimum length: `1`
              - `pointer` (required):
                - Type: `string`
                  - Pattern: `^\/.*`
    - `instance` (required):
      - Type: `string`
        - Pattern: `^\/.*`
    - `param` (optional):
      - Type: `string`
        - Maximum length: `160`
        - Minimum length: `1`
    - `request_id` (required):
      - Type: `string<uuid>`
        - Format: `uuid`
        - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`
    - `required_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `retryable` (required):
      - Type: `boolean`
    - `status` (required):
      - Type: `integer`
        - Maximum: `599`
        - Minimum: `400`
    - `title` (required):
      - Type: `string`
        - Maximum length: `120`
        - Minimum length: `1`
    - `top_up_url` (optional):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`
    - `type` (required):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`

### 404

The requested resource does not exist or is not available to this organisation.

This response uses [Problem Details](/reference/problem-details).

#### Headers

##### `Cache-Control`

`string` · required

Public cache policy for the bounded catalogue response.

- Type: `string`

##### `ETag`

`string` · required

Strong representation validator for conditional GET requests.

- Type: `string`

##### `traceparent`

`string` · required

W3C trace context generated for this request attempt.

- Type: `string`
  - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$`

##### `X-Request-Id`

`string<uuid>` · required

Unique UUIDv7 identifier for this request attempt.

- Type: `string<uuid>`
  - Format: `uuid`

#### application/problem+json

Errors follow [Problem Details](/reference/problem-details).

- Type: `ProblemDetails`
  - Component: [`ProblemDetails`](/reference/problem-details)
  - Additional properties: `forbidden`
  - Properties:
    - `available_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `code` (required):
      - Type: `string`
        - Maximum length: `80`
        - Minimum length: `1`
    - `detail` (required):
      - Type: `string`
        - Maximum length: `1000`
        - Minimum length: `1`
    - `errors` (optional):
      - Type: `object[]`
        - Maximum items: `100`
        - Items:
          - Type: `object`
            - Additional properties: `forbidden`
            - Properties:
              - `code` (required):
                - Type: `string`
                  - Maximum length: `80`
                  - Minimum length: `1`
              - `message` (required):
                - Type: `string`
                  - Maximum length: `500`
                  - Minimum length: `1`
              - `pointer` (required):
                - Type: `string`
                  - Pattern: `^\/.*`
    - `instance` (required):
      - Type: `string`
        - Pattern: `^\/.*`
    - `param` (optional):
      - Type: `string`
        - Maximum length: `160`
        - Minimum length: `1`
    - `request_id` (required):
      - Type: `string<uuid>`
        - Format: `uuid`
        - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`
    - `required_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `retryable` (required):
      - Type: `boolean`
    - `status` (required):
      - Type: `integer`
        - Maximum: `599`
        - Minimum: `400`
    - `title` (required):
      - Type: `string`
        - Maximum length: `120`
        - Minimum length: `1`
    - `top_up_url` (optional):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`
    - `type` (required):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`

### 408

The server did not complete the request in time. This failure is non-billable and may be retried.

This response uses [Problem Details](/reference/problem-details).

#### Headers

##### `Cache-Control`

`string` · required

Public cache policy for the bounded catalogue response.

- Type: `string`

##### `ETag`

`string` · required

Strong representation validator for conditional GET requests.

- Type: `string`

##### `Retry-After`

`integer` · optional

Minimum number of seconds before retrying when supplied.

- Type: `integer`
  - Minimum: `0`

##### `traceparent`

`string` · required

W3C trace context generated for this request attempt.

- Type: `string`
  - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$`

##### `X-Request-Id`

`string<uuid>` · required

Unique UUIDv7 identifier for this request attempt.

- Type: `string<uuid>`
  - Format: `uuid`

#### application/problem+json

Errors follow [Problem Details](/reference/problem-details).

- Type: `ProblemDetails`
  - Component: [`ProblemDetails`](/reference/problem-details)
  - Additional properties: `forbidden`
  - Properties:
    - `available_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `code` (required):
      - Type: `string`
        - Maximum length: `80`
        - Minimum length: `1`
    - `detail` (required):
      - Type: `string`
        - Maximum length: `1000`
        - Minimum length: `1`
    - `errors` (optional):
      - Type: `object[]`
        - Maximum items: `100`
        - Items:
          - Type: `object`
            - Additional properties: `forbidden`
            - Properties:
              - `code` (required):
                - Type: `string`
                  - Maximum length: `80`
                  - Minimum length: `1`
              - `message` (required):
                - Type: `string`
                  - Maximum length: `500`
                  - Minimum length: `1`
              - `pointer` (required):
                - Type: `string`
                  - Pattern: `^\/.*`
    - `instance` (required):
      - Type: `string`
        - Pattern: `^\/.*`
    - `param` (optional):
      - Type: `string`
        - Maximum length: `160`
        - Minimum length: `1`
    - `request_id` (required):
      - Type: `string<uuid>`
        - Format: `uuid`
        - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`
    - `required_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `retryable` (required):
      - Type: `boolean`
    - `status` (required):
      - Type: `integer`
        - Maximum: `599`
        - Minimum: `400`
    - `title` (required):
      - Type: `string`
        - Maximum length: `120`
        - Minimum length: `1`
    - `top_up_url` (optional):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`
    - `type` (required):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`

### 429

The organisation request rate was exceeded. Retry after the indicated delay.

This response uses [Problem Details](/reference/problem-details).

#### Headers

##### `Cache-Control`

`string` · required

Public cache policy for the bounded catalogue response.

- Type: `string`

##### `ETag`

`string` · required

Strong representation validator for conditional GET requests.

- Type: `string`

##### `Retry-After`

`integer` · optional

Minimum number of seconds before retrying when supplied.

- Type: `integer`
  - Minimum: `0`

##### `traceparent`

`string` · required

W3C trace context generated for this request attempt.

- Type: `string`
  - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$`

##### `X-Request-Id`

`string<uuid>` · required

Unique UUIDv7 identifier for this request attempt.

- Type: `string<uuid>`
  - Format: `uuid`

#### application/problem+json

Errors follow [Problem Details](/reference/problem-details).

- Type: `ProblemDetails`
  - Component: [`ProblemDetails`](/reference/problem-details)
  - Additional properties: `forbidden`
  - Properties:
    - `available_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `code` (required):
      - Type: `string`
        - Maximum length: `80`
        - Minimum length: `1`
    - `detail` (required):
      - Type: `string`
        - Maximum length: `1000`
        - Minimum length: `1`
    - `errors` (optional):
      - Type: `object[]`
        - Maximum items: `100`
        - Items:
          - Type: `object`
            - Additional properties: `forbidden`
            - Properties:
              - `code` (required):
                - Type: `string`
                  - Maximum length: `80`
                  - Minimum length: `1`
              - `message` (required):
                - Type: `string`
                  - Maximum length: `500`
                  - Minimum length: `1`
              - `pointer` (required):
                - Type: `string`
                  - Pattern: `^\/.*`
    - `instance` (required):
      - Type: `string`
        - Pattern: `^\/.*`
    - `param` (optional):
      - Type: `string`
        - Maximum length: `160`
        - Minimum length: `1`
    - `request_id` (required):
      - Type: `string<uuid>`
        - Format: `uuid`
        - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`
    - `required_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `retryable` (required):
      - Type: `boolean`
    - `status` (required):
      - Type: `integer`
        - Maximum: `599`
        - Minimum: `400`
    - `title` (required):
      - Type: `string`
        - Maximum length: `120`
        - Minimum length: `1`
    - `top_up_url` (optional):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`
    - `type` (required):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`

### 503

The service or durable usage settlement is temporarily unavailable. This failure is non-billable.

This response uses [Problem Details](/reference/problem-details).

#### Headers

##### `Cache-Control`

`string` · required

Public cache policy for the bounded catalogue response.

- Type: `string`

##### `ETag`

`string` · required

Strong representation validator for conditional GET requests.

- Type: `string`

##### `Retry-After`

`integer` · optional

Minimum number of seconds before retrying when supplied.

- Type: `integer`
  - Minimum: `0`

##### `traceparent`

`string` · required

W3C trace context generated for this request attempt.

- Type: `string`
  - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$`

##### `X-Request-Id`

`string<uuid>` · required

Unique UUIDv7 identifier for this request attempt.

- Type: `string<uuid>`
  - Format: `uuid`

#### application/problem+json

Errors follow [Problem Details](/reference/problem-details).

- Type: `ProblemDetails`
  - Component: [`ProblemDetails`](/reference/problem-details)
  - Additional properties: `forbidden`
  - Properties:
    - `available_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `code` (required):
      - Type: `string`
        - Maximum length: `80`
        - Minimum length: `1`
    - `detail` (required):
      - Type: `string`
        - Maximum length: `1000`
        - Minimum length: `1`
    - `errors` (optional):
      - Type: `object[]`
        - Maximum items: `100`
        - Items:
          - Type: `object`
            - Additional properties: `forbidden`
            - Properties:
              - `code` (required):
                - Type: `string`
                  - Maximum length: `80`
                  - Minimum length: `1`
              - `message` (required):
                - Type: `string`
                  - Maximum length: `500`
                  - Minimum length: `1`
              - `pointer` (required):
                - Type: `string`
                  - Pattern: `^\/.*`
    - `instance` (required):
      - Type: `string`
        - Pattern: `^\/.*`
    - `param` (optional):
      - Type: `string`
        - Maximum length: `160`
        - Minimum length: `1`
    - `request_id` (required):
      - Type: `string<uuid>`
        - Format: `uuid`
        - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`
    - `required_credit_usd` (optional):
      - Type: `string`
        - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$`
    - `retryable` (required):
      - Type: `boolean`
    - `status` (required):
      - Type: `integer`
        - Maximum: `599`
        - Minimum: `400`
    - `title` (required):
      - Type: `string`
        - Maximum length: `120`
        - Minimum length: `1`
    - `top_up_url` (optional):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`
    - `type` (required):
      - Type: `string<uri>`
        - Format: `uri`
        - Maximum length: `2048`

## Pagination

- Allows page size change: `true`
- Cursor ttl seconds: `86400`
- Has more path: `has_more`
- Items path: `data`
- Next cursor path: `next_cursor`
- Style: `keyset`
