Docs

Start here

List your projects

GET/v1/studio/projectson https://api.auray.ai/v1

A page of the projects you are a member of, by last change, creation or name, each with your role, its counts and its cover.

A page of the projects you are a member of, by last change, creation or name, each with your role, its counts and its cover. Takes a key holding studio:read (or studio:write, which reads too) — Account offers both unticked — or the desktop's own session key. Spends nothing.

#Authentication

Authorization: Bearer auray_sk_… — studio:read, or studio:write, which reads too — Account offers both unticked; the desktop's session key holds both.

#Request

#Query parameters

NameTypeRequiredDescription
cursorstringnoThe next_cursor the previous page answered, unchanged, with the same filters. None for the first page. 0 to 120 characters.
limitintegernoHow many on a page. 1 to 100.
sortstringnoOne of "updated", "created", "name".
qstringnoWords of a project's name. 0 to 200 characters.

#Example request

curl https://api.auray.ai/v1/studio/projects \
  -H "Authorization: Bearer $AURAY_API_KEY"

#Responses

#200 OK

OK.

FieldTypeRequiredDefaultDescription
objectstringyes—One of "list".
dataobject[]yes—
data[].objectstringyes—One of "project".
data[].idstringyes—
data[].namestringyes—0 to 80 characters.
data[].slugstringyes—The address segment its links carry; unique among the owner's projects. 3 to 60 characters.
data[].descriptionstringyes—0 to 140 characters. May be null.
data[].coverobject or nullyes—
data[].cover_item_idstringyes—May be null.
data[].accessstringyes—private is the only access in this release. One of "private", "team".
data[].rolestringyes—Your own role in the project. One of "owner", "admin", "collaborator", "viewer".
data[].canstring[]yes—What your role lets you do here; anything else is refused role_forbidden.
data[].countsobjectyes—
data[].counts.itemsintegeryes—Every item not in the Trash.
data[].counts.generationsintegeryes—
data[].counts.uploadsintegeryes—
data[].counts.elementsintegeryes—
data[].counts.foldersintegeryes—
data[].counts.trashedintegeryes—
data[].limitsobjectyes—What it may hold: the figures in force of its OWNER's plan (studio.max_items, studio.max_canvases, studio.max_members), whoever reads it — each told only to a role that can add against it, null to every other reader. A figure moved lower refuses the next one past it (studio_limit_reached, whose max is the same number) and takes nothing away, so a count above it is a project that held more before.
data[].limits.itemsintegeryes—Items it may hold, the Trash counted. Null unless your role may generate, upload or edit items. 1 to …. May be null.
data[].limits.canvasesintegeryes—Canvases it may hold. Null unless your role may edit canvases. 1 to …. May be null.
data[].limits.membersintegeryes—People it may seat, its owner counted. Null unless your role manages members. 1 to …. May be null.
data[].planobjectyes—What its OWNER's plan lets happen in it, whoever reads it — each bit told only to a reader it binds, null to every other, as limits is. open false is a read-only project: its owner's plan does not include Cinema Studio, so nothing can be added or changed in it, and every such write answers studio_not_in_plan; opening and downloading everything, removing things and handing the project over still work, and can stays your role's list.
data[].plan.openbooleanyes—Whether anything can be added or changed here: false in a read-only project. Null only to a reader who is no member. May be null.
data[].plan.callsbooleanyes—Whether a call can be held here: its owner's plan includes Cinema Studio and calls, and seats a team. False, a join answers studio_not_in_plan. Null unless your role may join calls. May be null.
data[].plan.publishbooleanyes—Whether the project may be published, or its publication updated: its owner's plan includes Cinema Studio and publishing. Withdrawing a publication never asks. Null unless you own it. May be null.
data[].bytesintegeryes—What its kept files take, the Trash included — what deleting it frees.
data[].created_atstringyes—
data[].updated_atstringyes—
next_cursorstringyes—Send it as cursor for the next page; null on the last. May be null.
request_idstringno—Mirrored in the X-Request-Id header.

Headers:

HeaderDescription
RateLimit-LimitBurst capacity.
RateLimit-Remaining
RateLimit-ResetSeconds until refill.
X-RateLimit-Limit
X-RateLimit-Remaining
X-RateLimit-ResetUnix seconds. The X- spelling is what client libraries read.
X-Request-Id

#400 Bad Request

#401 Unauthorized

#403 Forbidden

#429 Too Many Requests

#500 Internal Server Error

#503 Service Unavailable

#Status codes

StatusMeaning
200OK.
400Bad Request
401Unauthorized
403Forbidden
429Too Many Requests
500Internal Server Error
503Service Unavailable

Every refusal names its code, and every code is explained at Errors.

Start typing to search every page of the documentation.

Up arrow Down arrow to moveEnter to openEscape to close