Set Designs Endpoints¶
Set Designs API endpoints.
Overview¶
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/v1/set-designs/ |
Create Set Design |
| GET | /api/v1/set-designs/ |
Read Set Designs |
| GET | /api/v1/set-designs/upload-tasks/{task_id} |
Get Set Design Base Images Upload Task |
| GET | /api/v1/set-designs/{id} |
Read Set Design |
| PUT | /api/v1/set-designs/{id} |
Update Set Design |
| DELETE | /api/v1/set-designs/{id} |
Delete Set Design |
| GET | /api/v1/set-designs/{id}/base-image |
Find Set Base Image |
| POST | /api/v1/set-designs/{id}/request-completion |
Request Set Design Completion |
| POST | /api/v1/set-designs/{set_design_id}/base-images/upload |
Upload Set Design Base Images Zip |
| GET | /api/v1/set-designs/{set_design_id}/base-images/upload-task |
Get Set Design Base Images Upload Task By Set Design |
API Reference¶
Sartiq Backend Server - Set Designs 0.1.0¶
set-designs¶
POST /api/v1/set-designs/¶
Create Set Design
Description
Create a new set design with base images and reference images.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
organization_id |
query | No |
Request body
{
"name": "string",
"description": null,
"background_preset_id": null,
"owner_id": null,
"organization_id": null,
"is_draft": true,
"base_images": [
{
"subject_id": "2079d134-8756-4328-9e0f-c217655af072",
"shot_type_id": "dca19190-66de-4e4f-9689-3c2399fc5bee",
"variant_index": 0,
"image": null
}
],
"reference_images": [
{
"shot_type_id": "3edff377-66a3-40ba-8352-499449a689ef",
"label": null,
"image": null
}
],
"subject_portraits": [
{
"subject_id": "4187dfc9-e213-4aa5-8d83-dd6e94e17bfc",
"image": null
}
]
}
Schema of the request body
{
"properties": {
"name": {
"type": "string",
"maxLength": 255,
"title": "Name"
},
"description": {
"anyOf": [
{
"type": "string",
"maxLength": 1024
},
{
"type": "null"
}
],
"title": "Description"
},
"background_preset_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Background Preset Id"
},
"owner_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Owner Id"
},
"organization_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Organization Id",
"description": "Organization this set design belongs to"
},
"is_draft": {
"type": "boolean",
"title": "Is Draft",
"description": "Create the set design as a work-in-progress draft.",
"default": false
},
"base_images": {
"items": {
"$ref": "#/components/schemas/SetBaseImageCreate"
},
"type": "array",
"title": "Base Images"
},
"reference_images": {
"items": {
"$ref": "#/components/schemas/SetReferenceImageCreate"
},
"type": "array",
"title": "Reference Images"
},
"subject_portraits": {
"items": {
"$ref": "#/components/schemas/SubjectPortraitCreate"
},
"type": "array",
"title": "Subject Portraits"
}
},
"type": "object",
"required": [
"name"
],
"title": "SetDesignCreate"
}
Responses
{
"id": "94a09245-6ef0-4097-94d1-ad960cfbf16a",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"name": "string",
"description": null,
"owner_id": "51fa6c64-8832-4a26-950a-99c76bca03b5",
"organization_id": null,
"background_preset_id": null,
"production_due_at": null,
"is_draft": true,
"base_images": [
{
"id": "3db9eaeb-ac12-43ef-b922-170569421310",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": "5365ed1a-11ef-4947-a667-a37088b4d993",
"shot_type_id": "de2e190f-0a5e-4209-8bb5-6f4f072b9de5",
"variant_index": 0,
"image_url": null,
"image_media": null
}
],
"reference_images": [
{
"id": "02f3285b-87f5-4a90-a3b2-75a6eca62609",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"shot_type_id": "cc435fd7-bad1-46b6-8eb8-5a4f2a0219f3",
"label": null,
"image_url": null,
"image_media": null
}
],
"subject_portraits": [
{
"id": "09eb3622-f533-41f3-9aec-fd5ddeea9a5f",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": "e74b7480-8e76-45d7-be6b-2c06dd7f29de",
"image_media": null
}
],
"deleted_at": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
},
"name": {
"type": "string",
"title": "Name"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Description"
},
"owner_id": {
"type": "string",
"format": "uuid",
"title": "Owner Id"
},
"organization_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Organization Id"
},
"background_preset_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Background Preset Id"
},
"production_due_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Production Due At"
},
"is_draft": {
"type": "boolean",
"title": "Is Draft",
"default": false
},
"base_images": {
"items": {
"$ref": "#/components/schemas/SetBaseImagePublic"
},
"type": "array",
"title": "Base Images",
"default": []
},
"reference_images": {
"items": {
"$ref": "#/components/schemas/SetReferenceImagePublic"
},
"type": "array",
"title": "Reference Images",
"default": []
},
"subject_portraits": {
"items": {
"$ref": "#/components/schemas/SubjectPortraitPublic"
},
"type": "array",
"title": "Subject Portraits",
"default": []
},
"deleted_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Deleted At"
}
},
"type": "object",
"required": [
"id",
"created_at",
"updated_at",
"name",
"owner_id"
],
"title": "SetDesignPublic"
}
GET /api/v1/set-designs/¶
Read Set Designs
Description
Retrieve set designs.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
limit |
query | integer | 100 | No | |
organization_id |
query | No | |||
owner_id |
query | No | |||
skip |
query | integer | 0 | No |
Responses
{
"data": [
{
"id": "ec2e878d-0f40-43db-ab13-79fdb5163884",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"name": "string",
"description": null,
"owner_id": "e1bf12a4-0000-4555-8598-d0d69e84a461",
"organization_id": null,
"background_preset_id": null,
"production_due_at": null,
"is_draft": true,
"base_images": [
{
"id": "a0d9d2f2-5cdf-4d62-8a46-dae52809cda7",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": "04ce7d16-a983-421b-bc90-acfd5ff2574b",
"shot_type_id": "f095a111-54c6-41cb-9b5e-4ef0164c80da",
"variant_index": 0,
"image_url": null,
"image_media": null
}
],
"reference_images": [
{
"id": "d9bd2e83-2057-44ec-909b-7706a2f762a3",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"shot_type_id": "380576f0-ccc0-4e81-9543-521f8ac57e9d",
"label": null,
"image_url": null,
"image_media": null
}
],
"subject_portraits": [
{
"id": "b544a1f0-b435-4a8b-b13d-5f289e696810",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": "12cf13a3-1488-45c7-aa7a-98084b293255",
"image_media": null
}
],
"deleted_at": null,
"latest_version": null,
"proof_preview": null,
"setup_progress": null
}
],
"count": 0
}
GET /api/v1/set-designs/{id}¶
Read Set Design
Description
Get set design by ID.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No |
Responses
{
"id": "6ec650c0-ea47-4d60-b1c3-9416ce8cf831",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"name": "string",
"description": null,
"owner_id": "9530c885-43df-4369-9e93-88a2767b2d4d",
"organization_id": null,
"background_preset_id": null,
"production_due_at": null,
"is_draft": true,
"base_images": [
{
"id": "b0d4d1c3-05cf-4bbc-adf8-423049f32404",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": "961e697e-77ac-4858-a05e-ac63587d1aa9",
"shot_type_id": "f82182f0-614c-4197-8822-d2416d8e8ff5",
"variant_index": 0,
"image_url": null,
"image_media": null
}
],
"reference_images": [
{
"id": "61158b1a-168c-4fc6-8008-aa4bb0171590",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"shot_type_id": "c117122a-f653-4828-982b-fa83225867c4",
"label": null,
"image_url": null,
"image_media": null
}
],
"subject_portraits": [
{
"id": "b248f265-5437-469b-adb2-58215acf6709",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": "f88b964a-47b9-4b1b-86cb-7dc838044cdb",
"image_media": null
}
],
"deleted_at": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
},
"name": {
"type": "string",
"title": "Name"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Description"
},
"owner_id": {
"type": "string",
"format": "uuid",
"title": "Owner Id"
},
"organization_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Organization Id"
},
"background_preset_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Background Preset Id"
},
"production_due_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Production Due At"
},
"is_draft": {
"type": "boolean",
"title": "Is Draft",
"default": false
},
"base_images": {
"items": {
"$ref": "#/components/schemas/SetBaseImagePublic"
},
"type": "array",
"title": "Base Images",
"default": []
},
"reference_images": {
"items": {
"$ref": "#/components/schemas/SetReferenceImagePublic"
},
"type": "array",
"title": "Reference Images",
"default": []
},
"subject_portraits": {
"items": {
"$ref": "#/components/schemas/SubjectPortraitPublic"
},
"type": "array",
"title": "Subject Portraits",
"default": []
},
"deleted_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Deleted At"
}
},
"type": "object",
"required": [
"id",
"created_at",
"updated_at",
"name",
"owner_id"
],
"title": "SetDesignPublic"
}
PUT /api/v1/set-designs/{id}¶
Update Set Design
Description
Update a set design.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No |
Request body
{
"name": null,
"description": null,
"background_preset_id": null,
"owner_id": null,
"organization_id": null,
"is_draft": null,
"base_images": null,
"reference_images": null,
"subject_portraits": null
}
Schema of the request body
{
"properties": {
"name": {
"anyOf": [
{
"type": "string",
"maxLength": 255
},
{
"type": "null"
}
],
"title": "Name"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Description"
},
"background_preset_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Background Preset Id"
},
"owner_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Owner Id"
},
"organization_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Organization Id",
"description": "Organization to transfer this set design to"
},
"is_draft": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Is Draft",
"description": "Toggle draft state. None = no change (e.g. set False to publish)."
},
"base_images": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/SetBaseImageCreate"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Base Images",
"description": "Full-replace base images list. None = no change."
},
"reference_images": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/SetReferenceImageCreate"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Reference Images",
"description": "Full-replace reference images list. None = no change."
},
"subject_portraits": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/SubjectPortraitCreate"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Subject Portraits",
"description": "Full-replace subject portraits list. None = no change."
}
},
"type": "object",
"title": "SetDesignUpdate"
}
Responses
{
"id": "9d9f34d7-7921-4c3c-afa5-50927b826579",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"name": "string",
"description": null,
"owner_id": "d2c935e2-a445-4434-964c-712782b314c1",
"organization_id": null,
"background_preset_id": null,
"production_due_at": null,
"is_draft": true,
"base_images": [
{
"id": "e3063ee1-15de-4d57-9de1-17fd31ed5be2",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": "f194608d-13c5-40c2-a24b-34bf83d48915",
"shot_type_id": "08eaaeb0-1a3f-43ef-a292-33e16ad5761e",
"variant_index": 0,
"image_url": null,
"image_media": null
}
],
"reference_images": [
{
"id": "6459dd9d-e494-432c-a445-7f2cf77a3ea4",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"shot_type_id": "2ef1ed9c-66ed-4273-9c3d-0cdd8ad7a0b5",
"label": null,
"image_url": null,
"image_media": null
}
],
"subject_portraits": [
{
"id": "72c25ff9-826a-4aa2-bedb-672661b72408",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": "5356a557-94b5-4b1e-a093-4d034970fcb0",
"image_media": null
}
],
"deleted_at": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
},
"name": {
"type": "string",
"title": "Name"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Description"
},
"owner_id": {
"type": "string",
"format": "uuid",
"title": "Owner Id"
},
"organization_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Organization Id"
},
"background_preset_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Background Preset Id"
},
"production_due_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Production Due At"
},
"is_draft": {
"type": "boolean",
"title": "Is Draft",
"default": false
},
"base_images": {
"items": {
"$ref": "#/components/schemas/SetBaseImagePublic"
},
"type": "array",
"title": "Base Images",
"default": []
},
"reference_images": {
"items": {
"$ref": "#/components/schemas/SetReferenceImagePublic"
},
"type": "array",
"title": "Reference Images",
"default": []
},
"subject_portraits": {
"items": {
"$ref": "#/components/schemas/SubjectPortraitPublic"
},
"type": "array",
"title": "Subject Portraits",
"default": []
},
"deleted_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Deleted At"
}
},
"type": "object",
"required": [
"id",
"created_at",
"updated_at",
"name",
"owner_id"
],
"title": "SetDesignPublic"
}
DELETE /api/v1/set-designs/{id}¶
Delete Set Design
Description
Delete a set design.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No |
Responses
GET /api/v1/set-designs/{id}/gathered-requirements¶
Read Set Design Gathered Requirements
Description
Read what the set-design chat agent has gathered so far.
Progressive: gathered reflects partial values while the session is IN_PROGRESS and
the full set once COMPLETE; result is the strict validated brief (only when
complete). Resolves the backing session via the chat 2-hop (no FK). 404 when the set design
or its session does not exist / is out of org.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No |
Responses
{
"session_id": "328bf294-90fa-4b68-90da-0acad4bc203f",
"status": "IN_PROGRESS",
"gathered": {
"reference_images": [
"bdf4275f-d587-4670-a8dd-1de78cd2c9f8"
],
"reference_urls": [
"string"
],
"subject_ids": [
"71a883ff-a1ec-4c1e-a500-4aed394c931d"
]
},
"missing": [
"string"
],
"result": null,
"reference_media": [
{
"id": "25e8027c-dd3a-47cb-8623-6d8438aad718",
"resource_type": "IMAGE",
"url": "string",
"content_hash": "string",
"extension": "string",
"file_size": 0,
"width": null,
"height": null,
"dominant_color": null,
"protected": true,
"alt_text": null,
"caption": null,
"color_profile": null,
"duration": null,
"aspect_ratio": null,
"orientation": null,
"created_at": "2022-04-13T15:42:05.901Z"
}
],
"subjects": [
{
"id": "f5293cba-6c5b-4d0d-b0ef-66398686288f",
"name": "string",
"gender": "MALE",
"description": null,
"cover_image": null,
"cover_image_url": null
}
],
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"completed_at": null
}
Schema of the response body
{
"properties": {
"session_id": {
"type": "string",
"format": "uuid",
"title": "Session Id"
},
"status": {
"$ref": "#/components/schemas/AgentSessionStatus"
},
"gathered": {
"$ref": "#/components/schemas/SetDesignBriefPartial"
},
"missing": {
"items": {
"type": "string"
},
"type": "array",
"title": "Missing"
},
"result": {
"anyOf": [
{
"$ref": "#/components/schemas/SetDesignBriefPublic"
},
{
"type": "null"
}
]
},
"reference_media": {
"items": {
"$ref": "#/components/schemas/MediaResourcePublic"
},
"type": "array",
"title": "Reference Media"
},
"subjects": {
"items": {
"$ref": "#/components/schemas/ProposedSubjectPublic"
},
"type": "array",
"title": "Subjects"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
},
"completed_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Completed At"
}
},
"type": "object",
"required": [
"session_id",
"status",
"gathered",
"created_at",
"updated_at"
],
"title": "GatheredRequirementsPublic",
"description": "Read view of an agent session's gathered requirements for a set design.\n\n``gathered`` is sourced from the live accumulator and is always present; ``result`` is the\nstrict validated brief and is only set when the session is ``COMPLETE``. ``reference_media``\nis hydrated directly from ``gathered.reference_images`` (works mid-gathering — it does not\ndepend on the completion-only session attachment slot). ``subjects`` is hydrated from\n``gathered.subject_ids`` (the confirmed proposed pair)."
}
POST /api/v1/set-designs/{id}/references/images/{media_id}¶
Add Set Design Reference Image
Description
Add one image already posted in this Location's chat to Project Assets.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
media_id |
path | string | No | ||
organization_id |
query | No |
Responses
DELETE /api/v1/set-designs/{id}/references/images/{media_id}¶
Delete Set Design Reference Image
Description
Remove one uploaded image from the curated references, for any Location role.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
media_id |
path | string | No | ||
organization_id |
query | No |
Responses
POST /api/v1/set-designs/{id}/references/url¶
Add Set Design Reference Url
Description
Add one product-page link to Project Assets, for any Location role.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No | |||
reference_url |
query | string | No |
Responses
DELETE /api/v1/set-designs/{id}/references/url¶
Delete Set Design Reference Url
Description
Remove one external link from the curated references, for any Location role.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No | |||
reference_url |
query | string | No |
Responses
DELETE /api/v1/set-designs/{id}/models/{subject_id}¶
Delete Set Design Model
Description
Remove a setup model before production; later corrections use the warned PUT flow.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No | |||
subject_id |
path | string | No |
Responses
GET /api/v1/set-designs/{id}/versions¶
Read Set Design Versions
Description
Return the authoritative Location workflow, policy, actions, and version history.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No |
Responses
{
"policy": {
"max_models": 0,
"max_versions": 0,
"shot": "FRONT_FULL_BODY"
},
"state": "GATHERING",
"product_setup": {
"responsibility": null,
"products": [
{
"id": "fabb0043-0ad4-4b64-818c-e095cf2ad8a3",
"name": "string",
"sku": null,
"season": null,
"gender": "MALE",
"product_type": null,
"cover_image_url": null,
"cover_image_media": null,
"available": true
}
],
"updated_at": null,
"locked_at": null
},
"active_version": null,
"actions": {
"can_start_version_1": true,
"can_request_changes": true,
"can_approve": true,
"can_edit_models": true,
"can_edit_products": true,
"must_contact_sartiq": true
},
"data": [
{
"id": "28c420b7-7cc1-4513-96a5-1bdacd882107",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"set_design_id": "0fcef9fb-264c-499c-a9b3-89edbbfc37dd",
"version_number": 0,
"status": "IN_PRODUCTION",
"delivery_note": null,
"review_focus": null,
"created_by_id": "ecbb8716-87d3-490f-80c1-7edac185252b",
"source_feedback_message_id": null,
"feedback_message_id": null,
"started_at": "2022-04-13T15:42:05.901Z",
"delivered_at": null,
"due_at": null,
"reviewed_at": null,
"images": [
{
"id": "93d409e4-5c0d-4053-8262-30ec2f600823",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": null,
"position": 0,
"image_media": null
}
],
"expected_outputs": [
{
"subject_id": "9a73b10a-10cd-4777-9a7f-8a599638d74a",
"position": 0,
"subject": {
"id": "398e8a21-b0ef-40bc-b246-4e4876527564",
"name": "string",
"gender": "MALE",
"description": null,
"cover_image": null,
"cover_image_url": null
},
"shot": null,
"image": null
}
],
"change_request_text": null
}
],
"count": 0
}
Schema of the response body
{
"properties": {
"policy": {
"$ref": "#/components/schemas/SetDesignVersionPolicyPublic"
},
"state": {
"$ref": "#/components/schemas/SetDesignWorkflowState"
},
"product_setup": {
"$ref": "#/components/schemas/SetDesignProductSetupPublic"
},
"active_version": {
"anyOf": [
{
"$ref": "#/components/schemas/SetDesignVersionPublic"
},
{
"type": "null"
}
]
},
"actions": {
"$ref": "#/components/schemas/SetDesignVersionActionsPublic"
},
"data": {
"items": {
"$ref": "#/components/schemas/SetDesignVersionPublic"
},
"type": "array",
"title": "Data"
},
"count": {
"type": "integer",
"title": "Count"
}
},
"type": "object",
"required": [
"policy",
"state",
"product_setup",
"actions",
"data",
"count"
],
"title": "SetDesignVersionsPublic"
}
POST /api/v1/set-designs/{id}/versions¶
Deliver Set Design Version
Description
Compatibility alias that delivers the current persisted production version.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No |
Request body
{
"delivery_note": null,
"review_focus": null,
"images": [
{
"subject_id": null,
"image": null
}
]
}
Schema of the request body
{
"properties": {
"delivery_note": {
"anyOf": [
{
"type": "string",
"maxLength": 4096
},
{
"type": "null"
}
],
"title": "Delivery Note"
},
"review_focus": {
"anyOf": [
{
"type": "string",
"maxLength": 4096
},
{
"type": "null"
}
],
"title": "Review Focus"
},
"images": {
"items": {
"$ref": "#/components/schemas/SetDesignVersionImageCreate"
},
"type": "array",
"maxItems": 12,
"minItems": 1,
"title": "Images"
}
},
"type": "object",
"required": [
"images"
],
"title": "SetDesignVersionDeliverRequest"
}
Responses
{
"id": "68c0eae9-fa96-4af4-9b0b-422943978d2a",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"set_design_id": "17be0cc7-4c66-40d6-9d65-34b457a47667",
"version_number": 0,
"status": "IN_PRODUCTION",
"delivery_note": null,
"review_focus": null,
"created_by_id": "9a35f293-25d2-46a2-bf4e-554151299f2c",
"source_feedback_message_id": null,
"feedback_message_id": null,
"started_at": "2022-04-13T15:42:05.901Z",
"delivered_at": null,
"due_at": null,
"reviewed_at": null,
"images": [
{
"id": "2b851fb9-7b2d-41ce-8b8c-5fbed4e203f2",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": null,
"position": 0,
"image_media": null
}
],
"expected_outputs": [
{
"subject_id": "da24c0f5-c836-416a-8a37-5826f11eebfb",
"position": 0,
"subject": {
"id": "9e1d4b42-bbb9-4182-925f-029ac6cba96b",
"name": "string",
"gender": "MALE",
"description": null,
"cover_image": null,
"cover_image_url": null
},
"shot": "FRONT_FULL_BODY",
"image": null
}
],
"change_request_text": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
},
"set_design_id": {
"type": "string",
"format": "uuid",
"title": "Set Design Id"
},
"version_number": {
"type": "integer",
"title": "Version Number"
},
"status": {
"$ref": "#/components/schemas/SetDesignVersionStatus"
},
"delivery_note": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Delivery Note"
},
"review_focus": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Review Focus"
},
"created_by_id": {
"type": "string",
"format": "uuid",
"title": "Created By Id"
},
"source_feedback_message_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Source Feedback Message Id"
},
"feedback_message_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Feedback Message Id"
},
"started_at": {
"type": "string",
"format": "date-time",
"title": "Started At"
},
"delivered_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Delivered At"
},
"due_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Due At"
},
"reviewed_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Reviewed At"
},
"images": {
"items": {
"$ref": "#/components/schemas/SetDesignVersionImagePublic"
},
"type": "array",
"title": "Images",
"default": []
},
"expected_outputs": {
"items": {
"$ref": "#/components/schemas/SetDesignExpectedOutputPublic"
},
"type": "array",
"title": "Expected Outputs",
"default": []
},
"change_request_text": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Change Request Text"
}
},
"type": "object",
"required": [
"id",
"created_at",
"updated_at",
"set_design_id",
"version_number",
"status",
"created_by_id",
"started_at"
],
"title": "SetDesignVersionPublic"
}
GET /api/v1/set-designs/{id}/model-requests¶
Read Set Design Model Requests
Description
Return ready and requested models for one configured Location.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No |
Responses
{
"max_models": 0,
"remaining_capacity": 0,
"can_request": true,
"items": [
{
"request_id": null,
"subject": {
"id": "40cdef7d-e44e-4d84-9922-bc8378533b0b",
"name": "string",
"gender": "MALE",
"description": null,
"cover_image": null,
"cover_image_url": null
},
"status": "IN_PROGRESS",
"requested_at": null,
"ready_by": null,
"failure_reason": null,
"image": null
}
]
}
Schema of the response body
{
"properties": {
"max_models": {
"type": "integer",
"title": "Max Models"
},
"remaining_capacity": {
"type": "integer",
"title": "Remaining Capacity"
},
"can_request": {
"type": "boolean",
"title": "Can Request"
},
"items": {
"items": {
"$ref": "#/components/schemas/SetDesignModelRequestItemPublic"
},
"type": "array",
"title": "Items"
}
},
"type": "object",
"required": [
"max_models",
"remaining_capacity",
"can_request"
],
"title": "SetDesignModelRequestsPublic"
}
POST /api/v1/set-designs/{id}/model-requests¶
Create Set Design Model Requests
Description
Request one styled front full-body image for each selected model.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No |
Request body
Responses
{
"max_models": 0,
"remaining_capacity": 0,
"can_request": true,
"items": [
{
"request_id": null,
"subject": {
"id": "9251d81b-7ab8-4d45-9ae0-c227f1377f1b",
"name": "string",
"gender": "MALE",
"description": null,
"cover_image": null,
"cover_image_url": null
},
"status": "IN_PROGRESS",
"requested_at": null,
"ready_by": null,
"failure_reason": null,
"image": null
}
]
}
Schema of the response body
{
"properties": {
"max_models": {
"type": "integer",
"title": "Max Models"
},
"remaining_capacity": {
"type": "integer",
"title": "Remaining Capacity"
},
"can_request": {
"type": "boolean",
"title": "Can Request"
},
"items": {
"items": {
"$ref": "#/components/schemas/SetDesignModelRequestItemPublic"
},
"type": "array",
"title": "Items"
}
},
"type": "object",
"required": [
"max_models",
"remaining_capacity",
"can_request"
],
"title": "SetDesignModelRequestsPublic"
}
POST /api/v1/set-designs/{id}/model-requests/{request_id}/retry¶
Retry Set Design Model Request
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No | |||
request_id |
path | string | No |
Responses
{
"max_models": 0,
"remaining_capacity": 0,
"can_request": true,
"items": [
{
"request_id": null,
"subject": {
"id": "d1580b2e-0e2d-4b45-a4da-6a5a9ab6af5f",
"name": "string",
"gender": "MALE",
"description": null,
"cover_image": null,
"cover_image_url": null
},
"status": "IN_PROGRESS",
"requested_at": null,
"ready_by": null,
"failure_reason": null,
"image": null
}
]
}
Schema of the response body
{
"properties": {
"max_models": {
"type": "integer",
"title": "Max Models"
},
"remaining_capacity": {
"type": "integer",
"title": "Remaining Capacity"
},
"can_request": {
"type": "boolean",
"title": "Can Request"
},
"items": {
"items": {
"$ref": "#/components/schemas/SetDesignModelRequestItemPublic"
},
"type": "array",
"title": "Items"
}
},
"type": "object",
"required": [
"max_models",
"remaining_capacity",
"can_request"
],
"title": "SetDesignModelRequestsPublic"
}
PATCH /api/v1/set-designs/{id}/model-requests/{request_id}/failure¶
Fail Set Design Model Request
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No | |||
request_id |
path | string | No |
Request body
Responses
{
"max_models": 0,
"remaining_capacity": 0,
"can_request": true,
"items": [
{
"request_id": null,
"subject": {
"id": "d5a85ecc-811c-42d0-8f69-78637944dbee",
"name": "string",
"gender": "MALE",
"description": null,
"cover_image": null,
"cover_image_url": null
},
"status": "IN_PROGRESS",
"requested_at": null,
"ready_by": null,
"failure_reason": null,
"image": null
}
]
}
Schema of the response body
{
"properties": {
"max_models": {
"type": "integer",
"title": "Max Models"
},
"remaining_capacity": {
"type": "integer",
"title": "Remaining Capacity"
},
"can_request": {
"type": "boolean",
"title": "Can Request"
},
"items": {
"items": {
"$ref": "#/components/schemas/SetDesignModelRequestItemPublic"
},
"type": "array",
"title": "Items"
}
},
"type": "object",
"required": [
"max_models",
"remaining_capacity",
"can_request"
],
"title": "SetDesignModelRequestsPublic"
}
DELETE /api/v1/set-designs/{id}/model-requests/{request_id}¶
Dismiss Set Design Model Request
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No | |||
request_id |
path | string | No |
Responses
PUT /api/v1/set-designs/{id}/products¶
Update Set Design Product Setup
Description
Choose the Location's test products or let Sartiq choose them.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No |
Request body
{
"responsibility": "CLIENT",
"product_ids": [
"6a63c0cc-6c52-4f29-82ec-766060696717"
],
"expected_updated_at": null
}
Schema of the request body
{
"properties": {
"responsibility": {
"$ref": "#/components/schemas/SetDesignProductResponsibility"
},
"product_ids": {
"items": {
"type": "string",
"format": "uuid"
},
"type": "array",
"title": "Product Ids"
},
"expected_updated_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Expected Updated At"
}
},
"type": "object",
"required": [
"responsibility"
],
"title": "SetDesignProductSetupUpdate"
}
Responses
{
"responsibility": null,
"products": [
{
"id": "48c26f3c-9fd0-43d6-bf9c-f23caf754dd0",
"name": "string",
"sku": null,
"season": null,
"gender": "MALE",
"product_type": null,
"cover_image_url": null,
"cover_image_media": null,
"available": true
}
],
"updated_at": null,
"locked_at": null
}
Schema of the response body
{
"properties": {
"responsibility": {
"anyOf": [
{
"$ref": "#/components/schemas/SetDesignProductResponsibility"
},
{
"type": "null"
}
]
},
"products": {
"items": {
"$ref": "#/components/schemas/SetDesignTestProductPublic"
},
"type": "array",
"title": "Products"
},
"updated_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Updated At"
},
"locked_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Locked At"
}
},
"type": "object",
"title": "SetDesignProductSetupPublic"
}
POST /api/v1/set-designs/{id}/versions/start¶
Start Set Design Version One
Description
Accept the one-time proof contract and persist Version 1 in production.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No |
Request body
Responses
{
"id": "5466d810-673b-4a57-8224-fa7740943fab",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"set_design_id": "b2655e50-6616-4d62-9846-8bf0d0624bb7",
"version_number": 0,
"status": "IN_PRODUCTION",
"delivery_note": null,
"review_focus": null,
"created_by_id": "fa4d9b02-7845-4ddf-84be-a57fa7a2085b",
"source_feedback_message_id": null,
"feedback_message_id": null,
"started_at": "2022-04-13T15:42:05.901Z",
"delivered_at": null,
"due_at": null,
"reviewed_at": null,
"images": [
{
"id": "a1142a58-3361-41e8-9bef-a7559e102a76",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": null,
"position": 0,
"image_media": null
}
],
"expected_outputs": [
{
"subject_id": "7f59864b-8b20-419e-b2fe-9b64ce973922",
"position": 0,
"subject": {
"id": "d549900a-0b29-446c-a1a3-46465b49eb02",
"name": "string",
"gender": "MALE",
"description": null,
"cover_image": null,
"cover_image_url": null
},
"shot": "FRONT_FULL_BODY",
"image": null
}
],
"change_request_text": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
},
"set_design_id": {
"type": "string",
"format": "uuid",
"title": "Set Design Id"
},
"version_number": {
"type": "integer",
"title": "Version Number"
},
"status": {
"$ref": "#/components/schemas/SetDesignVersionStatus"
},
"delivery_note": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Delivery Note"
},
"review_focus": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Review Focus"
},
"created_by_id": {
"type": "string",
"format": "uuid",
"title": "Created By Id"
},
"source_feedback_message_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Source Feedback Message Id"
},
"feedback_message_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Feedback Message Id"
},
"started_at": {
"type": "string",
"format": "date-time",
"title": "Started At"
},
"delivered_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Delivered At"
},
"due_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Due At"
},
"reviewed_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Reviewed At"
},
"images": {
"items": {
"$ref": "#/components/schemas/SetDesignVersionImagePublic"
},
"type": "array",
"title": "Images",
"default": []
},
"expected_outputs": {
"items": {
"$ref": "#/components/schemas/SetDesignExpectedOutputPublic"
},
"type": "array",
"title": "Expected Outputs",
"default": []
},
"change_request_text": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Change Request Text"
}
},
"type": "object",
"required": [
"id",
"created_at",
"updated_at",
"set_design_id",
"version_number",
"status",
"created_by_id",
"started_at"
],
"title": "SetDesignVersionPublic"
}
POST /api/v1/set-designs/{id}/versions/{version_id}/deliver¶
Deliver Existing Set Design Version
Description
Publish the complete exact proof set for an existing production version.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No | |||
version_id |
path | string | No |
Request body
{
"delivery_note": null,
"review_focus": null,
"images": [
{
"subject_id": null,
"image": null
}
]
}
Schema of the request body
{
"properties": {
"delivery_note": {
"anyOf": [
{
"type": "string",
"maxLength": 4096
},
{
"type": "null"
}
],
"title": "Delivery Note"
},
"review_focus": {
"anyOf": [
{
"type": "string",
"maxLength": 4096
},
{
"type": "null"
}
],
"title": "Review Focus"
},
"images": {
"items": {
"$ref": "#/components/schemas/SetDesignVersionImageCreate"
},
"type": "array",
"maxItems": 12,
"minItems": 1,
"title": "Images"
}
},
"type": "object",
"required": [
"images"
],
"title": "SetDesignVersionDeliverRequest"
}
Responses
{
"id": "33c749b4-e4d7-48be-8b94-cafe585be6ef",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"set_design_id": "206ee9e7-2565-4a93-a914-2cd6fe7571b8",
"version_number": 0,
"status": "IN_PRODUCTION",
"delivery_note": null,
"review_focus": null,
"created_by_id": "b13bed13-d56c-4de9-a240-3941b7612ef7",
"source_feedback_message_id": null,
"feedback_message_id": null,
"started_at": "2022-04-13T15:42:05.901Z",
"delivered_at": null,
"due_at": null,
"reviewed_at": null,
"images": [
{
"id": "9ddaf1a6-beda-47e7-8fc9-b425d3cc5e41",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": null,
"position": 0,
"image_media": null
}
],
"expected_outputs": [
{
"subject_id": "ac4822f3-d889-41aa-adfd-16fd2c61f93e",
"position": 0,
"subject": {
"id": "e28f3b58-9eba-4dbc-95c2-22ee09d32407",
"name": "string",
"gender": "MALE",
"description": null,
"cover_image": null,
"cover_image_url": null
},
"shot": "FRONT_FULL_BODY",
"image": null
}
],
"change_request_text": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
},
"set_design_id": {
"type": "string",
"format": "uuid",
"title": "Set Design Id"
},
"version_number": {
"type": "integer",
"title": "Version Number"
},
"status": {
"$ref": "#/components/schemas/SetDesignVersionStatus"
},
"delivery_note": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Delivery Note"
},
"review_focus": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Review Focus"
},
"created_by_id": {
"type": "string",
"format": "uuid",
"title": "Created By Id"
},
"source_feedback_message_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Source Feedback Message Id"
},
"feedback_message_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Feedback Message Id"
},
"started_at": {
"type": "string",
"format": "date-time",
"title": "Started At"
},
"delivered_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Delivered At"
},
"due_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Due At"
},
"reviewed_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Reviewed At"
},
"images": {
"items": {
"$ref": "#/components/schemas/SetDesignVersionImagePublic"
},
"type": "array",
"title": "Images",
"default": []
},
"expected_outputs": {
"items": {
"$ref": "#/components/schemas/SetDesignExpectedOutputPublic"
},
"type": "array",
"title": "Expected Outputs",
"default": []
},
"change_request_text": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Change Request Text"
}
},
"type": "object",
"required": [
"id",
"created_at",
"updated_at",
"set_design_id",
"version_number",
"status",
"created_by_id",
"started_at"
],
"title": "SetDesignVersionPublic"
}
PUT /api/v1/set-designs/{id}/models¶
Replace Set Design Models
Description
Replace active test models while preserving every historical version snapshot.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No |
Request body
Schema of the request body
{
"properties": {
"subject_ids": {
"items": {
"type": "string",
"format": "uuid"
},
"type": "array",
"minItems": 1,
"title": "Subject Ids"
},
"confirm_history_change": {
"type": "boolean",
"title": "Confirm History Change",
"default": false
}
},
"type": "object",
"required": [
"subject_ids"
],
"title": "SetDesignModelsReplaceRequest"
}
Responses
PATCH /api/v1/set-designs/{id}/production-deadline¶
Update Set Design Production Deadline
Description
Set or change the promised delivery timestamp for the active production cycle.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No |
Request body
Responses
{
"id": "2669d6ef-ef6c-42a8-b83c-c60d8de98aa1",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"name": "string",
"description": null,
"owner_id": "3c0d09c4-37c6-49bc-8e89-66c8df5c72f8",
"organization_id": null,
"background_preset_id": null,
"production_due_at": null,
"is_draft": true,
"base_images": [
{
"id": "6ab14b87-2bdb-4c03-be8e-20be4f107819",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": "aeea78dd-bfd4-4dc5-a68e-ac2a6d9ced72",
"shot_type_id": "54ad5132-8746-4c21-b2c6-ec48d9de577c",
"variant_index": 0,
"image_url": null,
"image_media": null
}
],
"reference_images": [
{
"id": "2709b568-5a26-4d19-85d9-6bb3326b04c5",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"shot_type_id": "6e1ca569-1cad-4a99-b164-dbbee500a5b6",
"label": null,
"image_url": null,
"image_media": null
}
],
"subject_portraits": [
{
"id": "9eedeb26-fb5f-4b5d-ad97-9bae27aae663",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": "e52e2575-dfa4-4f5b-81ea-77f313c0c20c",
"image_media": null
}
],
"deleted_at": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
},
"name": {
"type": "string",
"title": "Name"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Description"
},
"owner_id": {
"type": "string",
"format": "uuid",
"title": "Owner Id"
},
"organization_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Organization Id"
},
"background_preset_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Background Preset Id"
},
"production_due_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Production Due At"
},
"is_draft": {
"type": "boolean",
"title": "Is Draft",
"default": false
},
"base_images": {
"items": {
"$ref": "#/components/schemas/SetBaseImagePublic"
},
"type": "array",
"title": "Base Images",
"default": []
},
"reference_images": {
"items": {
"$ref": "#/components/schemas/SetReferenceImagePublic"
},
"type": "array",
"title": "Reference Images",
"default": []
},
"subject_portraits": {
"items": {
"$ref": "#/components/schemas/SubjectPortraitPublic"
},
"type": "array",
"title": "Subject Portraits",
"default": []
},
"deleted_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Deleted At"
}
},
"type": "object",
"required": [
"id",
"created_at",
"updated_at",
"name",
"owner_id"
],
"title": "SetDesignPublic"
}
POST /api/v1/set-designs/{id}/versions/{version_id}/images¶
Add Images To Set Design Version
Description
Append photos to the current version and deliver it for review again.
Existing version images are never replaced, so image IDs and any comments anchored to them remain stable.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No | |||
version_id |
path | string | No |
Request body
Responses
{
"id": "4a8972ab-2a59-4192-ab48-d3d345b0999a",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"set_design_id": "3bff6a22-e207-4385-83fa-ddae379a338c",
"version_number": 0,
"status": "IN_PRODUCTION",
"delivery_note": null,
"review_focus": null,
"created_by_id": "77c30647-aa51-4530-8edb-5a392915e346",
"source_feedback_message_id": null,
"feedback_message_id": null,
"started_at": "2022-04-13T15:42:05.901Z",
"delivered_at": null,
"due_at": null,
"reviewed_at": null,
"images": [
{
"id": "6e96595b-0ffa-4f31-a221-e0e23280cab8",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": null,
"position": 0,
"image_media": null
}
],
"expected_outputs": [
{
"subject_id": "dd831bcc-712f-4878-b581-ad05c3536462",
"position": 0,
"subject": {
"id": "175fdf09-332e-4e02-8db6-caab961cbf33",
"name": "string",
"gender": "MALE",
"description": null,
"cover_image": null,
"cover_image_url": null
},
"shot": "FRONT_FULL_BODY",
"image": null
}
],
"change_request_text": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
},
"set_design_id": {
"type": "string",
"format": "uuid",
"title": "Set Design Id"
},
"version_number": {
"type": "integer",
"title": "Version Number"
},
"status": {
"$ref": "#/components/schemas/SetDesignVersionStatus"
},
"delivery_note": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Delivery Note"
},
"review_focus": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Review Focus"
},
"created_by_id": {
"type": "string",
"format": "uuid",
"title": "Created By Id"
},
"source_feedback_message_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Source Feedback Message Id"
},
"feedback_message_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Feedback Message Id"
},
"started_at": {
"type": "string",
"format": "date-time",
"title": "Started At"
},
"delivered_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Delivered At"
},
"due_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Due At"
},
"reviewed_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Reviewed At"
},
"images": {
"items": {
"$ref": "#/components/schemas/SetDesignVersionImagePublic"
},
"type": "array",
"title": "Images",
"default": []
},
"expected_outputs": {
"items": {
"$ref": "#/components/schemas/SetDesignExpectedOutputPublic"
},
"type": "array",
"title": "Expected Outputs",
"default": []
},
"change_request_text": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Change Request Text"
}
},
"type": "object",
"required": [
"id",
"created_at",
"updated_at",
"set_design_id",
"version_number",
"status",
"created_by_id",
"started_at"
],
"title": "SetDesignVersionPublic"
}
DELETE /api/v1/set-designs/{id}/versions/{version_id}¶
Delete Set Design Version
Description
Permanently remove a delivered version.
Removing the current version reopens the most recent remaining version for client review. Removing the only version returns the Location to production.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No | |||
version_id |
path | string | No |
Responses
DELETE /api/v1/set-designs/{id}/versions/{version_id}/images/{image_id}¶
Delete Set Design Version Image
Description
Permanently remove one photo from a delivered version.
A version cannot be empty, so removing its final photo also removes the version and applies the same current-version fallback.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
image_id |
path | string | No | ||
organization_id |
query | No | |||
version_id |
path | string | No |
Responses
POST /api/v1/set-designs/{id}/versions/{version_id}/request-changes¶
Request Set Design Version Changes
Description
Move the current version back to production, linked to client feedback.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No | |||
version_id |
path | string | No |
Request body
Schema of the request body
{
"properties": {
"text": {
"type": "string",
"maxLength": 8192,
"minLength": 1,
"title": "Text"
},
"attachments": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/MediaInput"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Attachments"
}
},
"type": "object",
"required": [
"text"
],
"title": "SetDesignVersionFeedbackRequest"
}
Responses
{
"id": "f91aa938-6472-4364-8b28-6f848c0ffcff",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"set_design_id": "afa8b0f3-58df-4755-bae5-6798f9053bbe",
"version_number": 0,
"status": "IN_PRODUCTION",
"delivery_note": null,
"review_focus": null,
"created_by_id": "2352ceb9-cf51-4d6d-9924-da5dc713ab2a",
"source_feedback_message_id": null,
"feedback_message_id": null,
"started_at": "2022-04-13T15:42:05.901Z",
"delivered_at": null,
"due_at": null,
"reviewed_at": null,
"images": [
{
"id": "5ceb0f1f-90ee-4771-8dc2-ee219866f32a",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": null,
"position": 0,
"image_media": null
}
],
"expected_outputs": [
{
"subject_id": "0b199d01-562d-4cb1-a1a7-4eed8d62ee7c",
"position": 0,
"subject": {
"id": "124ee678-5607-469c-a8af-c4dfec62aae8",
"name": "string",
"gender": "MALE",
"description": null,
"cover_image": null,
"cover_image_url": null
},
"shot": "FRONT_FULL_BODY",
"image": null
}
],
"change_request_text": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
},
"set_design_id": {
"type": "string",
"format": "uuid",
"title": "Set Design Id"
},
"version_number": {
"type": "integer",
"title": "Version Number"
},
"status": {
"$ref": "#/components/schemas/SetDesignVersionStatus"
},
"delivery_note": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Delivery Note"
},
"review_focus": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Review Focus"
},
"created_by_id": {
"type": "string",
"format": "uuid",
"title": "Created By Id"
},
"source_feedback_message_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Source Feedback Message Id"
},
"feedback_message_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Feedback Message Id"
},
"started_at": {
"type": "string",
"format": "date-time",
"title": "Started At"
},
"delivered_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Delivered At"
},
"due_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Due At"
},
"reviewed_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Reviewed At"
},
"images": {
"items": {
"$ref": "#/components/schemas/SetDesignVersionImagePublic"
},
"type": "array",
"title": "Images",
"default": []
},
"expected_outputs": {
"items": {
"$ref": "#/components/schemas/SetDesignExpectedOutputPublic"
},
"type": "array",
"title": "Expected Outputs",
"default": []
},
"change_request_text": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Change Request Text"
}
},
"type": "object",
"required": [
"id",
"created_at",
"updated_at",
"set_design_id",
"version_number",
"status",
"created_by_id",
"started_at"
],
"title": "SetDesignVersionPublic"
}
POST /api/v1/set-designs/{id}/versions/{version_id}/approve¶
Approve Set Design Version
Description
Approve the current version and make the Location ready for shootings.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No | |||
version_id |
path | string | No |
Request body
Schema of the request body
Responses
{
"id": "7328dee6-ac62-4c8c-96ef-0cc9f45ea15d",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"set_design_id": "867791fb-77fc-42af-958a-0d9a10c683c9",
"version_number": 0,
"status": "IN_PRODUCTION",
"delivery_note": null,
"review_focus": null,
"created_by_id": "9d4767ee-a23a-4bab-98dd-957e0d7082c4",
"source_feedback_message_id": null,
"feedback_message_id": null,
"started_at": "2022-04-13T15:42:05.901Z",
"delivered_at": null,
"due_at": null,
"reviewed_at": null,
"images": [
{
"id": "c4c33a16-dc0f-4388-b7b9-000cddea97a3",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": null,
"position": 0,
"image_media": null
}
],
"expected_outputs": [
{
"subject_id": "324093b2-797f-4855-8ce3-54a4d920103b",
"position": 0,
"subject": {
"id": "c3468a95-17f1-4ea8-b79c-8026e7f0715d",
"name": "string",
"gender": "MALE",
"description": null,
"cover_image": null,
"cover_image_url": null
},
"shot": "FRONT_FULL_BODY",
"image": null
}
],
"change_request_text": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
},
"set_design_id": {
"type": "string",
"format": "uuid",
"title": "Set Design Id"
},
"version_number": {
"type": "integer",
"title": "Version Number"
},
"status": {
"$ref": "#/components/schemas/SetDesignVersionStatus"
},
"delivery_note": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Delivery Note"
},
"review_focus": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Review Focus"
},
"created_by_id": {
"type": "string",
"format": "uuid",
"title": "Created By Id"
},
"source_feedback_message_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Source Feedback Message Id"
},
"feedback_message_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Feedback Message Id"
},
"started_at": {
"type": "string",
"format": "date-time",
"title": "Started At"
},
"delivered_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Delivered At"
},
"due_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Due At"
},
"reviewed_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Reviewed At"
},
"images": {
"items": {
"$ref": "#/components/schemas/SetDesignVersionImagePublic"
},
"type": "array",
"title": "Images",
"default": []
},
"expected_outputs": {
"items": {
"$ref": "#/components/schemas/SetDesignExpectedOutputPublic"
},
"type": "array",
"title": "Expected Outputs",
"default": []
},
"change_request_text": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Change Request Text"
}
},
"type": "object",
"required": [
"id",
"created_at",
"updated_at",
"set_design_id",
"version_number",
"status",
"created_by_id",
"started_at"
],
"title": "SetDesignVersionPublic"
}
POST /api/v1/set-designs/{id}/restore¶
Restore Set Design
Description
Restore a soft-deleted set design (admin only).
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No |
Responses
{
"id": "224fdef9-69f9-49c0-b255-4fd3c618d343",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"name": "string",
"description": null,
"owner_id": "a419ef62-1c64-4352-9d02-d1c0d7184a28",
"organization_id": null,
"background_preset_id": null,
"production_due_at": null,
"is_draft": true,
"base_images": [
{
"id": "b8a04b03-233c-4abe-ad69-68946287f0b8",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": "281bc3fb-7524-4140-9cba-387cbb5bc863",
"shot_type_id": "60df710f-2ea6-458a-9231-97b3f40945ab",
"variant_index": 0,
"image_url": null,
"image_media": null
}
],
"reference_images": [
{
"id": "b62ab933-5c9d-4b8d-8c8a-578436a7369b",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"shot_type_id": "7fb0860a-15f1-430c-922f-ffe716a6b74e",
"label": null,
"image_url": null,
"image_media": null
}
],
"subject_portraits": [
{
"id": "182cf66c-c718-4a7a-b633-6582b5438167",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": "19481699-abea-45b4-a2eb-3cf6d10cff4d",
"image_media": null
}
],
"deleted_at": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
},
"name": {
"type": "string",
"title": "Name"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Description"
},
"owner_id": {
"type": "string",
"format": "uuid",
"title": "Owner Id"
},
"organization_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Organization Id"
},
"background_preset_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Background Preset Id"
},
"production_due_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Production Due At"
},
"is_draft": {
"type": "boolean",
"title": "Is Draft",
"default": false
},
"base_images": {
"items": {
"$ref": "#/components/schemas/SetBaseImagePublic"
},
"type": "array",
"title": "Base Images",
"default": []
},
"reference_images": {
"items": {
"$ref": "#/components/schemas/SetReferenceImagePublic"
},
"type": "array",
"title": "Reference Images",
"default": []
},
"subject_portraits": {
"items": {
"$ref": "#/components/schemas/SubjectPortraitPublic"
},
"type": "array",
"title": "Subject Portraits",
"default": []
},
"deleted_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Deleted At"
}
},
"type": "object",
"required": [
"id",
"created_at",
"updated_at",
"name",
"owner_id"
],
"title": "SetDesignPublic"
}
GET /api/v1/set-designs/{id}/base-image¶
Find Set Base Image
Description
Find a base image by subject + shot_type within a set design.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No | |||
shot_type_id |
query | string | No | Shot type ID to match | |
subject_id |
query | string | No | Subject ID to match | |
variant_index |
query | integer | 0 | No | Variant index of the base image (defaults to the canonical 0). |
Responses
{
"id": "496965f4-83b4-4584-af13-f6483967a8e7",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"subject_id": "39835a4c-9f7d-4a02-a3a9-3b5a9e47d78f",
"shot_type_id": "35d8e16f-c483-4878-bf89-a419e258856a",
"variant_index": 0,
"image_url": null,
"image_media": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
},
"subject_id": {
"type": "string",
"format": "uuid",
"title": "Subject Id"
},
"shot_type_id": {
"type": "string",
"format": "uuid",
"title": "Shot Type Id"
},
"variant_index": {
"type": "integer",
"title": "Variant Index",
"default": 0
},
"image_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Image Url"
},
"image_media": {
"anyOf": [
{
"$ref": "#/components/schemas/MediaResourcePublic"
},
{
"type": "null"
}
]
}
},
"type": "object",
"required": [
"id",
"created_at",
"updated_at",
"subject_id",
"shot_type_id"
],
"title": "SetBaseImagePublic"
}
POST /api/v1/set-designs/{set_design_id}/base-images/upload¶
Upload Set Design Base Images Zip
Description
Upload ZIP with base images for a set design + subject combination.
The ZIP should contain images named after shot types (e.g., front_full_body.jpg). Returns a task object for polling progress.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
organization_id |
query | No | |||
set_design_id |
path | string | No | ||
subject_id |
query | string | No | Subject ID for the base images |
Request body
Responses
{
"id": "9a8f7a89-5354-4f90-9ef2-8b74a47cac8c",
"owner_id": "ff0cc219-f8a5-4017-a08c-cc7607471d66",
"set_design_id": "8edcfbfd-539a-4a20-ac78-658a09576cc1",
"subject_id": "46324e31-e34a-43b1-add3-196a931671ec",
"status": "PENDING",
"progress": 0,
"total_items": 0,
"processed_items": 0,
"images_processed": 0,
"images_skipped": 0,
"error_message": null,
"created_at": "2022-04-13T15:42:05.901Z",
"started_at": null,
"completed_at": null,
"result_data": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"owner_id": {
"type": "string",
"format": "uuid",
"title": "Owner Id"
},
"set_design_id": {
"type": "string",
"format": "uuid",
"title": "Set Design Id"
},
"subject_id": {
"type": "string",
"format": "uuid",
"title": "Subject Id"
},
"status": {
"$ref": "#/components/schemas/TaskStatus-Output"
},
"progress": {
"type": "integer",
"title": "Progress"
},
"total_items": {
"type": "integer",
"title": "Total Items"
},
"processed_items": {
"type": "integer",
"title": "Processed Items"
},
"images_processed": {
"type": "integer",
"title": "Images Processed"
},
"images_skipped": {
"type": "integer",
"title": "Images Skipped"
},
"error_message": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Error Message"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"started_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Started At"
},
"completed_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Completed At"
},
"result_data": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"title": "Result Data"
}
},
"type": "object",
"required": [
"id",
"owner_id",
"set_design_id",
"subject_id",
"status",
"progress",
"total_items",
"processed_items",
"images_processed",
"images_skipped",
"created_at"
],
"title": "SetDesignBaseImagesUploadTaskPublic"
}
GET /api/v1/set-designs/upload-tasks/{task_id}¶
Get Set Design Base Images Upload Task
Description
Poll task status for set design base images upload.
Use this endpoint to check progress after uploading a ZIP file.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
task_id |
path | string | No |
Responses
{
"id": "f3660d6b-c9cc-4941-8318-8ee176ca9e49",
"owner_id": "8df82db0-e13b-4cf9-97f6-71017748414f",
"set_design_id": "c36d8cb3-fc91-46fe-a956-3cb8c27162cb",
"subject_id": "24abd6f0-49c1-4665-8298-c76b24bd4431",
"status": "PENDING",
"progress": 0,
"total_items": 0,
"processed_items": 0,
"images_processed": 0,
"images_skipped": 0,
"error_message": null,
"created_at": "2022-04-13T15:42:05.901Z",
"started_at": null,
"completed_at": null,
"result_data": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"owner_id": {
"type": "string",
"format": "uuid",
"title": "Owner Id"
},
"set_design_id": {
"type": "string",
"format": "uuid",
"title": "Set Design Id"
},
"subject_id": {
"type": "string",
"format": "uuid",
"title": "Subject Id"
},
"status": {
"$ref": "#/components/schemas/TaskStatus-Output"
},
"progress": {
"type": "integer",
"title": "Progress"
},
"total_items": {
"type": "integer",
"title": "Total Items"
},
"processed_items": {
"type": "integer",
"title": "Processed Items"
},
"images_processed": {
"type": "integer",
"title": "Images Processed"
},
"images_skipped": {
"type": "integer",
"title": "Images Skipped"
},
"error_message": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Error Message"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"started_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Started At"
},
"completed_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Completed At"
},
"result_data": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"title": "Result Data"
}
},
"type": "object",
"required": [
"id",
"owner_id",
"set_design_id",
"subject_id",
"status",
"progress",
"total_items",
"processed_items",
"images_processed",
"images_skipped",
"created_at"
],
"title": "SetDesignBaseImagesUploadTaskPublic"
}
GET /api/v1/set-designs/{set_design_id}/base-images/upload-task¶
Get Set Design Base Images Upload Task By Set Design
Description
Get the latest base images upload task for a set design + subject.
Use this endpoint when returning to a set design page to resume/check upload status. Returns the most recent task (by created_at) for this set_design + subject combination.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
organization_id |
query | No | |||
set_design_id |
path | string | No | ||
subject_id |
query | string | No | Subject ID to filter tasks |
Responses
{
"id": "f61f6e7b-1a78-4f80-af0b-197e14960417",
"owner_id": "c9ca37fe-769c-4700-9ffc-e6226c054984",
"set_design_id": "04e1941a-6952-40d9-926c-bafd531f7f2f",
"subject_id": "d25ead25-8dbe-4665-9e9d-efad1e32a4ce",
"status": "PENDING",
"progress": 0,
"total_items": 0,
"processed_items": 0,
"images_processed": 0,
"images_skipped": 0,
"error_message": null,
"created_at": "2022-04-13T15:42:05.901Z",
"started_at": null,
"completed_at": null,
"result_data": null
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"owner_id": {
"type": "string",
"format": "uuid",
"title": "Owner Id"
},
"set_design_id": {
"type": "string",
"format": "uuid",
"title": "Set Design Id"
},
"subject_id": {
"type": "string",
"format": "uuid",
"title": "Subject Id"
},
"status": {
"$ref": "#/components/schemas/TaskStatus-Output"
},
"progress": {
"type": "integer",
"title": "Progress"
},
"total_items": {
"type": "integer",
"title": "Total Items"
},
"processed_items": {
"type": "integer",
"title": "Processed Items"
},
"images_processed": {
"type": "integer",
"title": "Images Processed"
},
"images_skipped": {
"type": "integer",
"title": "Images Skipped"
},
"error_message": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Error Message"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"started_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Started At"
},
"completed_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Completed At"
},
"result_data": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"title": "Result Data"
}
},
"type": "object",
"required": [
"id",
"owner_id",
"set_design_id",
"subject_id",
"status",
"progress",
"total_items",
"processed_items",
"images_processed",
"images_skipped",
"created_at"
],
"title": "SetDesignBaseImagesUploadTaskPublic"
}
POST /api/v1/set-designs/{id}/request-completion¶
Request Set Design Completion
Description
Request completion of a set design for specific subjects and/or shot types.
Use this when the given subjects or shot types are not yet compatible with the set design. Notifies the operators channel so the team can prepare the required base images.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
id |
path | string | No | ||
organization_id |
query | No |
Request body
{
"subject_ids": [
"6bfabc34-daa4-4988-8edf-a5467e843ed1"
],
"shot_type_ids": [
"28517263-1beb-4ec8-b087-bc86ae10520a"
]
}
Schema of the request body
{
"properties": {
"subject_ids": {
"items": {
"type": "string",
"format": "uuid"
},
"type": "array",
"title": "Subject Ids"
},
"shot_type_ids": {
"items": {
"type": "string",
"format": "uuid"
},
"type": "array",
"title": "Shot Type Ids"
}
},
"type": "object",
"required": [
"subject_ids",
"shot_type_ids"
],
"title": "SetDesignCompletionRequest"
}
Responses
Schemas¶
AgentSessionStatus¶
Type: string
Body_upload_set_design_base_images_zip¶
| Name | Type | Description |
|---|---|---|
file |
string |
GatheredRequirementsPublic¶
| Name | Type | Description |
|---|---|---|
completed_at |
||
created_at |
string(date-time) | |
gathered |
SetDesignBriefPartial | |
missing |
Array<string> | |
reference_media |
Array<MediaResourcePublic> | |
result |
||
session_id |
string(uuid) | |
status |
AgentSessionStatus | |
subjects |
Array<ProposedSubjectPublic> | |
updated_at |
string(date-time) |
Gender¶
Type: string
HTTPValidationError¶
| Name | Type | Description |
|---|---|---|
detail |
Array<ValidationError> |
MediaInput¶
| Name | Type | Description |
|---|---|---|
alt_text |
||
caption |
||
color_profile |
||
dominant_color |
||
duration |
||
height |
||
media_resource_id |
||
protected |
boolean | |
url |
||
width |
MediaResourcePublic¶
| Name | Type | Description |
|---|---|---|
alt_text |
||
aspect_ratio |
||
caption |
||
color_profile |
||
content_hash |
string | |
created_at |
string(date-time) | |
dominant_color |
||
duration |
||
extension |
string | |
file_size |
integer | |
height |
||
id |
string(uuid) | |
orientation |
||
protected |
boolean | |
resource_type |
MediaResourceType | |
url |
string | |
width |
MediaResourceType¶
Type: string
Message¶
| Name | Type | Description |
|---|---|---|
message |
string |
ProductGender¶
Type: string
ProposedSubjectPublic¶
| Name | Type | Description |
|---|---|---|
cover_image |
||
cover_image_url |
||
description |
||
gender |
Gender | |
id |
string(uuid) | |
name |
string |
SetBaseImageCreate¶
| Name | Type | Description |
|---|---|---|
image |
URL or MediaInput for base image | |
shot_type_id |
string(uuid) | |
subject_id |
string(uuid) | |
variant_index |
integer | Pose variant for this (subject, shot_type) pair. 0 is the canonical row; pass distinct values to author additional variants. |
SetBaseImagePublic¶
| Name | Type | Description |
|---|---|---|
created_at |
string(date-time) | |
id |
string(uuid) | |
image_media |
||
image_url |
||
shot_type_id |
string(uuid) | |
subject_id |
string(uuid) | |
updated_at |
string(date-time) | |
variant_index |
integer |
SetDesignBaseImagesUploadTaskPublic¶
| Name | Type | Description |
|---|---|---|
completed_at |
||
created_at |
string(date-time) | |
error_message |
||
id |
string(uuid) | |
images_processed |
integer | |
images_skipped |
integer | |
owner_id |
string(uuid) | |
processed_items |
integer | |
progress |
integer | |
result_data |
||
set_design_id |
string(uuid) | |
started_at |
||
status |
TaskStatus-Output | |
subject_id |
string(uuid) | |
total_items |
integer |
SetDesignBriefPartial¶
| Name | Type | Description |
|---|---|---|
reference_images |
Array<string(uuid)> | |
reference_urls |
Array<string> | |
subject_ids |
Array<string(uuid)> |
SetDesignBriefPublic¶
| Name | Type | Description |
|---|---|---|
reference_images |
Array<string(uuid)> | |
reference_urls |
Array<string> | |
subject_ids |
Array<string(uuid)> |
SetDesignCompletionRequest¶
| Name | Type | Description |
|---|---|---|
shot_type_ids |
Array<string(uuid)> | |
subject_ids |
Array<string(uuid)> |
SetDesignCreate¶
| Name | Type | Description |
|---|---|---|
background_preset_id |
||
base_images |
Array<SetBaseImageCreate> | |
description |
||
is_draft |
boolean | Create the set design as a work-in-progress draft. |
name |
string | |
organization_id |
Organization this set design belongs to | |
owner_id |
||
reference_images |
Array<SetReferenceImageCreate> | |
subject_portraits |
Array<SubjectPortraitCreate> |
SetDesignExpectedOutputPublic¶
| Name | Type | Description |
|---|---|---|
image |
||
position |
integer | |
shot |
SetDesignProofShot | |
subject |
SetDesignExpectedSubjectPublic | |
subject_id |
string(uuid) |
SetDesignExpectedSubjectPublic¶
| Name | Type | Description |
|---|---|---|
cover_image |
||
cover_image_url |
||
description |
||
gender |
Gender | |
id |
string(uuid) | |
name |
string |
SetDesignLatestVersionPublic¶
| Name | Type | Description |
|---|---|---|
status |
SetDesignVersionStatus | |
version_number |
integer |
SetDesignModelRequestCreate¶
| Name | Type | Description |
|---|---|---|
subject_ids |
Array<string(uuid)> |
SetDesignModelRequestFailure¶
| Name | Type | Description |
|---|---|---|
reason |
SetDesignModelRequestItemPublic¶
| Name | Type | Description |
|---|---|---|
failure_reason |
||
image |
||
ready_by |
||
request_id |
||
requested_at |
||
status |
SetDesignModelRequestStatusPublic | |
subject |
SetDesignExpectedSubjectPublic |
SetDesignModelRequestsPublic¶
| Name | Type | Description |
|---|---|---|
can_request |
boolean | |
items |
Array<SetDesignModelRequestItemPublic> | |
max_models |
integer | |
remaining_capacity |
integer |
SetDesignModelRequestStatusPublic¶
Type: string
SetDesignModelsReplaceRequest¶
| Name | Type | Description |
|---|---|---|
confirm_history_change |
boolean | |
subject_ids |
Array<string(uuid)> |
SetDesignModelsReplaceResponse¶
| Name | Type | Description |
|---|---|---|
subject_ids |
Array<string(uuid)> |
SetDesignOverviewProofPreviewPublic¶
| Name | Type | Description |
|---|---|---|
images |
Array<SetDesignVersionImagePublic> | |
version_number |
integer |
SetDesignOverviewPublic¶
| Name | Type | Description |
|---|---|---|
background_preset_id |
||
base_images |
Array<SetBaseImagePublic> | |
created_at |
string(date-time) | |
deleted_at |
||
description |
||
id |
string(uuid) | |
is_draft |
boolean | |
latest_version |
||
name |
string | |
organization_id |
||
owner_id |
string(uuid) | |
production_due_at |
||
proof_preview |
||
reference_images |
Array<SetReferenceImagePublic> | |
setup_progress |
||
subject_portraits |
Array<SubjectPortraitPublic> | |
updated_at |
string(date-time) |
SetDesignProductionDeadlineUpdate¶
| Name | Type | Description |
|---|---|---|
due_at |
string(date-time) | Promised delivery date and time for the active production |
SetDesignProductResponsibility¶
Type: string
SetDesignProductSetupPublic¶
| Name | Type | Description |
|---|---|---|
locked_at |
||
products |
Array<SetDesignTestProductPublic> | |
responsibility |
||
updated_at |
SetDesignProductSetupUpdate¶
| Name | Type | Description |
|---|---|---|
expected_updated_at |
||
product_ids |
Array<string(uuid)> | |
responsibility |
SetDesignProductResponsibility |
SetDesignProofShot¶
Type: string
SetDesignPublic¶
| Name | Type | Description |
|---|---|---|
background_preset_id |
||
base_images |
Array<SetBaseImagePublic> | |
created_at |
string(date-time) | |
deleted_at |
||
description |
||
id |
string(uuid) | |
is_draft |
boolean | |
name |
string | |
organization_id |
||
owner_id |
string(uuid) | |
production_due_at |
||
reference_images |
Array<SetReferenceImagePublic> | |
subject_portraits |
Array<SubjectPortraitPublic> | |
updated_at |
string(date-time) |
SetDesignSetupProgressPublic¶
| Name | Type | Description |
|---|---|---|
completed_at |
||
reference_count |
integer | |
reference_media |
Array<MediaResourcePublic> | |
stage |
SetDesignSetupStage | |
subject_ids |
Array<string(uuid)> |
SetDesignSetupStage¶
Type: string
SetDesignsPublic¶
| Name | Type | Description |
|---|---|---|
count |
integer | |
data |
Array<SetDesignOverviewPublic> |
SetDesignTestProductPublic¶
| Name | Type | Description |
|---|---|---|
available |
boolean | |
cover_image_media |
||
cover_image_url |
||
gender |
ProductGender | |
id |
string(uuid) | |
name |
string | |
product_type |
||
season |
||
sku |
SetDesignUpdate¶
| Name | Type | Description |
|---|---|---|
background_preset_id |
||
base_images |
Full-replace base images list. None = no change. | |
description |
||
is_draft |
Toggle draft state. None = no change (e.g. set False to publish). | |
name |
||
organization_id |
Organization to transfer this set design to | |
owner_id |
||
reference_images |
Full-replace reference images list. None = no change. | |
subject_portraits |
Full-replace subject portraits list. None = no change. |
SetDesignVersionActionsPublic¶
| Name | Type | Description |
|---|---|---|
can_approve |
boolean | |
can_edit_models |
boolean | |
can_edit_products |
boolean | |
can_request_changes |
boolean | |
can_start_version_1 |
boolean | |
must_contact_sartiq |
boolean |
SetDesignVersionAddImagesRequest¶
| Name | Type | Description |
|---|---|---|
images |
Array<SetDesignVersionImageCreate> |
SetDesignVersionApprovalRequest¶
| Name | Type | Description |
|---|---|---|
expected_delivered_at |
string(date-time) | Delivery timestamp currently visible to the reviewer |
SetDesignVersionDeliverRequest¶
| Name | Type | Description |
|---|---|---|
delivery_note |
||
images |
Array<SetDesignVersionImageCreate> | |
review_focus |
SetDesignVersionFeedbackRequest¶
| Name | Type | Description |
|---|---|---|
attachments |
||
text |
string |
SetDesignVersionImageCreate¶
| Name | Type | Description |
|---|---|---|
image |
A test image delivered for client review | |
subject_id |
Model this proof belongs to. Required when delivering a persisted in-production version. |
SetDesignVersionImagePublic¶
| Name | Type | Description |
|---|---|---|
created_at |
string(date-time) | |
id |
string(uuid) | |
image_media |
||
position |
integer | |
subject_id |
||
updated_at |
string(date-time) |
SetDesignVersionPolicyPublic¶
| Name | Type | Description |
|---|---|---|
max_models |
integer | |
max_versions |
integer | |
shot |
SetDesignProofShot |
SetDesignVersionPublic¶
| Name | Type | Description |
|---|---|---|
change_request_text |
||
created_at |
string(date-time) | |
created_by_id |
string(uuid) | |
delivered_at |
||
delivery_note |
||
due_at |
||
expected_outputs |
Array<SetDesignExpectedOutputPublic> | |
feedback_message_id |
||
id |
string(uuid) | |
images |
Array<SetDesignVersionImagePublic> | |
review_focus |
||
reviewed_at |
||
set_design_id |
string(uuid) | |
source_feedback_message_id |
||
started_at |
string(date-time) | |
status |
SetDesignVersionStatus | |
updated_at |
string(date-time) | |
version_number |
integer |
SetDesignVersionsPublic¶
| Name | Type | Description |
|---|---|---|
actions |
SetDesignVersionActionsPublic | |
active_version |
||
count |
integer | |
data |
Array<SetDesignVersionPublic> | |
policy |
SetDesignVersionPolicyPublic | |
product_setup |
SetDesignProductSetupPublic | |
state |
SetDesignWorkflowState |
SetDesignVersionStartRequest¶
| Name | Type | Description |
|---|---|---|
expected_product_setup_updated_at |
SetDesignVersionStatus¶
Type: string
SetDesignWorkflowState¶
Type: string
SetReferenceImageCreate¶
| Name | Type | Description |
|---|---|---|
image |
URL or MediaInput for reference image | |
label |
||
shot_type_id |
string(uuid) |
SetReferenceImagePublic¶
| Name | Type | Description |
|---|---|---|
created_at |
string(date-time) | |
id |
string(uuid) | |
image_media |
||
image_url |
||
label |
||
shot_type_id |
string(uuid) | |
updated_at |
string(date-time) |
SubjectPortraitCreate¶
| Name | Type | Description |
|---|---|---|
image |
URL or MediaInput for portrait image | |
subject_id |
string(uuid) |
SubjectPortraitPublic¶
| Name | Type | Description |
|---|---|---|
created_at |
string(date-time) | |
id |
string(uuid) | |
image_media |
||
subject_id |
string(uuid) | |
updated_at |
string(date-time) |
TaskStatus-Output¶
Type: string
ValidationError¶
| Name | Type | Description |
|---|---|---|
ctx |
||
input |
||
loc |
Array<> | |
msg |
string | |
type |
string |
Security schemes¶
| Name | Type | Scheme | Description |
|---|---|---|---|
| OAuth2PasswordBearer | oauth2 |