Guideline References Endpoints¶
Guideline References API endpoints.
Overview¶
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/shootings/{shooting_id}/guidelines |
List Guideline References |
| POST | /api/v1/shootings/{shooting_id}/guidelines |
Add Guideline Reference |
| GET | /api/v1/shootings/{shooting_id}/guidelines/candidates |
List Guideline Candidates |
| GET | /api/v1/shootings/{shooting_id}/guidelines/categories |
List Guideline Categories |
| PATCH | /api/v1/shootings/{shooting_id}/guidelines/{production_request_id} |
Set Guideline Category |
| DELETE | /api/v1/shootings/{shooting_id}/guidelines/{production_request_id} |
Remove Guideline Reference |
API Reference¶
Sartiq Backend Server - Guideline References 0.1.0¶
guideline-references¶
GET /api/v1/shootings/{shooting_id}/guidelines¶
List Guideline References
Description
List this shooting's guideline looks, grouped by category.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
shooting_id |
path | string | No |
Responses
[
{
"category": null,
"looks": [
{
"id": "fa32432a-86e0-48d0-a439-4d23e13be2ec",
"shooting_id": "1ddd79eb-e3c1-498f-adcc-d36fe2f32966",
"shooting_production_id": "cb8a157c-4e9a-41c7-a523-d7392149ba8f",
"production_kind": "MAIN",
"production_archived": true,
"shooting_type_key": null,
"title": null,
"product_id": null,
"product_name": null,
"product_sku": null,
"product_cover_image_url": null,
"product_wear_id": null,
"product_wear": null,
"product_ids": [
"f5dd1f3b-eedc-4d24-8bf2-40de29c11cca"
],
"products": [
{
"id": "2133e939-57ae-46ad-b533-aab17af7b433",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"sku": null,
"name": "string",
"brand": null,
"master_item_code": null,
"barcode": null,
"product_family": null,
"product_type": null,
"product_type_id": null,
"product_wear": null,
"product_wear_id": null,
"gender": "MALE",
"age_class": null,
"placement": null,
"zone": null,
"styling_slot": "top",
"type": null,
"category": null,
"sleeve_type": null,
"neckline": null,
"closure_type": null,
"fit_type": null,
"length_type": null,
"pattern": null,
"materials": null,
"colour": null,
"color_name": null,
"color_code": null,
"style_group_id": null,
"season": null,
"year": null,
"style_code": null,
"in_store_date": null,
"theme": null,
"brand_collection": null,
"ingest_job_id": null,
"description": null,
"back_description": null,
"ecommerce_description": null,
"brand_metadata": null,
"cover_image_url": null,
"back_image_url": null,
"reference_images": [
"string"
],
"cover_image_media": null,
"back_image_media": null,
"reference_images_media": null,
"color_swatch_media": null,
"data_image_urls": [
"string"
],
"public": true,
"enabled": true,
"archived": true,
"demo": true,
"is_filler": true,
"incomplete": true,
"deleted_at": null,
"owner_id": "2435c25e-84cb-43e6-84b6-c1a60d84fbae",
"organization_id": null,
"shot_status": null,
"shot_status_production_request_id": null,
"integration_name": null,
"exports_completed": null,
"exports_total": null,
"shots": [
null
]
}
],
"reference_media": [
{
"id": "b0b9859a-ff14-453a-b6ae-9b6e603c0a50",
"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"
}
],
"reference_imgs_urls": [
"string"
],
"readiness": "DRAFT",
"shot_status": null,
"lifecycle_stage": null,
"download_status": "NOT_STARTED",
"assignee_id": null,
"assignee": null,
"outfit_products_count": 0,
"outfit_generation_status": null,
"shots": [
{
"id": "df40b67a-ab56-4c39-b4fe-e01391040031",
"shot_type": null,
"status": "PENDING",
"current_revision_id": null,
"push_status": null,
"push_error_message": null,
"push_failure_reason": null,
"push_integration_name": null,
"download_status": null
}
],
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"source_shooting_id": "25ddfb8c-af96-4098-9e65-c689d259b113",
"source_shooting_name": "string",
"brand": null,
"hero_product_type_name": null,
"hero_product_type_slug": null
}
]
}
]
POST /api/v1/shootings/{shooting_id}/guidelines¶
Add Guideline Reference
Description
Add a source look as a guideline of this shooting.
201 when a row is created; 200 when the (shooting, look) reference already exists (returned unchanged — re-adds never relabel).
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
shooting_id |
path | string | No |
Request body
Schema of the request body
{
"properties": {
"production_request_id": {
"type": "string",
"format": "uuid",
"title": "Production Request Id"
},
"category": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Category"
}
},
"type": "object",
"required": [
"production_request_id"
],
"title": "GuidelineAddInput",
"description": "POST body — add a source look as a guideline of the current shooting."
}
Responses
{
"id": "9a019e65-6dae-4e14-80dc-55230a2d2940",
"shooting_id": "7d8e11d2-6beb-4c0e-b550-9277fc45b27d",
"production_request_id": "ed587f90-aa6f-405a-abc2-7557f053b299",
"category": null,
"added_by_id": null,
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z"
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"shooting_id": {
"type": "string",
"format": "uuid",
"title": "Shooting Id"
},
"production_request_id": {
"type": "string",
"format": "uuid",
"title": "Production Request Id"
},
"category": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Category"
},
"added_by_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Added By Id"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
}
},
"type": "object",
"required": [
"id",
"shooting_id",
"production_request_id",
"category",
"added_by_id",
"created_at",
"updated_at"
],
"title": "GuidelineReferencePublic",
"description": "Mutation result for POST (201 new / 200 existing) and PATCH (200).\n\nCarries ``updated_at`` since PATCH mutates the row, consistent with\n``BaseModel``."
}
GET /api/v1/shootings/{shooting_id}/guidelines/categories¶
List Guideline Categories
Description
Distinct category names used in this shooting's tenancy (picker suggestions).
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
shooting_id |
path | string | No |
Responses
GET /api/v1/shootings/{shooting_id}/guidelines/candidates¶
List Guideline Candidates
Description
Cross-shooting completed-look candidates, marked with already_added.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
exclude_added |
query | boolean | True | No | When true (default), omit looks already a guideline of this shooting. Pass false to include them (flagged already_added) for an added/disabled picker row. |
limit |
query | integer | 50 | No | |
product_type |
query | No | |||
q |
query | No | |||
shooting_id |
path | string | No | ||
skip |
query | integer | 0 | No | |
source_shooting_id |
query | No |
Responses
{
"data": [
{
"id": "a74f5626-50fd-4e4e-b94b-dbf3b72935f2",
"shooting_id": "d9371648-080e-4b8b-8d5b-fc0fe594d1e5",
"shooting_production_id": "073dded5-8832-4250-b5be-e0c8aaacd2f7",
"production_kind": "MAIN",
"production_archived": true,
"shooting_type_key": null,
"title": null,
"product_id": null,
"product_name": null,
"product_sku": null,
"product_cover_image_url": null,
"product_wear_id": null,
"product_wear": null,
"product_ids": [
"e8465849-c3a9-48a9-bf13-62c7f8757109"
],
"products": [
{
"id": "d8ad767e-15b9-4e75-9004-017450e684d5",
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"sku": null,
"name": "string",
"brand": null,
"master_item_code": null,
"barcode": null,
"product_family": null,
"product_type": null,
"product_type_id": null,
"product_wear": null,
"product_wear_id": null,
"gender": "MALE",
"age_class": null,
"placement": null,
"zone": null,
"styling_slot": "top",
"type": null,
"category": null,
"sleeve_type": null,
"neckline": null,
"closure_type": null,
"fit_type": null,
"length_type": null,
"pattern": null,
"materials": null,
"colour": null,
"color_name": null,
"color_code": null,
"style_group_id": null,
"season": null,
"year": null,
"style_code": null,
"in_store_date": null,
"theme": null,
"brand_collection": null,
"ingest_job_id": null,
"description": null,
"back_description": null,
"ecommerce_description": null,
"brand_metadata": null,
"cover_image_url": null,
"back_image_url": null,
"reference_images": [
"string"
],
"cover_image_media": null,
"back_image_media": null,
"reference_images_media": null,
"color_swatch_media": null,
"data_image_urls": [
"string"
],
"public": true,
"enabled": true,
"archived": true,
"demo": true,
"is_filler": true,
"incomplete": true,
"deleted_at": null,
"owner_id": "17d28132-0335-414f-9897-bd35893da589",
"organization_id": null,
"shot_status": null,
"shot_status_production_request_id": null,
"integration_name": null,
"exports_completed": null,
"exports_total": null,
"shots": [
null
]
}
],
"reference_media": [
{
"id": "8a8ef83b-538a-46f4-aeee-f6d57909ba6f",
"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"
}
],
"reference_imgs_urls": [
"string"
],
"readiness": "DRAFT",
"shot_status": null,
"lifecycle_stage": null,
"download_status": "NOT_STARTED",
"assignee_id": null,
"assignee": null,
"outfit_products_count": 0,
"outfit_generation_status": null,
"shots": [
{
"id": "3935ed39-0c9e-4d44-9d22-212a09bd1ec9",
"shot_type": null,
"status": "PENDING",
"current_revision_id": null,
"push_status": null,
"push_error_message": null,
"push_failure_reason": null,
"push_integration_name": null,
"download_status": null
}
],
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z",
"source_shooting_id": "eebdc584-106c-47ba-8dc5-67f2f423e079",
"source_shooting_name": "string",
"brand": null,
"hero_product_type_name": null,
"hero_product_type_slug": null,
"already_added": true
}
],
"count": 0
}
Schema of the response body
{
"properties": {
"data": {
"items": {
"$ref": "#/components/schemas/GuidelineCandidatePublic"
},
"type": "array",
"title": "Data",
"default": []
},
"count": {
"type": "integer",
"title": "Count",
"default": 0
}
},
"type": "object",
"title": "GuidelineCandidatesPublic",
"description": "Paginated page of candidates for the cross-shooting picker."
}
PATCH /api/v1/shootings/{shooting_id}/guidelines/{production_request_id}¶
Set Guideline Category
Description
Relabel a guideline reference's category.
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
production_request_id |
path | string | No | ||
shooting_id |
path | string | No |
Request body
Responses
{
"id": "0a6b017f-38e5-48d1-8093-1ca91f5634e9",
"shooting_id": "26c7004e-0254-40d6-a8d8-91e7b77c262f",
"production_request_id": "49f5b4ab-0cc3-4c9a-bae8-15ac69f4bd09",
"category": null,
"added_by_id": null,
"created_at": "2022-04-13T15:42:05.901Z",
"updated_at": "2022-04-13T15:42:05.901Z"
}
Schema of the response body
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"title": "Id"
},
"shooting_id": {
"type": "string",
"format": "uuid",
"title": "Shooting Id"
},
"production_request_id": {
"type": "string",
"format": "uuid",
"title": "Production Request Id"
},
"category": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Category"
},
"added_by_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Added By Id"
},
"created_at": {
"type": "string",
"format": "date-time",
"title": "Created At"
},
"updated_at": {
"type": "string",
"format": "date-time",
"title": "Updated At"
}
},
"type": "object",
"required": [
"id",
"shooting_id",
"production_request_id",
"category",
"added_by_id",
"created_at",
"updated_at"
],
"title": "GuidelineReferencePublic",
"description": "Mutation result for POST (201 new / 200 existing) and PATCH (200).\n\nCarries ``updated_at`` since PATCH mutates the row, consistent with\n``BaseModel``."
}
DELETE /api/v1/shootings/{shooting_id}/guidelines/{production_request_id}¶
Remove Guideline Reference
Description
Remove a guideline reference from this shooting (no-op if absent).
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
OAuth2PasswordBearer |
header | string | N/A | No | |
production_request_id |
path | string | No | ||
shooting_id |
path | string | No |
Responses
Schemas¶
AgeClass¶
Type: string
DefaultShotTypes¶
Type: string
DownloadStatus¶
Type: string
GuidelineAddInput¶
| Name | Type | Description |
|---|---|---|
category |
||
production_request_id |
string(uuid) |
GuidelineCandidatePublic¶
| Name | Type | Description |
|---|---|---|
already_added |
boolean | |
assignee |
||
assignee_id |
||
brand |
||
created_at |
string(date-time) | |
download_status |
DownloadStatus | |
hero_product_type_name |
||
hero_product_type_slug |
||
id |
string(uuid) | |
lifecycle_stage |
||
outfit_generation_status |
||
outfit_products_count |
integer | |
product_cover_image_url |
||
product_id |
||
product_ids |
Array<string(uuid)> | |
product_name |
||
product_sku |
||
product_wear |
||
product_wear_id |
||
production_archived |
boolean | |
production_kind |
ProductionKind | |
products |
Array<ProductPublic> | |
readiness |
ProductionRequestReadiness | |
reference_imgs_urls |
Array<string> | |
reference_media |
Array<MediaResourcePublic> | |
shooting_id |
string(uuid) | |
shooting_production_id |
string(uuid) | |
shooting_type_key |
||
shot_status |
||
shots |
Array<ShotSummary> | |
source_shooting_id |
string(uuid) | |
source_shooting_name |
string | |
title |
||
updated_at |
string(date-time) |
GuidelineCandidatesPublic¶
| Name | Type | Description |
|---|---|---|
count |
integer | |
data |
Array<GuidelineCandidatePublic> |
GuidelineCategoryInput¶
| Name | Type | Description |
|---|---|---|
category |
GuidelineGroupPublic¶
| Name | Type | Description |
|---|---|---|
category |
||
looks |
Array<GuidelineLookSummaryPublic> |
GuidelineLookSummaryPublic¶
| Name | Type | Description |
|---|---|---|
assignee |
||
assignee_id |
||
brand |
||
created_at |
string(date-time) | |
download_status |
DownloadStatus | |
hero_product_type_name |
||
hero_product_type_slug |
||
id |
string(uuid) | |
lifecycle_stage |
||
outfit_generation_status |
||
outfit_products_count |
integer | |
product_cover_image_url |
||
product_id |
||
product_ids |
Array<string(uuid)> | |
product_name |
||
product_sku |
||
product_wear |
||
product_wear_id |
||
production_archived |
boolean | |
production_kind |
ProductionKind | |
products |
Array<ProductPublic> | |
readiness |
ProductionRequestReadiness | |
reference_imgs_urls |
Array<string> | |
reference_media |
Array<MediaResourcePublic> | |
shooting_id |
string(uuid) | |
shooting_production_id |
string(uuid) | |
shooting_type_key |
||
shot_status |
||
shots |
Array<ShotSummary> | |
source_shooting_id |
string(uuid) | |
source_shooting_name |
string | |
title |
||
updated_at |
string(date-time) |
GuidelineReferencePublic¶
| Name | Type | Description |
|---|---|---|
added_by_id |
||
category |
||
created_at |
string(date-time) | |
id |
string(uuid) | |
production_request_id |
string(uuid) | |
shooting_id |
string(uuid) | |
updated_at |
string(date-time) |
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
OutfitGenerationStatus¶
Type: string
ProductGender¶
Type: string
ProductionKind¶
Type: string
ProductionRequestReadiness¶
Type: string
ProductionRequestStatusKey¶
Type: string
ProductPlacement¶
Type: string
ProductPublic¶
| Name | Type | Description |
|---|---|---|
age_class |
||
archived |
boolean | |
back_description |
||
back_image_media |
||
back_image_url |
||
barcode |
||
brand |
||
brand_collection |
||
brand_metadata |
||
category |
||
closure_type |
||
color_code |
||
color_name |
||
color_swatch_media |
||
colour |
||
cover_image_media |
||
cover_image_url |
||
created_at |
string(date-time) | |
data_image_urls |
Array<string> | |
deleted_at |
||
demo |
boolean | |
description |
||
ecommerce_description |
||
enabled |
boolean | |
exports_completed |
||
exports_total |
||
fit_type |
||
gender |
ProductGender | |
id |
string(uuid) | |
in_store_date |
||
incomplete |
boolean | |
ingest_job_id |
||
integration_name |
||
is_filler |
boolean | |
length_type |
||
master_item_code |
||
materials |
||
name |
string | |
neckline |
||
organization_id |
||
owner_id |
string(uuid) | |
pattern |
||
placement |
||
product_family |
||
product_type |
||
product_type_id |
||
product_wear |
||
product_wear_id |
||
public |
boolean | |
reference_images |
Array<string> | |
reference_images_media |
||
season |
||
shot_status |
||
shot_status_production_request_id |
||
shots |
Array<> | |
sku |
||
sleeve_type |
||
style_code |
||
style_group_id |
||
styling_slot |
StylingSlot | |
theme |
||
type |
||
updated_at |
string(date-time) | |
year |
||
zone |
ProductShootingStatus¶
Type: string
PushFailureReason¶
Type: string
RoleName¶
Type: string
RolePublic¶
| Name | Type | Description |
|---|---|---|
description |
||
id |
string(uuid) | |
name |
RoleName |
ShotSummary¶
| Name | Type | Description |
|---|---|---|
current_revision_id |
||
download_status |
DownloadStatus | |
id |
string(uuid) | |
push_error_message |
||
push_failure_reason |
||
push_integration_name |
||
push_status |
||
shot_type |
||
status |
ProductionRequestStatusKey |
ShotTypeFraming¶
Type: string
ShotTypePublic¶
| Name | Type | Description |
|---|---|---|
core_focus |
boolean | |
created_at |
string(date-time) | |
default_shot_type |
||
deleted_at |
||
file_naming_convention |
||
framing |
||
id |
string(uuid) | |
margins |
||
margins_key |
||
name |
string | |
organization_id |
||
owner_id |
||
prompt |
||
prompt_builder_section |
||
public |
boolean | |
reference_image |
||
reference_image_url |
||
requires_subject |
boolean | |
shot_type_prompt_instruction |
||
shot_type_ref_image_url |
||
updated_at |
string(date-time) | |
view_angle |
ViewAngle |
StylingSlot¶
Type: string
UserSummary¶
| Name | Type | Description |
|---|---|---|
email |
string(email) | |
full_name |
||
id |
string(uuid) | |
role |
ValidationError¶
| Name | Type | Description |
|---|---|---|
ctx |
||
input |
||
loc |
Array<> | |
msg |
string | |
type |
string |
ViewAngle¶
Type: string
Security schemes¶
| Name | Type | Scheme | Description |
|---|---|---|---|
| OAuth2PasswordBearer | oauth2 |