---
title: "Create skill export"
method: POST
path: "/skill-exports"
tags: ["Skill Exports"]
---

# Create skill export

`POST /skill-exports`

## Request

- Base URL: `https://api.metorial.com`
- URL: `https://api.metorial.com/skill-exports`
- Auth: HTTP bearer

Creates a skill, plugin, or marketplace export.

## Headers

- `Metorial-Version` string

## Request body

- BodyRequest52
  - `target` 'skill' | 'plugin' | 'marketplace', required
  - `skill_id` string
  - `skill_plugin_id` string
  - `skill_marketplace_id` string

## Response `200`

Successful response

- SkillExport
  - `object` 'skill.export', required
  - `id` string, required
  - `target` 'skill' | 'plugin' | 'marketplace', required
  - `status` 'pending' | 'completed' | 'failed', required
  - `file` object, nullable, required
    - `object` 'file', required: String representing the object's type
    - `id` string, required: The files's unique identifier
    - `status` 'active' | 'deleted', required: The files's status
    - `file_name` string, required: The file's name
    - `file_size` number, required: The file's size in bytes
    - `file_type` string, required: The file's MIME type
    - `title` string, required: The file's title
    - `purpose` string, required: The file's purpose identifier
    - `created_by` object, nullable, required
      - `type` 'organization_actor' | 'consumer' | 'resource_actor', required
      - `name` string, required
      - `image_url` string, nullable, required
      - `email` string, nullable, required
      - `organization_actor` object, nullable, required
        - `object` 'organization.actor', required: String representing the object's type
        - `id` string, required: The organization member's unique identifier
        - `type` 'member' | 'machine_access', required: The organization member's type
        - `organization_id` string, required: The organization member's organization ID
        - `name` string, required: The organization member's name
        - `email` string, nullable, required: The organization member's email
        - `image_url` string, required: The organization member's image URL
        - `member` object, nullable, required
          - `object` 'organization.member#preview', required: String representing the organization's member preview type
          - `id` string, required: The organization member's unique identifier
          - `status` 'active' | 'deleted', required: The organization member's status
          - `role` 'member' | 'admin', required: The organization member's role
        - `teams` Team[], required
          - `id` string, required: The team ID
          - `name` string, required: The team name
          - `slug` string, required: The team slug
          - `assignment_id` string, required: The team assignment ID
          - `created_at` string, date-time, required: The team assignment creation date
          - `updated_at` string, date-time, required: The team assignment last update date
        - `created_at` string, date-time, required: The organization member's creation date
        - `updated_at` string, date-time, required: The organization member's last update date
      - `consumer` object, nullable, required
        - `object` 'consumer', required
        - `id` string, required
        - `name` string, required
        - `email` string, required
        - `image_url` string, required
        - `user_id` string, nullable, required
        - `created_at` string, date-time, required
        - `updated_at` string, date-time, required
      - `consumer_profile` object, nullable, required
        - `object` 'consumer.profile', required
        - `id` string, required
        - `name` string, required
        - `email` string, required
        - `image_url` string, required
        - `consumer_id` string, required
        - `user_id` string, nullable, required
        - `status` 'active' | 'invited', required
        - `created_at` string, date-time, required
        - `updated_at` string, date-time, required
        - `groups` Group[], nullable, required
          - `object` 'consumer.profile.group_assignment', required
          - `group` ConsumerGroup, required
            - `object` 'consumer.group', required
            - `id` string, required
            - `status` 'active' | 'archived' | 'deleted', required
            - `name` string, required
            - `description` string, nullable, required
            - `is_default` boolean, required
            - `created_at` string, date-time, required
            - `updated_at` string, date-time, required
          - `assigned_via` 'default' | 'manual' | 'sso' | 'user', required
    - `created_at` string, date-time, required: The files's creation date
    - `updated_at` string, date-time, required: The files's last update date
  - `file_link` object, nullable, required
    - `object` 'file.file_link', required: String representing the object's type
    - `id` string, required: The links's unique identifier
    - `file_id` string, required: The file's unique identifier
    - `url` string, required: The file's public URL
    - `created_at` string, date-time, required: The links's creation date
    - `expires_at` string, date-time, nullable, required: The file's expiration date
  - `created_by` object, nullable, required
    - `type` 'organization_actor' | 'consumer' | 'resource_actor', required
    - `name` string, required
    - `image_url` string, nullable, required
    - `email` string, nullable, required
    - `organization_actor` object, nullable, required
      - `object` 'organization.actor', required: String representing the object's type
      - `id` string, required: The organization member's unique identifier
      - `type` 'member' | 'machine_access', required: The organization member's type
      - `organization_id` string, required: The organization member's organization ID
      - `name` string, required: The organization member's name
      - `email` string, nullable, required: The organization member's email
      - `image_url` string, required: The organization member's image URL
      - `member` object, nullable, required
        - `object` 'organization.member#preview', required: String representing the organization's member preview type
        - `id` string, required: The organization member's unique identifier
        - `status` 'active' | 'deleted', required: The organization member's status
        - `role` 'member' | 'admin', required: The organization member's role
      - `teams` Team[], required
        - `id` string, required: The team ID
        - `name` string, required: The team name
        - `slug` string, required: The team slug
        - `assignment_id` string, required: The team assignment ID
        - `created_at` string, date-time, required: The team assignment creation date
        - `updated_at` string, date-time, required: The team assignment last update date
      - `created_at` string, date-time, required: The organization member's creation date
      - `updated_at` string, date-time, required: The organization member's last update date
    - `consumer` object, nullable, required
      - `object` 'consumer', required
      - `id` string, required
      - `name` string, required
      - `email` string, required
      - `image_url` string, required
      - `user_id` string, nullable, required
      - `created_at` string, date-time, required
      - `updated_at` string, date-time, required
    - `consumer_profile` object, nullable, required
      - `object` 'consumer.profile', required
      - `id` string, required
      - `name` string, required
      - `email` string, required
      - `image_url` string, required
      - `consumer_id` string, required
      - `user_id` string, nullable, required
      - `status` 'active' | 'invited', required
      - `created_at` string, date-time, required
      - `updated_at` string, date-time, required
      - `groups` Group[], nullable, required
        - `object` 'consumer.profile.group_assignment', required
        - `group` ConsumerGroup, required
          - `object` 'consumer.group', required
          - `id` string, required
          - `status` 'active' | 'archived' | 'deleted', required
          - `name` string, required
          - `description` string, nullable, required
          - `is_default` boolean, required
          - `created_at` string, date-time, required
          - `updated_at` string, date-time, required
        - `assigned_via` 'default' | 'manual' | 'sso' | 'user', required
  - `created_at` string, date-time, required
  - `started_at` string, date-time, nullable, required
  - `completed_at` string, date-time, nullable, required

## Other responses

- `400`: Invalid parameters or action
- `401`: Missing or invalid API key
- `403`: The key lacks permission for this resource
- `404`: No such resource
- `422`: Validation failed
- `429`: Rate limit exceeded
- `500`: Unexpected server error

---

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