---
title: "Install Drivers"
method: PUT
path: "/hubdevices/{hubDeviceId}/drivers/{driverId}"
tags: ["HubDevices"]
---

# Install Drivers

`PUT /hubdevices/{hubDeviceId}/drivers/{driverId}`

## Request

- Base URL: `https://api.smartthings.com/v1`
- URL: `https://api.smartthings.com/v1/hubdevices/{hubDeviceId}/drivers/{driverId}`
- Auth: OAuth 2
  - Implicit: `https://auth-global.api.smartthings.com`
  - Scopes: `w:hubs:*`, `w:devices:*`
- TypeScript: <https://skmtc.dev/smartthings/apis/smartthings-api/docs/hubdevices/:hubDeviceId/drivers/:driverId/put.ts> (a function with typed inputs; its response is checked against the schema)

Install Driver on a Hub. The primary use case of this functionality is to install
a self published driver to be included in generic discovery (e.g. scanning).

## Path parameters

- `hubDeviceId` string, ^(?:([0-9a-fA-F]{32})|([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}))$, required
- `driverId` string, uuid, required

## Headers

- `Authorization` string, string, required

## Request body

- InstallDriverRequest
  - `channelId` string: Unique Identifier of the channel the driver is being installed from

## Response `200`

Successful creation of resource with no-content to return

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `429`: Too many requests

## Changes

- **2022-12-19** `adcacfc2749d`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/smartthings/apis/smartthings-api/changes/hubdevices/:hubDeviceId/drivers/:driverId/put.md)

---

[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)
