Skip to main content

Extra option model

An ExtraOption belongs to one Extra through the literal extra_id field. It groups the selectable suboptions for that extra; it is not itself a product or a suboption.

Operations​

ActionMethodResource
ListGET/business/{business_id}/extras/{extra_id}/options
FindGET/business/{business_id}/extras/{extra_id}/options/{option_id}
CreatePOST/business/{business_id}/extras/{extra_id}/options
UpdatePUT or POST/business/{business_id}/extras/{extra_id}/options/{option_id}
DeleteDELETE/business/{business_id}/extras/{extra_id}/options/{option_id}

Both update methods map to the same action but remain separate operations. Requests require authentication; write access is limited to administrators and business managers, with managers scoped to associated businesses. The route must identify the correct business and extra.

Shared concepts​

The model includes fields such as id, extra_id, name, image, conditioned, respect_to, min, max, rank, with_half_option, allow_suboption_quantity, limit_suboptions_by_max, enabled, external_id, and snooze_until. Its relations are named extra, suboptions, and metafields.

See load extra option relations and the extra option suboption model.