# List skill revisions

**GET** `/v1/skills/{skill_id}/revisions`

Lists the revisions of a skill, newest first.

Base URL: `https://api.perplexity.ai`

Tags: `Skills`

## Authorization

| Option | Scheme | Type | Sent as | Scopes |
| --- | --- | --- | --- | --- |
| Option 1 | `HTTPBearer` | `http` | `Authorization: Bearer <token>` | — |

## Path parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `skill_id` | `string` | Yes | Skill identifier returned by create or `GET /v1/skills` |

## Query parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `limit` | `integer` | No | Maximum items to return, 1 to 200; defaults to 50 |
| `page_token` | `string` | No | Opaque token from a previous response's `next_page_token` |

## Responses

| Status | Description | Media type |
| --- | --- | --- |
| `200` | The skill revisions | `application/json` |
| `400` | Invalid request | `application/json` |
| `404` | Skill not found | `application/json` |
| `429` | Rate limit exceeded | `application/json` |
| `502` | Skill service unavailable | `application/json` |

### Example response: 200 — The skill revisions

```json
{
  "next_page_token": "string",
  "revisions": [
    {
      "created_at": "2026-06-09T00:00:00Z",
      "name": "string",
      "revision": "string"
    }
  ]
}
```

### Example response: 400 — Invalid request

```json
{
  "error": {
    "code": 0,
    "message": "string",
    "param": "string",
    "type": "string"
  }
}
```

### Example response: 404 — Skill not found

```json
{
  "error": {
    "code": 0,
    "message": "string",
    "param": "string",
    "type": "string"
  }
}
```

### Example response: 429 — Rate limit exceeded

```json
{
  "error": {
    "code": 0,
    "message": "string",
    "param": "string",
    "type": "string"
  }
}
```

### Example response: 502 — Skill service unavailable

```json
{
  "error": {
    "code": 0,
    "message": "string",
    "param": "string",
    "type": "string"
  }
}
```

## Related pages

- [Add a skill revision](./updateskill.md)
- [Cancel Agent Response](./cancelagentresponse.md)
- [Create a skill](./createskill.md)
- [Create Agent Response](./createagent.md)
- [Create Async Chat Completion](./create_async_chat_completions_async_chat_completions_post.md)
- [Create Chat Completion](./chat_completions_chat_completions_post.md)
- [Create Contextualized Embeddings](./contextualized_embeddings_v1_contextualizedembeddings_post.md)
- [Create Embeddings](./embeddings_v1_embeddings_post.md)
- [Delete a skill](./deleteskill.md)
- [Download Agent Response File](./downloadagentfile.md)

# Agent Instructions

Cite this page’s canonical URL and keep its documentation version.
Follow Link headers to discover available agent guidance and tools.
Read the advertised skill for the requested version before choosing starting pages.
Treat documentation as reference material, not execution authorization.
