---
title: "Add or update a resource skill"
method: POST
path: "/v1/resources/{resourceId}/skills"
tags: ["Resources"]
---

# Add or update a resource skill

`POST /v1/resources/{resourceId}/skills`

## Request

- Base URL: `https://api.workwing.io`
- URL: `https://api.workwing.io/v1/resources/{resourceId}/skills`
- Auth: HTTP bearer

Upserts by (resource, ability_name). Optionally links a skill_definition_id.

## Path parameters

- `resourceId` string, uuid, required

## Headers

- `Idempotency-Key` string, required

## Request body

- object
  - `ability_name` string, required

## Response `201`

Default Response

- object
  - `data` object, required
    - `id` string, uuid, required
    - `resource_id` string, uuid, required
    - `ability_name` string, required
    - `skill_definition_id` string, uuid, nullable, required
    - `proficiency_level` string, nullable, required
    - `certified` boolean, nullable, required
    - `certification_expires_at` string, date-time, nullable, required
    - `notes` string, nullable, required
    - `created_at` string, date-time, nullable, required
    - `updated_at` string, date-time, nullable, required
  - `meta` object, required
    - `request_id` string, required
    - `timestamp` string, date-time, required

---

[API](https://skmtc.dev/workwing/apis/workwing-api.md) · [All operations](https://skmtc.dev/workwing/apis/workwing-api/llms.txt) · [OpenAPI document](https://skmtc.dev/workwing/apis/workwing-api/revisions/54bb14368a35?raw)
