---
title: "Create a new media in the specified collection from an existing file accessible by URL"
method: POST
path: "/collections/{collection_id}/media"
tags: ["Media upload"]
---

# Create a new media in the specified collection from an existing file accessible by URL

`POST /collections/{collection_id}/media`

## Path parameters

- `collection_id` integer, required

## Query parameters

- `url` string, required
- `title` string
- `description` string
- `auto_caption` boolean
- `user_id` integer
- `is_external` boolean

## Response `201`

The media has been uploaded.

- object
  - `media` Media
    - `id` integer
    - `title` string
    - `description` string
    - `duration` number
    - `created_at` string, date-time
    - `last_viewed` string, date
    - `last_viewed_by_student` string, date
    - `thumbnail_url` string
    - `transcoding_status` string
    - `owner` User
      - `id` integer
      - `full_name` string
      - `display_name` string
      - `email` string
    - `size` integer
    - `source` string
    - `embed_id` string
    - `lti_launch_id` string
    - `archived_at` string, date-time

## Other responses

- `401` — Authorization information is missing or invalid.
- `403` — If a user without proper permissions tries to call this endpoint, the call is rejected with 403 Forbidden.
- `404` — The collection was not found by ID.
- `422` — Invalid collection_id is provided.
- `501` — Auto-captioning was requested but is not enabled for the account.

---

[API](https://skmtc.net/instructure/apis/studio-public-api.md) · [All operations](https://skmtc.net/instructure/apis/studio-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/instructure/studio-public-api/revisions/4838a5113869/schema)
