Accessing file groups via REST API

Individual files on Uploadcare can be joined into groups. Those can be used to better organize your workflow. Technically, groups are ordered lists of files and can hold files together with their Media Processing [operations][processing]. The most common case with creating groups is when users upload multiple files at once.

Note, a group itself and files within that group MUST belong to the same project. Groups are immutable and the only way to add/remove a file is creating a new group.

Group identifiers

Groups are identified in a way similar to individual files. A group ID consists of a UUID followed by a “~” tilde character and a group size: integer number of files in group. For example, here is an identifier for a group holding 12 files,

badfc9f7-f88f-4921-9cc0-22e2c08aa2da~12

Group properties

PropertyTypeValue
datetime_createdstringDate and time when a group was created.
datetime_storedstringDate and time when files in a group were stored.
files_countnumberNumber of files in a group.
cdn_urlstringPublic CDN URL for a group.
filesarrayList of files in a group. Deleted files are represented as null to always preserve a number of files in a group in line with a group ID. This property is not available for group lists.
urlstringAPI resource URL for a group.
idstringGroup identifier.

Get a paginated list of groups

Multiple groups can be present in your project. This means you might first want to access a list of those groups, then individual groups, and files.

GET /groups/

You MAY also include the following optional parameters in your query,

limit, number

A preferred amount of groups in a list for a single response. Defaults to 100, while the maximum is 1000.

from, datetime

A starting point for filtering group lists. MUST be a datetime value with T used as a separator,

?from=2015-01-02T10:00:00

ordering

Specifies the way groups are sorted in a returned list,

  • datetime_created - by creation time, ascending order.
  • -datetime_created - by creation time, descending order.

Defaults to datetime_created.

Get a file group by UUID

GET /groups/:group_id/

You may refer to getting a single file for a request and response example.

Mark all files in a group as stored

For your files to be available on from our CDN after the initial 24-hour period, you should store them. You can do that by either storing a file group, storing an individual file or storing a list of files.

PUT /groups/:group_id/storage/

You may refer to storing a single file for a request and response example.

We’re always happy to help with code, integration, and other stuff. Search our site for more info or post your question in our Community Area.