Create an Asset

Create a new asset.

SecurityJWT or OAuth2 or DeveloperToken
Request
path Parameters
asset_id
required
string <uuid>
Request Body schema: application/json

While supported, we encourage you to switch from application/x-ww-form-urlencoded to application/json in order to support future workflows that will only be supported through JSON.

When is_realtime_upload is true, call must be made in application/json.

type
required
string

Must be file if is_realtime_upload is true.

Enum: "file" "folder"
name
string

The name the asset should have in Frame.io. This value does not have to match the name of the file on disk; it can be whatever you want it to be in Frame.io.

Required if is_realtime_upload is false.

If is_realtime_upload is true, must containa valid extension in the form of ".[ext]", unless extension is provided, in which case this field may be null or omitted.

extension
string

Required when is_realtime_upload is true, when name is not known at time of asset creation. If name is provided, must match extension of that value.

Ignored when is_realtime_upload is false.

When supplied, asset will be creted with name value of "[new file].extension".

filetype
string

MIME type like video/quicktime. Many languages have built in utilities for detecting file mimetype (see Go and Python for examples).

Required if is_realtime_upload is true.

is_realtime_upload
boolean
Default: false

If true, File data for this asset is to be uploaded through the Real-time Uploads API.

If false, File data for this asset will be uploaded through the default API.

Must be false if filetype is not file.

description
string

Brief description of the Asset

filesize
integer
Default: null

File size in bytes.

Required if is_realtime_upload is not true.

properties
object

Custom key-value data

object (AssetSource)
Responses
200

Asset create success response.

When is_realtime_asset was set to true in the request, a simplified payload will be returned.

Response Headers
x-ratelimit-limit
number

The number of times you can make this call within the x-ratelimit-window

x-ratelimit-remaining
string

The number of remaining times you can make this API call in the x-ratelimit-window

x-ratelimit-window
string

The length in milliseconds of the rate limit window

Response Schema: application/json
One of:
account_id
string <uuid>

Account ID this asset belongs to

archive_from
string or null <date-time>
archive_scheduled_at
string or null <date-time>
archive_status
string or null
archived_at
string or null <date-time>
asset_type
string
Enum: "document" "image" "stream"
bundle
boolean
Deprecated
bundle_view
string
Deprecated
cover_asset_id
string <uuid>
object (User)

User model

frames
integer

The number of frames in this asset (really only useful for videos)

hard_deleted_at
string or null <date-time>

Indicates the datetime this asset was hard deleted (30 days after soft-deletion)

id
string <uuid>

The ID for this asset, can be used in places like https://app.frame.io/player/:id to go directly to an asset

index
number <float>

Represented within the Frame.io UI as the "custom sort order" within the grid view

is_bundle_child
boolean
Deprecated

Indicates whether an asset is the child of a bundle asset

is_hls_required
boolean

Indicates whether HLS is required to playback this asset

is_session_watermarked
boolean

Indicates if this asset is subject to Session Based Watermarking (WMID)

item_count
integer

Applies only to folders and version stacks, indicates the number of items in that container

string

Status of the given Asset

metadata
object
object (MetadataFlags)
name
string

Represents the name of the asset (filename)

original
string

This is a URL to download the original asset, or in the event it's subject to watermarking but you still have permission to download - an asset that will be watermarked just-in-time as you download it

parent_asset_id
string <uuid>

The folder that this asset is in

project_id
string <uuid>

The project ID that this asset belongs to

object

Accepts arbitrary key/value pairs for storing information on an asset

object (RequiredTranscodes)
team_id
string <uuid>
object (UserPermissions)
type
string
Enum: "file" "folder" "version_stack" "bundle"
view_count
integer

Not a very helpful number, this really just represents the number of times this asset has been requested via the API

400

Bad Request

401

Unauthorized response

404

Not Found response

429

Standard frame.io API error response.

post/v2/assets/{asset_id}/children
Request samples
application/json
{
  • "name": "my_movie",
  • "type": "file",
  • "filetype": "video/mp4",
  • "auto_version_id": "4386e276-6317-4d8d-b82c-8a16df9b66d2",
  • "filesize": 80000000
}
Response samples
application/json
{
  • "account_id": "449e7a5c-69d3-4b8a-aaaf-5c9b713ebc65",
  • "archive_from": "2019-08-24T14:15:22Z",
  • "archive_scheduled_at": "2019-08-24T14:15:22Z",
  • "archive_status": "string",
  • "archived_at": "2019-08-24T14:15:22Z",
  • "asset_type": "document",
  • "bundle": true,
  • "bundle_view": "string",
  • "cover_asset_id": "6bd8f503-67d9-4b55-b7c3-e1b6bef82750",
  • "creator": {
    },
  • "frames": 0,
  • "hard_deleted_at": "2019-08-24T14:15:22Z",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "index": 0,
  • "is_bundle_child": true,
  • "is_hls_required": true,
  • "is_session_watermarked": true,
  • "item_count": 0,
  • "label": "approved",
  • "metadata": { },
  • "metadata_flags": {
    },
  • "name": "string",
  • "original": "string",
  • "parent_asset_id": "a7612734-1419-43cf-9bc9-c7901ea79e60",
  • "project_id": "405d8375-3514-403b-8c43-83ae74cfe0e9",
  • "properties": {
    },
  • "required_transcodes": {
    },
  • "team_id": "810007d0-bec5-486c-b5d1-28fcd8a079ba",
  • "user_permissions": {
    },
  • "type": "file",
  • "view_count": 0
}