---
title: "List capabilities"
method: GET
path: "/core/capabilities"
tags: ["Capabilities"]
---

# List capabilities

`GET /core/capabilities`

## Request

- Base URL: `https://api.enterprise.sandbox.uphold.com`
- URL: `https://api.enterprise.sandbox.uphold.com/core/capabilities`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `/core/oauth2/token` scopes: `core.capabilities:read`
- TypeScript: <https://skmtc.dev/uphold/apis/core-api/docs/core/capabilities/get.ts> (a function with typed inputs; its response is checked against the schema)

List user capabilities.

## Headers

- `X-On-Behalf-Of` string
- `X-Uphold-User-Ip` union
  - string, ipv4
  - string, ipv6
- `X-Uphold-User-Agent` string
- `X-Uphold-User-Origin` string
- `X-Uphold-User-Country` string
- `X-Uphold-User-Subdivision` string
- `X-Uphold-User-City` string

## Response `200`

Capabilities retrieved.

- object
  - `capabilities` Capability[], required
    - `code` 'crypto-withdrawals' | 'card-withdrawals' | 'bank-withdrawals' | 'apple-pay-withdrawals' | 'paypal-withdrawals' | 'venmo-withdrawals' | 'crypto-deposits' | 'bank-deposits' | 'deposits' | 'receives' | 'sends' | 'trades' | 'cards' | 'apple-pay' | 'google-pay' | 'paypal' | 'venmo' | 'unique-account-number-viban', required: The code of the capability.
    - `name` string, required: The name of the capability.
    - `enabled` boolean, required: Whether the capability is enabled. If this is false, then there's at least one restrictions active.
    - `requirements` string[], required: The missing requirements for this capability to be fulfilled.
    - `restrictions` string[], required: The restrictions that are causing this capability to be disabled.

## Other responses

- `401`: Unauthorized.
- `403`: Forbidden.
- `429`: Too Many Requests.

---

[API](https://skmtc.dev/uphold/apis/core-api.md) - [All operations](https://skmtc.dev/uphold/apis/core-api/llms.txt) - [OpenAPI document](https://skmtc.dev/uphold/apis/core-api/revisions/6c663575c57a?raw)
