---
title: Shared
url: https://platform.claude.com/docs/en/api/typescript/$shared
---

# Shared

## Domain types

### API Error Object

- `interface APIErrorObject`

  - `type: "api_error"`

    default: api_error

  - `message: string`

    default: Internal server error

### Authentication Error

- `interface AuthenticationError`

  - `type: "authentication_error"`

    default: authentication_error

  - `message: string`

    default: Authentication error

### Billing Error

- `interface BillingError`

  - `type: "billing_error"`

    default: billing_error

  - `message: string`

    default: Billing error

### Error Object

- `type ErrorObject = InvalidRequestError | AuthenticationError | BillingError | 6 more`

  - `interface InvalidRequestError`

    - `type: "invalid_request_error"`

      default: invalid_request_error

    - `message: string`

      default: Invalid request

  - `interface AuthenticationError`

    - `type: "authentication_error"`

      default: authentication_error

    - `message: string`

      default: Authentication error

  - `interface BillingError`

    - `type: "billing_error"`

      default: billing_error

    - `message: string`

      default: Billing error

  - `interface PermissionError`

    - `type: "permission_error"`

      default: permission_error

    - `message: string`

      default: Permission denied

  - `interface NotFoundError`

    - `type: "not_found_error"`

      default: not_found_error

    - `message: string`

      default: Not found

  - `interface RateLimitError`

    - `type: "rate_limit_error"`

      default: rate_limit_error

    - `message: string`

      default: Rate limited

  - `interface GatewayTimeoutError`

    - `type: "timeout_error"`

      default: timeout_error

    - `message: string`

      default: Request timeout

  - `interface APIErrorObject`

    - `type: "api_error"`

      default: api_error

    - `message: string`

      default: Internal server error

  - `interface OverloadedError`

    - `type: "overloaded_error"`

      default: overloaded_error

    - `message: string`

      default: Overloaded

### Error Response

- `interface ErrorResponse`

  - `type: "error"`

    default: error

  - `error: ErrorObject`

    - `interface InvalidRequestError`

      - `type: "invalid_request_error"`

        default: invalid_request_error

      - `message: string`

        default: Invalid request

    - `interface AuthenticationError`

      - `type: "authentication_error"`

        default: authentication_error

      - `message: string`

        default: Authentication error

    - `interface BillingError`

      - `type: "billing_error"`

        default: billing_error

      - `message: string`

        default: Billing error

    - `interface PermissionError`

      - `type: "permission_error"`

        default: permission_error

      - `message: string`

        default: Permission denied

    - `interface NotFoundError`

      - `type: "not_found_error"`

        default: not_found_error

      - `message: string`

        default: Not found

    - `interface RateLimitError`

      - `type: "rate_limit_error"`

        default: rate_limit_error

      - `message: string`

        default: Rate limited

    - `interface GatewayTimeoutError`

      - `type: "timeout_error"`

        default: timeout_error

      - `message: string`

        default: Request timeout

    - `interface APIErrorObject`

      - `type: "api_error"`

        default: api_error

      - `message: string`

        default: Internal server error

    - `interface OverloadedError`

      - `type: "overloaded_error"`

        default: overloaded_error

      - `message: string`

        default: Overloaded

  - `request_id: string | null`

### Error Type

- `type ErrorType = "invalid_request_error" | "authentication_error" | "permission_error" | 6 more`

  - `"invalid_request_error"`

  - `"authentication_error"`

  - `"permission_error"`

  - `"not_found_error"`

  - `"rate_limit_error"`

  - `"timeout_error"`

  - `"overloaded_error"`

  - `"api_error"`

  - `"billing_error"`

### Gateway Timeout Error

- `interface GatewayTimeoutError`

  - `type: "timeout_error"`

    default: timeout_error

  - `message: string`

    default: Request timeout

### Invalid Request Error

- `interface InvalidRequestError`

  - `type: "invalid_request_error"`

    default: invalid_request_error

  - `message: string`

    default: Invalid request

### Not Found Error

- `interface NotFoundError`

  - `type: "not_found_error"`

    default: not_found_error

  - `message: string`

    default: Not found

### Overloaded Error

- `interface OverloadedError`

  - `type: "overloaded_error"`

    default: overloaded_error

  - `message: string`

    default: Overloaded

### Permission Error

- `interface PermissionError`

  - `type: "permission_error"`

    default: permission_error

  - `message: string`

    default: Permission denied

### Rate Limit Error

- `interface RateLimitError`

  - `type: "rate_limit_error"`

    default: rate_limit_error

  - `message: string`

    default: Rate limited
