Get a product
/v1/products/{id}A session or a secret key gets the product with its images, model and warnings. A publishable key gets the public projection (PublicProductResponse), and only for a published product with a ready model; anything else is a 404.
Path Parameters
The product's id.
uuidResponse Body
application/json
application/json
curl -X GET "https://example.com/v1/products/497f6eca-6276-4993-bfeb-53cbbbba6f08"{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "org_id": "a40f5d1f-d889-42e9-94ea-b9b33585fc6b", "title": "string", "custom_id": "string", "tags": [ "string" ], "status": "awaiting_review", "display_status": "published", "published": false, "form": "string", "source_type": "image", "price": 0, "currency": "string", "height": 0, "width": 0, "depth": 0, "display_unit": "mm", "images_ordered": false, "thumbnail_url": "string", "has_warnings": false, "warning_count": 0, "comment_count": 0, "image_count": 0, "model_status": "planned", "owner": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "display_name": "string", "email": "string" }, "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "viewer_url": "string", "description": "string", "wall_mounted": false, "product_type": "string", "material_words": "string", "transparent": false, "metadata": {}, "sources": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "kind": "photo", "url": "string", "original_name": "string", "position": 0, "azimuth": "string", "tilt": "string", "clean": true, "created_at": "2019-08-24T14:15:22Z" } ], "images": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "view": "string", "kind": "wanted", "stands_for": "string", "status": "planned", "skip_reason": "string", "route": "reuse", "source": "photograph", "evidence": "string", "azimuth": "string", "tilt": "string", "source_photo_id": "a7f5490c-d09d-4c87-9733-d1cad32c6e5a", "attempts": 0, "flagged": false, "cut_flagged": false, "cut_problems": "string", "review_status": "pending", "filename": "string", "alt_text": "string", "filename_override": "string", "alt_override": "string", "shadow_override": { "mode": "silhouette", "tone": [ 0, 0, 0 ], "silhouette": { "length": 0, "lean": 0, "blurNear": 0, "blurFar": 0, "opacity": 0, "distanceFade": 0 }, "contact": { "trailPx": 0, "dark": 0, "end": 0, "midpoint": 0, "regionHeight": 0 }, "ground": { "nudge": 0, "tilt": 0 } }, "background_override": [ 0, 0, 0 ], "frame_scale": 0, "contact_regions": [ [ 0 ] ], "raw_url": "string", "cutout_url": "string", "warnings": [ { "kind": "cut", "scope": "image", "title": "string", "detail": "string", "view": "string" } ], "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z" } ], "model": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "status": "planned", "review_status": "pending", "thumbnail_url": "string", "scale_factor": 0, "width_axis": "x", "flags": { "transparent": false, "geometry_risk": false, "texture_risk": false, "source_quality": "ok", "reasons": [ { "code": "string", "sentence": "string" } ] }, "warnings": [ { "kind": "cut", "scope": "image", "title": "string", "detail": "string", "view": "string" } ], "created_at": "2019-08-24T14:15:22Z", "completed_at": "2019-08-24T14:15:22Z" }, "warnings": [ { "kind": "cut", "scope": "image", "title": "string", "detail": "string", "view": "string" } ], "open_request_count": 0, "painting": { "edge": "frame", "edge_color": "string", "dimensions_of": "canvas", "canvas_width_cm": 0, "canvas_height_cm": 0, "depth_cm": 0, "has_frame": false, "rebuild": { "status": "running", "requested": { "edge": "frame", "edge_color": "string", "dimensions_of": "canvas", "canvas_width_cm": 0, "canvas_height_cm": 0, "depth_cm": 0, "frame_width_cm": 0, "frame_height_cm": 0 }, "requested_at": "2019-08-24T14:15:22Z", "error": "string" } }, "viewer_desktop": "viewer", "viewer_mobile": "viewer"}{ "error": { "code": "string", "message": "string", "details": null }}Get a product by custom id GET
Finds a product by your own `custom_id` within one organization and answers exactly what `GET /v1/products/{id}` answers. `404` when no product has that id there, or when a publishable key may not see it.
Update a product PATCH
Changes the product's details, its review status and whether it is published. Dimensions are stored as given; `POST /v1/products/{id}/model/rescale` resizes the model. For a painting, `painting` and `dimensions` rebuild its model in the background: the answer shows `painting.rebuild` running, the delivered model stays ready meanwhile, and a failed rebuild keeps the old model and reports `rebuild.error`. `400` for `awaiting_review` or settings a painting cannot take (`details.reason`); `402` when the plan does not allow publishing; `409` for a `custom_id` already taken, or while the model is being made.