Skip to content

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,
    "base_images": [
        {
            "subject_id": "46a847d6-00d0-4f46-86ba-ab35e3bb52b6",
            "shot_type_id": "e957b4e0-7841-4970-b4c9-fb82a9a20eba",
            "image": null
        }
    ],
    "reference_images": [
        {
            "shot_type_id": "012c1b63-6180-49af-b475-65f6143aee75",
            "label": null,
            "image": null
        }
    ],
    "subject_portraits": [
        {
            "subject_id": "b86fffa2-8aca-4150-b00c-42f9c2a32bcf",
            "image": null
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

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"
        },
        "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": "96403ff2-ea7b-43d1-ba49-d288b590d73c",
    "created_at": "2022-04-13T15:42:05.901Z",
    "updated_at": "2022-04-13T15:42:05.901Z",
    "name": "string",
    "description": null,
    "owner_id": "c74b4aec-de6d-4f86-955d-d75e538871d4",
    "organization_id": null,
    "background_preset_id": null,
    "base_images": [
        {
            "id": "03729e26-8c29-4386-b0df-f43eaa4e4d9b",
            "created_at": "2022-04-13T15:42:05.901Z",
            "updated_at": "2022-04-13T15:42:05.901Z",
            "subject_id": "f2f1c87b-380c-47d3-a8e5-3b783efa2b09",
            "shot_type_id": "3a5331ea-f5bd-4418-a7f7-26af4c027d53",
            "image_url": null,
            "image_media": null
        }
    ],
    "reference_images": [
        {
            "id": "e53473ac-d1f8-4824-9db1-6bc788a33129",
            "created_at": "2022-04-13T15:42:05.901Z",
            "updated_at": "2022-04-13T15:42:05.901Z",
            "shot_type_id": "64f3b699-aa29-45f8-8c42-ae6dfaef2766",
            "label": null,
            "image_url": null,
            "image_media": null
        }
    ],
    "subject_portraits": [
        {
            "id": "0b64c7bb-699d-4c96-b463-2f704c7cc1c7",
            "created_at": "2022-04-13T15:42:05.901Z",
            "updated_at": "2022-04-13T15:42:05.901Z",
            "subject_id": "5f534bae-856c-49d7-8074-ddc4343877f5",
            "image_media": null
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

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"
        },
        "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": []
        }
    },
    "type": "object",
    "required": [
        "id",
        "created_at",
        "updated_at",
        "name",
        "owner_id"
    ],
    "title": "SetDesignPublic"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

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": "aaba8949-40ee-4437-bd9e-0dfec4444823",
            "created_at": "2022-04-13T15:42:05.901Z",
            "updated_at": "2022-04-13T15:42:05.901Z",
            "name": "string",
            "description": null,
            "owner_id": "37e17bfd-1bf4-4ba9-83d5-f1ebc4955e3a",
            "organization_id": null,
            "background_preset_id": null,
            "base_images": [
                {
                    "id": "e17c4746-485f-4202-8b2a-1d11e64afc1c",
                    "created_at": "2022-04-13T15:42:05.901Z",
                    "updated_at": "2022-04-13T15:42:05.901Z",
                    "subject_id": "3e685152-58e8-4e95-b12f-3ef9d93c41c2",
                    "shot_type_id": "e3e19131-f7ba-44b5-a453-fdf9ec008c1e",
                    "image_url": null,
                    "image_media": null
                }
            ],
            "reference_images": [
                {
                    "id": "0926d4c8-886b-430b-9c48-d50f792adccd",
                    "created_at": "2022-04-13T15:42:05.901Z",
                    "updated_at": "2022-04-13T15:42:05.901Z",
                    "shot_type_id": "0f89c1a8-e636-4c3e-a984-e04200f926d3",
                    "label": null,
                    "image_url": null,
                    "image_media": null
                }
            ],
            "subject_portraits": [
                {
                    "id": "c9521396-e397-4f32-92cf-26f20199f48d",
                    "created_at": "2022-04-13T15:42:05.901Z",
                    "updated_at": "2022-04-13T15:42:05.901Z",
                    "subject_id": "f6252523-adbf-431d-833a-7f70d5dcdb97",
                    "image_media": null
                }
            ]
        }
    ],
    "count": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "items": {
                "$ref": "#/components/schemas/SetDesignPublic"
            },
            "type": "array",
            "title": "Data"
        },
        "count": {
            "type": "integer",
            "title": "Count"
        }
    },
    "type": "object",
    "required": [
        "data",
        "count"
    ],
    "title": "SetDesignsPublic"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

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": "159c568c-9fa6-454e-8fd5-48831493d174",
    "created_at": "2022-04-13T15:42:05.901Z",
    "updated_at": "2022-04-13T15:42:05.901Z",
    "name": "string",
    "description": null,
    "owner_id": "137c79b2-dc3f-4964-bb3d-e9add46ae97d",
    "organization_id": null,
    "background_preset_id": null,
    "base_images": [
        {
            "id": "61e13354-d34c-4546-bcc7-5e679cfdee23",
            "created_at": "2022-04-13T15:42:05.901Z",
            "updated_at": "2022-04-13T15:42:05.901Z",
            "subject_id": "942399db-bfb7-44bd-b981-9538c3cda4a6",
            "shot_type_id": "fe47adb8-f439-48fd-b3de-12992288c30f",
            "image_url": null,
            "image_media": null
        }
    ],
    "reference_images": [
        {
            "id": "69ae545b-2414-44ad-ba93-f7e23cf94688",
            "created_at": "2022-04-13T15:42:05.901Z",
            "updated_at": "2022-04-13T15:42:05.901Z",
            "shot_type_id": "382c9aea-f26b-4cf2-b762-122b50ecedb2",
            "label": null,
            "image_url": null,
            "image_media": null
        }
    ],
    "subject_portraits": [
        {
            "id": "669213ca-9f2b-4a8b-987f-57c5a43ce469",
            "created_at": "2022-04-13T15:42:05.901Z",
            "updated_at": "2022-04-13T15:42:05.901Z",
            "subject_id": "c94bb30d-7360-4ab8-b072-bfdb27311cb7",
            "image_media": null
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

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"
        },
        "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": []
        }
    },
    "type": "object",
    "required": [
        "id",
        "created_at",
        "updated_at",
        "name",
        "owner_id"
    ],
    "title": "SetDesignPublic"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

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,
    "base_images": null,
    "reference_images": null,
    "subject_portraits": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

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"
        },
        "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": "26feb409-4af1-4839-8a2f-8abbba9033fb",
    "created_at": "2022-04-13T15:42:05.901Z",
    "updated_at": "2022-04-13T15:42:05.901Z",
    "name": "string",
    "description": null,
    "owner_id": "593b005f-7a1d-42a1-bbee-e1a9a4af86f6",
    "organization_id": null,
    "background_preset_id": null,
    "base_images": [
        {
            "id": "eb2c4077-f653-4968-a7a0-72032171f00d",
            "created_at": "2022-04-13T15:42:05.901Z",
            "updated_at": "2022-04-13T15:42:05.901Z",
            "subject_id": "895b7361-3c62-4a93-857c-92a82ec22dea",
            "shot_type_id": "24308324-b347-4cea-b02d-4d6c5dd41b88",
            "image_url": null,
            "image_media": null
        }
    ],
    "reference_images": [
        {
            "id": "43d6325c-655c-49e6-b6a0-ac753b913d00",
            "created_at": "2022-04-13T15:42:05.901Z",
            "updated_at": "2022-04-13T15:42:05.901Z",
            "shot_type_id": "85c8a6eb-d616-459e-8f1c-3f9496054197",
            "label": null,
            "image_url": null,
            "image_media": null
        }
    ],
    "subject_portraits": [
        {
            "id": "e37dffc7-65c4-4401-a09b-e59dee639aeb",
            "created_at": "2022-04-13T15:42:05.901Z",
            "updated_at": "2022-04-13T15:42:05.901Z",
            "subject_id": "4e529ea1-5ef2-4319-8fe9-5d40e0328097",
            "image_media": null
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

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"
        },
        "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": []
        }
    },
    "type": "object",
    "required": [
        "id",
        "created_at",
        "updated_at",
        "name",
        "owner_id"
    ],
    "title": "SetDesignPublic"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

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

{
    "message": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "message": {
            "type": "string",
            "title": "Message"
        }
    },
    "type": "object",
    "required": [
        "message"
    ],
    "title": "Message"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

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

Responses

{
    "id": "b4ff1ff7-2a26-49eb-b464-51fbf1ac439d",
    "created_at": "2022-04-13T15:42:05.901Z",
    "updated_at": "2022-04-13T15:42:05.901Z",
    "subject_id": "f9211910-3ccc-4a77-9d4d-82482f1d43ad",
    "shot_type_id": "3db389ee-027b-4f6e-84ca-3afe571891c0",
    "image_url": null,
    "image_media": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

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"
        },
        "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"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

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

{
    "file": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "file": {
            "type": "string",
            "contentMediaType": "application/octet-stream",
            "title": "File"
        }
    },
    "type": "object",
    "required": [
        "file"
    ],
    "title": "Body_upload_set_design_base_images_zip"
}

Responses

{
    "id": "bf4ac0ae-bd8a-4c56-b41f-2dd2d9ee3dae",
    "owner_id": "5af060de-11c8-4ec0-8848-3824ab140fe4",
    "set_design_id": "05a96f7d-9d70-4827-a3a9-1b7d0443253f",
    "subject_id": "e9aaa74a-75d2-4c94-b95f-99255dbf8a87",
    "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
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

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"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

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": "208fba0f-9f85-4350-a3c4-b3740ce42257",
    "owner_id": "3d5597d4-f5eb-4ca9-836f-34c59f126803",
    "set_design_id": "2e940e5b-5f3d-43ed-b7bc-8e84b9f0aadb",
    "subject_id": "d0f8c7bc-0f22-49bd-ab8f-4ec73e50d645",
    "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
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

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"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

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": "098f7e0a-6d01-4034-ae32-f64d46c9a6d0",
    "owner_id": "559c9167-374f-4dce-b879-4459b95b4d7a",
    "set_design_id": "9869e40a-097a-4ba1-afd8-c9f8bad174bc",
    "subject_id": "86160865-0597-49ef-aace-03589cae3578",
    "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
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

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"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

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": [
        "807405f9-83b2-43d3-b507-8a348b61f982"
    ],
    "shot_type_ids": [
        "44e4c43c-23b3-40c8-8435-60eb673a670a"
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

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

{
    "message": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "message": {
            "type": "string",
            "title": "Message"
        }
    },
    "type": "object",
    "required": [
        "message"
    ],
    "title": "Message"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

Schemas

Body_upload_set_design_base_images_zip

Name Type Description
file 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

SetBaseImageCreate

Name Type Description
image URL or MediaInput for base image
shot_type_id string(uuid)
subject_id string(uuid)

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)

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

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
name string
organization_id Organization this set design belongs to
owner_id
reference_images Array<SetReferenceImageCreate>
subject_portraits Array<SubjectPortraitCreate>

SetDesignPublic

Name Type Description
background_preset_id
base_images Array<SetBaseImagePublic>
created_at string(date-time)
description
id string(uuid)
name string
organization_id
owner_id string(uuid)
reference_images Array<SetReferenceImagePublic>
subject_portraits Array<SubjectPortraitPublic>
updated_at string(date-time)

SetDesignsPublic

Name Type Description
count integer
data Array<SetDesignPublic>

SetDesignUpdate

Name Type Description
background_preset_id
base_images Full-replace base images list. None = no change.
description
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.

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