Docs

Start here

Change an element

POST/v1/studio/elements/{element}on https://api.auray.ai/v1

Change an element's name, handle, description, properties, status, project or files.

Change an element's name, handle, description, properties, status, project or files. Takes a key holding studio:write — Account offers it unticked — or the desktop's own session key. Spends nothing.

#Authentication

Authorization: Bearer auray_sk_… — studio:write — Account offers it unticked; the desktop's session key holds it.

#Request

#Path parameters

NameTypeRequiredDescription
elementstringyes

#Body

application/json, required.

FieldTypeRequiredDefaultDescription
namestringno—0 to 60 characters.
handlestringno—
descriptionstringno—0 to 1000 characters. May be null.
propertiesobject[]no—May be null.
properties[].keystringyes—0 to 40 characters.
properties[].valuestringyes—0 to 200 characters.
statusstringno—One of "draft", "ready", "archived".
project_idstringno—May be null.
filesobject or object or object[]no—The element's files as a whole, in order: kept, added, or — by leaving one out — removed.
voiceobject or nullno—A voice element only: its voice, given whole.
voice_handlestringno—A character only: the @handle of the voice element it speaks with, or null for none. Refused on any other kind. May be null.
pinnedbooleanno—A style only: true has the AI Director use it on every shot it makes in this project, in place of the style pinned there before; false takes it off.

#Example request

curl -X POST https://api.auray.ai/v1/studio/elements/5b6c7d8e-9f0a-4b1c-8d2e-3f4a5b6c7d8e \
  -H "Authorization: Bearer $AURAY_API_KEY" \
  -H "content-type: application/json" \
  -d '{
  "status": "archived"
}'

#Responses

#200 OK

OK.

FieldTypeRequiredDefaultDescription
objectstringyes—One of "element".
idstringyes—
handlestringyes—What a prompt names it by: @char_aliya_v1. Every version has its own.
namestringyes—0 to 60 characters.
categorystringyes—One of "character", "location", "prop", "voice", "style".
versionintegeryes—1 to ….
lineage_idstringyes—Every version of one element shares it.
descriptionstringyes—0 to 1000 characters. May be null.
filesobject[]yes—Pictures or clips of a character, location or prop (one to six); a voice's one sound, its sample; a style's pictures (up to six).
files[].rolestringyes—original as made or uploaded; thumbnail a smaller picture for a card; poster a frame of a clip or a view of a mesh; captions a film's subtitles, the WebVTT a captioned export files beside it. One of "original", "thumbnail", "poster", "captions".
files[].urlstringyes—A URL.
files[].expires_atstringyes—
files[].content_typestringyes—
files[].bytesintegeryes—May be null.
files[].widthintegeryes—May be null.
files[].heightintegeryes—May be null.
files[].duration_msintegeryes—May be null.
files[].from_uploadbooleanno—On an element's file alone: whether it was made from a file not made here — false for a picture made here from files made here alone, true for one made from an upload, null where it is not known. Only a picture that is false can be made to speak. An item says its own as source.from_upload. May be null.
files[].uploadedbooleanno—On an element's file alone: true for your own upload itself.
propertiesobject[]yes—
properties[].keystringyes—0 to 40 characters.
properties[].valuestringyes—0 to 200 characters.
statusstringyes—One of "draft", "ready", "archived".
project_idstringyes—The project it was made in; null for one of your own across every project. May be null.
voiceobject or nullyes—A voice element's voice; null on every other kind.
voice_handlestringyes—A character's voice: the @handle of the voice element it speaks with. May be null.
pinnedbooleanyes—A style the AI Director uses on every shot it makes in its project: at most one per project.
sample_consentobject or nullno—A voice element's own recording: the consent it was kept with — whose voice, the words' version, when. Null for a sample made here, for no sample and on every other kind.
sample_acceptanceobject or nullno—A voice element's own recording kept since your account's one acceptance of real people's faces and voices: the acceptance it was kept under — its kind, the words' version, when you gave it. Null for a sample made here, for no sample, for one kept before it (see sample_consent) and on every other kind.
created_atstringyes—
updated_atstringyes—
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

#404 Not Found

#409 Conflict

#413 Payload Too Large

#429 Too Many Requests

#500 Internal Server Error

#502 Bad Gateway

#503 Service Unavailable

#Status codes

StatusMeaning
200OK.
400Bad Request
401Unauthorized
403Forbidden
404Not Found
409Conflict
413Payload Too Large
429Too Many Requests
500Internal Server Error
502Bad Gateway
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