Assets

In addition to the named parameters below, this endpoint accepts the

In addition to the named parameters below, this endpoint accepts the following query parameter convention which is pattern-validated and therefore not declared as named parameters:

  • filters.<field>[<op>] — content filtering (documented below).

Content filtering (filters.*)

Filtering narrows list results to assets matching field values. The allowed field names are project-specific — they come from the project's asset definitions — which is why filters.* parameters are pattern-validated rather than declared as named parameters.

Syntax: filters.<field>[<operator>]=<value>. <field> is one of:

  • A system field such as name, type, created, modified, entityId, creator, creatorSubject, author, authorSubject, categoryId, labels, labelGroups, or uiStatus.
  • An asset field, addressed as fields.<fieldId>. Unlike entries and compositions, asset field filters do not require a single-type filter — but if the same field ID has differing types across asset types, HTTP 400 is returned and a single asset type must be filtered.
OperatorEffect
[eq] / [neq]Exact equality / inequality.
[match]Contains (text search) match; text-like fields only.
[starts]Prefix match. Value limited to letters, numbers, _, ., -, and spaces.
[lt] / [lte] / [gt] / [gte]Comparisons for number, date, and datetime fields (including created / modified).
[in] / [nin]Comma-separated list; matches any (OR) / none of the values.
[all]Comma-separated list; list-valued fields (e.g. labels, multi-selects) must contain every value (AND).
[def]true or false; whether the field has a value at all.

Behavior:

  • Values are single strings, or comma-separated lists for [in], [nin], and [all]. Dates accept YYYY-MM-DD or a full datetime string. An empty value is rejected — use [def] to test presence.
  • Not every operator is valid for every field; the allowed set depends on the field's type. An unsupported combination returns HTTP 400 with the supported operators listed.
  • Malformed keys, unknown operators, and unknown field names return HTTP 400.

Examples:

  • filters.type[eq]=productImage — only assets of type productImage.
  • filters.modified[gte]=2026-01-01 — modified this year.
  • filters.fields.altText[def]=false — assets missing alt text.
get/api/v1/assets

Request

  • Base URL: https://uniform.app
  • URL: https://uniform.app/api/v1/assets
  • Auth: one of:
    • API key in header x-api-key
    • HTTP bearer

Query parameters

assetIdstring uuid

Specify a single asset ID to fetch

assetIDsstring[]

Specify multiple asset IDs to fetch. Response type will be a list

createdBystring

Filters asset lists by the user who created them. The user is specified by their identity subject

keywordstring

Matches assets where their name or description contains the specified keyword. This is a list query parameter, and cannot be used with any primary query parameters

searchSemanticstring

BETA: Semantic search using vector similarity to find assets by meaning. Use this for "images of mountains" style queries. Requires AI credits.

limitinteger

Max number of records to return

offsetinteger

Number of records to skip

orderBystring[]

Sets the sorting of the results. If unspecified, results are sorted by creation date ascending. Allowed values are: updated_at_DESC, updated_at_ASC, created_at_DESC, created_at_ASC, name_DESC, name_ASC, slug_DESC, slug_ASC, relevance_DESC (when searching).

facetBystring

Returns counts for distinct values of the specified field or fields (provided as comma-separated IDs).

projectIdstring uuid required

The project the asset/assets are on

typestring[]

The asset type ID to filter by

updatedBystring

Filters asset lists by the user who last updated them. The user is specified by their identity subject

withTotalCountboolean

Controls whether the total count of results will be returned along with the current results page in a list. Has no effect when not fetching a list. This does impact performance when enabled

releaseIdstring uuid

The ID of a release to fetch the content for.

  • When unspecified, all release content is excluded from the result(s).
  • When specified, all content is returned as it would appear in the release if it was released now. This includes both content copied to the release and changed, as well as content that is not part of the release.

Content copied to a release can be differentiated from base content by the releaseId property on the content. If the content is not copied to the release, this property will be undefined

withAssignedLabelsboolean

When true, includes full label entities in the response for UI rendering. The assignedLabels array includes the label and its parent group (if any). This parameter is not supported with uniform.global.

withUIStatusboolean

Returns additional author and creator metadata for the asset. This internal status is subject to change without notice and is thus marked deprecated to discourage use of internal data

deleted'exclude' | 'only' | 'include'

Controls filtering of trashed items.

exclude: (default) Only return items not in trash. only: Only return trashed items (for trash view). include: Return both trashed and non-trashed items.

Response

OK

OR

Changes

No recorded changes to this operation across all 1 revision of this API.