Select a routine variant

Put the customer on one of the routine variants their scan produced. The persisted routine (data on GET /skin/care-routine/{batch_id}, the tracker, the shelf, the vendor views and the result email) is rewritten from the chosen variant's snapshot, and selected_variant flips. Idempotent: selecting the current variant returns the same rows. A change of variant is tracked as a Routine Variant Selected analytics event carrying source; nothing is billed or emailed by this call. Widget (Bearer) and mobile (cookie) callers use it alike; a vendor caller must own the scan. A referred face or body scan returns 409. Budget warnings do not block tier selection. Essential uses one face-and-body budget with the existing 10% allowance; price and concern coverage remain visible when the remaining core exceeds it. Referred sibling zones are excluded from the selected routine.

The tier is one choice per scan. Selecting on a face batch (or on a body-only session's first zone) rewrites every body zone hanging off it to the same variant; selecting on a body zone rewrites the face and its sibling zones. Members with no variants of their own (a routine from before the feature, a chat-rewritten face) are left as they are. family carries the other members' new rows so a client updates every zone from this one response.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
required

Skin analysis batch ID

Body Params
string
enum
required
Allowed:
string
length ≤ 40

Where the customer chose, for analytics only. The mobile app sends routine_ready_sheet or routine_details.

Responses

401

Unauthorized

403

The scan belongs to another customer or vendor

404

The scan has no routine variants (generated before the feature, or an empty routine)

409

The combined scan awaits body photos or payment, a routine is being generated, or the scan requires professional review

422

Unknown variant, or unknown batch id

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json