---
title: "Get a Capability by ID and Version"
method: GET
path: "/capabilities/{capabilityId}/{capabilityVersion}"
tags: ["Capabilities"]
---

# Get a Capability by ID and Version

`GET /capabilities/{capabilityId}/{capabilityVersion}`

## Request

- Base URL: `https://api.smartthings.com/v1`
- URL: `https://api.smartthings.com/v1/capabilities/{capabilityId}/{capabilityVersion}`
- Auth: OAuth 2
  - Implicit: `https://auth-global.api.smartthings.com`
- TypeScript: <https://skmtc.dev/smartthings/apis/smartthings-api/docs/capabilities/:capabilityId/:capabilityVersion/get.ts> (a function with typed inputs; its response is checked against the schema)

Get a Capability with a given ID and version.

## Response `200`

successful return of a Capability

- Capability
  - `id` string, required: A URL safe unique identifier for the capability.
  - `version` integer, required: The version number of the capability.
  - `status` 'proposed' | 'live' | 'deprecated' | 'dead', required: The status of the capability. * __proposed__ - The capability is currently under development / in review. The capability definition may go through changes, some of which may currently not function properly. * __live__ - The capability has been through review and the definition has been codified. Once a definition transitions from proposed to live, it cannot be altered. * __deprecated__ - The capability is marked for removal in future versions. It should only be used during a short period of time to allow for existing integrations and automations to continue to work while the transition to a newer definition is made. * __dead__ - A previously deprecated definition is now ready for removal. Usage of the deprecated definition had dropped to a sufficiently low enough level to warrant removal. The dead definition still exists but it can no longer be used or implemented by devices.
  - `name` string, required: An alphanumeric English language name for the capability.
  - `ephemeral` boolean
  - `attributes` object: A mapping of attribute names to their definitions. All attribute names are lower camelcase.
  - `commands` object: A mapping of command names to their definitions. All command names are lower camelcase.

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not found
- `429`: Too many requests
- `default`: Unexpected error

---

[API](https://skmtc.dev/smartthings/apis/smartthings-api.md) - [All operations](https://skmtc.dev/smartthings/apis/smartthings-api/llms.txt) - [OpenAPI document](https://skmtc.dev/smartthings/apis/smartthings-api/revisions/2788a4236800?raw)
