---
search:
  tags:
    - Rate Limits
    - GET
seo:
  description: >-
    Returns the authenticated member's current rate limit profile. Every user,
    account, and… Reference for the GET /rate_limit_profile endpoint in the REST
    API.
sidebar:
  label: Get the Caller's Rate Limit Profile
  badge: GET
title: Get the Caller's Rate Limit Profile
type: openapi-operation
---
Returns the authenticated member's current rate limit profile. Every user, account, and API key owned by the member shares rate limits.

### Endpoint

- Method and path: `GET /rate_limit_profile`
- Operation ID: `getRateLimitProfile`
- API reference: [GET /rate_limit_profile](/api-reference/rest/rate-limits/get-rate-limit-profile)
- Complete specification: [OpenAPI (YAML)](/openapi.yml)
- Spec location (JSON Pointer): `#/paths/~1rate_limit_profile/get`

#### Authorization

- Accepted credentials: `UDX-Access-Key` header and `UDX-Access-Timestamp` header and `UDX-Access-Signature` header; or Bearer token in `Authorization`
- Details: [Authentication](/reference/authentication)

#### Parameters

```yaml
- $ref: "#/components/parameters/VersionHeader"
```


#### Responses

##### `200`

The caller's current member rate limit profile.

Headers:

```yaml
UDX-Version:
  $ref: "#/components/headers/VersionHeader"
```

Content type: `application/json`

Schema:

```yaml
$ref: "#/components/schemas/RateLimitProfileResponse"
```

Example: Example

```json
{
  "rate_limit_profile": {
    "profile_key": "tier_0",
    "profile_version": 1,
    "buckets": [
      {
        "bucket": "read",
        "refill_tokens_per_minute": 900,
        "capacity": 30,
        "unit_cost": 1
      },
      {
        "bucket": "write",
        "refill_tokens_per_minute": 450,
        "capacity": 15,
        "unit_cost": 1
      },
      {
        "bucket": "cancel",
        "refill_tokens_per_minute": 150,
        "capacity": 5,
        "unit_cost": 1
      }
    ]
  }
}
```

##### `401`

No valid credential was provided.

Headers:

```yaml
UDX-Version:
  $ref: "#/components/headers/VersionHeader"
```

Content type: `application/problem+json`

Schema:

```yaml
$ref: "#/components/schemas/ProblemDetails"
```

Example: Authentication failed

```json
{
  "type": "urn:udx:problem:invalid-authentication-credentials",
  "title": "Unauthorized",
  "status": 401,
  "detail": "invalid authentication credentials",
  "instance": "urn:request-id:8f14e45f-ceea-4abc-a743-e89a34d3f6ef"
}
```

##### `429`

The member rate limit was exceeded.

Headers:

```yaml
UDX-Version:
  $ref: "#/components/headers/VersionHeader"
Retry-After:
  $ref: "#/components/headers/RetryAfter"
Cache-Control:
  $ref: "#/components/headers/NoStore"
```

Content type: `application/problem+json`

Schema:

```yaml
$ref: "#/components/schemas/ProblemDetails"
```

Example: Example

```json
{
  "type": "urn:udx:problem:member-rate-limit-exceeded",
  "title": "Too Many Requests",
  "status": 429,
  "detail": "this member has temporarily exceeded its request rate",
  "instance": "urn:request-id:8f14e45f-ceea-4abc-a743-e89a34d3f6ef"
}
```

##### `500`

Something went wrong on UDX's side.

Headers:

```yaml
UDX-Version:
  $ref: "#/components/headers/VersionHeader"
```

Content type: `application/problem+json`

Schema:

```yaml
$ref: "#/components/schemas/ProblemDetails"
```

Example: Internal server error

```json
{
  "type": "urn:udx:problem:internal-error",
  "title": "Internal Server Error",
  "status": 500,
  "detail": "internal error",
  "instance": "urn:request-id:8f14e45f-ceea-4abc-a743-e89a34d3f6ef"
}
```

##### `503`

Request admission is unavailable.

Headers:

```yaml
UDX-Version:
  $ref: "#/components/headers/VersionHeader"
Cache-Control:
  $ref: "#/components/headers/NoStore"
```

Content type: `application/problem+json`

Schema:

```yaml
$ref: "#/components/schemas/ProblemDetails"
```

Example: Admission temporarily unavailable

```json
{
  "type": "urn:udx:problem:request-admission-unavailable",
  "title": "Service Unavailable",
  "status": 503,
  "detail": "request admission is temporarily unavailable",
  "instance": "urn:request-id:8f14e45f-ceea-4abc-a743-e89a34d3f6ef"
}
```


#### Referenced definitions

The references in the excerpts above resolve to these definitions in the complete specification.

##### `#/components/headers/VersionHeader`

```yaml
description: API version used for this response.
schema:
  type: string
  maxLength: 10
  description: A dated API version (YYYY-MM-DD).
  example: 2026-07-15
```

##### `#/components/schemas/RateLimitProfileResponse`

```yaml
type: object
additionalProperties: false
description: A response wrapping the caller's own current rate limit profile.
required:
  - rate_limit_profile
properties:
  rate_limit_profile:
    $ref: "#/components/schemas/RateLimitProfile"
```

##### `#/components/schemas/RateLimitProfile`

```yaml
type: object
additionalProperties: false
description: The caller's own current member rate limit profile.
required:
  - profile_key
  - profile_version
  - buckets
properties:
  profile_key:
    type: string
    minLength: 1
    maxLength: 32
    pattern: ^[a-z][a-z0-9_]*$
    description: Stable machine-readable profile key.
  profile_version:
    type: integer
    format: int64
    minimum: 1
    maximum: 1000000
    description: Immutable profile version.
  buckets:
    type: array
    minItems: 3
    maxItems: 3
    description: The profile's read, write, and cancel bucket definitions.
    items:
      $ref: "#/components/schemas/RateLimitBucket"
```

##### `#/components/schemas/RateLimitBucket`

```yaml
type: object
additionalProperties: false
description: One immutable continuous-token-bucket definition.
required:
  - bucket
  - refill_tokens_per_minute
  - capacity
  - unit_cost
properties:
  bucket:
    $ref: "#/components/schemas/RateLimitBucketName"
  refill_tokens_per_minute:
    type: integer
    format: int64
    minimum: 1
    maximum: 10000000
    description: Tokens restored per minute.
  capacity:
    type: integer
    format: int64
    minimum: 1
    maximum: 10000000
    description: Maximum tokens retained by the bucket.
  unit_cost:
    type: integer
    format: int64
    minimum: 1
    maximum: 10000000
    description: Default token cost for one operation assigned to this bucket.
```

##### `#/components/schemas/RateLimitBucketName`

```yaml
type: string
description: Closed rate bucket used by authenticated public REST operations.
enum:
  - read
  - write
  - cancel
x-enum-varnames:
  - RateLimitBucketRead
  - RateLimitBucketWrite
  - RateLimitBucketCancel
```

##### `#/components/schemas/ProblemDetails`

```yaml
type: object
description: An RFC 9457 machine-readable error, returned on every non-2xx response. The response's Content-Language header identifies the language used by title and detail, and Vary includes Accept-Language.
required:
  - type
  - title
  - status
properties:
  type:
    type: string
    format: uri-reference
    maxLength: 2048
    description: A stable URN identifying the kind of problem, for example urn:udx:problem:insufficient-permissions. Branch on it rather than on the localized detail. It is an identifier, not a URL to dereference.
  title:
    type: string
    maxLength: 40
    example: Bad Request
    description: A localized, human-readable summary of the error category. Stable for a given status code and resolved language — clients must not use it as a machine-readable discriminator.
  status:
    type: integer
    example: 400
    description: The HTTP status code, repeated from the response itself.
  detail:
    type: string
    maxLength: 500
    example: malformed request body
    description: A localized, human-readable explanation specific to this occurrence. Clients must not parse it for machine-readable information.
  instance:
    type: string
    format: uri-reference
    maxLength: 100
    example: urn:request-id:8f14e45f-ceea-4abc-a743-e89a34d3f6ef
    description: An identifier for this specific occurrence, so it can be correlated with server-side logs if you need to report it.
```

##### `#/components/headers/RetryAfter`

```yaml
description: Whole seconds to wait before retrying.
schema:
  type: integer
  minimum: 1
  description: A positive delay in whole seconds.
  example: 2
```

##### `#/components/headers/NoStore`

```yaml
description: Prevents caching this response.
schema:
  type: string
  enum:
    - no-store
  description: Always the cache directive no-store.
  example: no-store
```

##### `#/components/parameters/VersionHeader`

```yaml
name: UDX-Version
in: header
required: false
description: Dated API version (YYYY-MM-DD).
schema:
  type: string
  minLength: 10
  maxLength: 10
  description: A dated API version (YYYY-MM-DD).
  example: 2026-07-15
```

