---
title: "Get a skill download URL"
method: GET
path: "/skills/{slug}/download"
tags: ["Skills"]
---

# Get a skill download URL

`GET /skills/{slug}/download`

## Request

- Base URL: `https://api.parley.so/v1`
- URL: `https://api.parley.so/v1/skills/{slug}/download`
- Auth: HTTP bearer

Get a short-lived URL that downloads the whole skill, its SKILL.md and bundled documents, as a .skill archive.

## Path parameters

- `slug` string, required: The skill's slug.

## Response `200`

OK

- object
  - `url` string, uri, required: Downloads the skill as a .skill archive (a zip of its folder: SKILL.md and its references/) with a GET request. Send no Authorization header. The archive can be uploaded again to create or update a skill.
  - `fileName` string, required: The archive name, such as intake-checklist.skill.
  - `expiresAt` string, date-time, required: When the url stops working.

## Other responses

- `400`: The request was invalid. VALIDATION_FAILED.
- `401`: Missing or invalid credentials. UNAUTHORIZED.
- `403`: You don't have permission. FORBIDDEN.
- `404`: Not found. NOT_FOUND.
- `429`: Too many requests, or a usage limit was reached. TOO_MANY_REQUESTS.

---

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