Skip to content
Sections

Guest preorders

View the guest-owned preorder projection

GET/public/preorders/manage

Uses the revocable manage capability to return fulfillment, deposit, cart, and allowed-action state for the preorder it owns.

Authentication

Authorization: Bearer <HALLIFY_PREORDER_MANAGE_TOKEN>

Guest-owned capability for managing a preorder.

Connection guide

Parameters

No path, query or ordinary header parameters. See authentication and request body below.

Responses

200Returns the guest-visible preorder projection and current revision.
PreorderPublicManageResultDto
Full definition
{
  "$ref": "#/components/schemas/PreorderPublicManageResultDto"
}
Example response · 200 · application/json
{
  "fulfillmentId": "0a81282f-ea3b-40be-8ef7-4ad39e32ea88",
  "orderId": "f3127edf-ce4f-4da7-8be5-81b962024e6c",
  "revision": 1,
  "status": "DRAFT",
  "serviceMode": "DINE_IN",
  "partySize": 1,
  "scheduledFor": "2026-01-15T12:00:00.000Z",
  "venue": {
    "id": "fbc6db41-f1c2-4f74-862d-210bd28ee2a0",
    "name": "Example name",
    "timeZone": "Asia/Tbilisi"
  },
  "channel": {
    "publicHandle": "example",
    "salesChannelId": "ff0fa725-ba44-4e7a-82bb-a15650e0a0cc",
    "termsVersion": "example",
    "privacyVersion": "example"
  },
  "contact": null,
  "deposit": {
    "status": "NOT_REQUIRED",
    "requiredAmount": "1.00",
    "paidAmount": "1.00",
    "dueAt": null
  },
  "delivery": {
    "zoneId": null,
    "feeAmount": "1.00"
  },
  "items": [
    {
      "clientLineId": "example-id",
      "id": "9fbff223-7cc1-4311-8644-0bd59ff2477a",
      "menuVersionId": null,
      "salesChannelId": null,
      "menuItemId": null,
      "menuVariantId": null,
      "name": "Example name",
      "rootItemStructureKind": "SINGLE_ITEM",
      "itemStructureExecutionMode": "DIRECT_ITEM",
      "effectiveExecutionMode": "DIRECT_ITEM",
      "quantity": 1,
      "billableQuantity": 1,
      "unitPrice": "1.00",
      "totalAmount": "1.00",
      "specialRequest": null,
      "serviceFlags": [
        "example"
      ],
      "allergenCodes": [
        "EXAMPLE"
      ],
      "kitchenStatus": "PENDING",
      "modifiers": [
        {
          "optionId": null,
          "groupName": "Example name",
          "optionName": "Example name",
          "priceDelta": "1.00",
          "allergenCodes": [
            "EXAMPLE"
          ]
        }
      ],
      "components": [
        {
          "id": "cada95b5-09b4-4bdd-8379-2e6df6ee6198",
          "operationalRole": "GUEST_SELECTION",
          "name": "Example name",
          "menuVariantId": null,
          "quantity": 1,
          "componentGroupId": "example-id",
          "componentGroupName": "Example name",
          "componentChoiceId": "example-id",
          "componentQuantity": 1,
          "componentUpcharge": "1.00",
          "componentIsDefault": true,
          "kitchenStatus": "PENDING",
          "modifiers": [
            {
              "optionId": null,
              "groupName": "Example name",
              "optionName": "Example name",
              "priceDelta": "1.00",
              "allergenCodes": [
                "EXAMPLE"
              ]
            }
          ]
        }
      ]
    }
  ],
  "allowedActions": {
    "cancel": true,
    "reschedule": true,
    "changeRequest": true
  },
  "generatedAt": "2026-01-15T12:00:00.000Z"
}
401Rejects a missing, malformed, expired, revoked, or invalid preorderManageToken credential at the owning domain boundary.
TranslatedErrorDto
Full definition
{
  "$ref": "#/components/schemas/TranslatedErrorDto"
}
Example response · 401 · application/json
{
  "statusCode": 401,
  "error": "errors:http.unauthorized",
  "code": "HTTP_UNAUTHORIZED",
  "message": "errors:http.unauthorized",
  "translationKey": "errors:http.unauthorized"
}

Schemas

PreorderPublicManageResultDto

Returns the guest-visible preorder projection and current revision.

fulfillmentIdRequired

Hallify UUID identifying fulfillment associated with preorder public manage.

string · uuid
Full definition
{
  "type": "string",
  "format": "uuid",
  "description": "Hallify UUID identifying fulfillment associated with preorder public manage.",
  "example": "0a81282f-ea3b-40be-8ef7-4ad39e32ea88"
}
orderIdRequired

Hallify UUID identifying order associated with preorder public manage.

string · uuid
Full definition
{
  "type": "string",
  "format": "uuid",
  "description": "Hallify UUID identifying order associated with preorder public manage.",
  "example": "f3127edf-ce4f-4da7-8be5-81b962024e6c"
}
revisionRequired

Monotonic optimistic-concurrency revision for preorder public manage. Accepted values enforce minimum 1.

integer
Full definition
{
  "type": "integer",
  "minimum": 1,
  "description": "Monotonic optimistic-concurrency revision for preorder public manage. Accepted values enforce minimum 1.",
  "example": 1
}
statusRequired

Current lifecycle status of preorder public manage; allowed values are DRAFT, HELD, CONFIRMED, IN_PREPARATION, READY_FOR_HANDOFF, OUT_FOR_DELIVERY, COMPLETED, CANCELED, EXPIRED.

string
Full definition
{
  "type": "string",
  "enum": [
    "DRAFT",
    "HELD",
    "CONFIRMED",
    "IN_PREPARATION",
    "READY_FOR_HANDOFF",
    "OUT_FOR_DELIVERY",
    "COMPLETED",
    "CANCELED",
    "EXPIRED"
  ],
  "description": "Current lifecycle status of preorder public manage; allowed values are DRAFT, HELD, CONFIRMED, IN_PREPARATION, READY_FOR_HANDOFF, OUT_FOR_DELIVERY, COMPLETED, CANCELED, EXPIRED.",
  "example": "DRAFT"
}
serviceModeRequired

Allowed service mode for preorder public manage: DINE_IN, PICKUP, DELIVERY, CATERING.

string
Full definition
{
  "type": "string",
  "enum": [
    "DINE_IN",
    "PICKUP",
    "DELIVERY",
    "CATERING"
  ],
  "description": "Allowed service mode for preorder public manage: DINE_IN, PICKUP, DELIVERY, CATERING.",
  "example": "DINE_IN"
}
partySizeRequired

Whole-number party size recorded for preorder public manage. Accepted values enforce minimum 1.

integer
Full definition
{
  "type": "integer",
  "minimum": 1,
  "description": "Whole-number party size recorded for preorder public manage. Accepted values enforce minimum 1.",
  "example": 1
}
scheduledForRequired

RFC 3339 timestamp for scheduled for; offsets represent the same absolute instant.

string · date-time
Full definition
{
  "type": "string",
  "format": "date-time",
  "description": "RFC 3339 timestamp for scheduled for; offsets represent the same absolute instant.",
  "example": "2026-01-15T12:00:00.000Z"
}
venueRequired

Venue details embedded in preorder public manage containing id, name, and time zone.

object
Full definition
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Hallify UUID identifying preorder public manage venue.",
      "example": "fbc6db41-f1c2-4f74-862d-210bd28ee2a0"
    },
    "name": {
      "type": "string",
      "description": "Human-readable name for preorder public manage venue.",
      "example": "Example name"
    },
    "timeZone": {
      "type": "string",
      "description": "IANA time-zone identifier used to interpret venue-local dates and times for preorder public manage venue.",
      "example": "Asia/Tbilisi"
    }
  },
  "required": [
    "id",
    "name",
    "timeZone"
  ],
  "description": "Venue details embedded in preorder public manage containing id, name, and time zone.",
  "example": {
    "id": "fbc6db41-f1c2-4f74-862d-210bd28ee2a0",
    "name": "Example name",
    "timeZone": "Asia/Tbilisi"
  }
}
channelRequired

Channel details embedded in preorder public manage containing public handle, sales channel id, terms version, and privacy version.

object
Full definition
{
  "type": "object",
  "properties": {
    "publicHandle": {
      "type": "string",
      "description": "Public handle for preorder public manage channel.",
      "example": "example"
    },
    "salesChannelId": {
      "type": "string",
      "format": "uuid",
      "description": "Hallify UUID identifying sales channel associated with preorder public manage channel.",
      "example": "ff0fa725-ba44-4e7a-82bb-a15650e0a0cc"
    },
    "termsVersion": {
      "type": "string",
      "description": "Terms version for preorder public manage channel.",
      "example": "example"
    },
    "privacyVersion": {
      "type": "string",
      "description": "Privacy version for preorder public manage channel.",
      "example": "example"
    }
  },
  "required": [
    "publicHandle",
    "salesChannelId",
    "termsVersion",
    "privacyVersion"
  ],
  "description": "Channel details embedded in preorder public manage containing public handle, sales channel id, terms version, and privacy version.",
  "example": {
    "publicHandle": "example",
    "salesChannelId": "ff0fa725-ba44-4e7a-82bb-a15650e0a0cc",
    "termsVersion": "example",
    "privacyVersion": "example"
  }
}
contactRequired

Contact details embedded in preorder public manage containing contact name, contact phone, contact email, address line1, address line2, and city. Null means no value is recorded for this representation.

object · null
Full definition
{
  "type": "object",
  "nullable": true,
  "properties": {
    "contactName": {
      "type": "string",
      "description": "Human-readable contact name for preorder public manage contact.",
      "example": "Example name"
    },
    "contactPhone": {
      "type": "string",
      "nullable": true,
      "description": "Telephone number recorded for contact phone in preorder public manage contact. Null means no value is recorded for this representation.",
      "example": "+995555000000"
    },
    "contactEmail": {
      "type": "string",
      "nullable": true,
      "description": "Email address recorded for contact email in preorder public manage contact. Null means no value is recorded for this representation.",
      "format": "email",
      "example": "user@example.test"
    },
    "addressLine1": {
      "type": "string",
      "nullable": true,
      "description": "Primary street-address line for preorder public manage contact. Null means no value is recorded for this representation.",
      "example": "example"
    },
    "addressLine2": {
      "type": "string",
      "nullable": true,
      "description": "Optional secondary address details such as unit, floor, or building for preorder public manage contact. Null means no value is recorded for this representation.",
      "example": "example"
    },
    "city": {
      "type": "string",
      "nullable": true,
      "description": "City or locality recorded for the address represented by preorder public manage contact. Null means no value is recorded for this representation.",
      "example": "example"
    },
    "region": {
      "type": "string",
      "nullable": true,
      "description": "Region, state, or administrative subdivision recorded for preorder public manage contact. Null means no value is recorded for this representation.",
      "example": "example"
    },
    "postalCode": {
      "type": "string",
      "nullable": true,
      "description": "Stable postal code used to classify or address preorder public manage contact. Null means no value is recorded for this representation.",
      "example": "EXAMPLE"
    },
    "countryCode": {
      "type": "string",
      "nullable": true,
      "description": "Stable country code used to classify or address preorder public manage contact. Null means no value is recorded for this representation.",
      "example": "GE"
    },
    "administrativeDivisionId": {
      "type": "string",
      "format": "uuid",
      "nullable": true,
      "description": "Hallify UUID identifying administrative division associated with preorder public manage contact. Null means no value is recorded for this representation.",
      "example": "c8efbc76-614d-4a79-8f15-db6d48283d46"
    },
    "localityId": {
      "type": "string",
      "format": "uuid",
      "nullable": true,
      "description": "Hallify UUID identifying locality associated with preorder public manage contact. Null means no value is recorded for this representation.",
      "example": "1bfa5864-39f3-4647-8093-42aea5d9d046"
    },
    "postalCodeId": {
      "type": "string",
      "format": "uuid",
      "nullable": true,
      "description": "Hallify UUID identifying postal code associated with preorder public manage contact. Null means no value is recorded for this representation.",
      "example": "7424d59b-d459-4e7b-8cbc-7f5222274f26"
    },
    "latitude": {
      "type": "number",
      "nullable": true,
      "description": "Fraction-capable numeric latitude recorded for preorder public manage contact. Null means no value is recorded for this representation.",
      "example": 41.7151
    },
    "longitude": {
      "type": "number",
      "nullable": true,
      "description": "Fraction-capable numeric longitude recorded for preorder public manage contact. Null means no value is recorded for this representation.",
      "example": 44.8271
    },
    "coordinateSource": {
      "type": "string",
      "nullable": true,
      "enum": [
        "STAFF",
        "EXTERNAL_CLIENT",
        "GEOREFERENCE_CENTROID",
        null
      ],
      "description": "Allowed coordinate source for preorder public manage contact: STAFF, EXTERNAL_CLIENT, GEOREFERENCE_CENTROID. Null means no value is recorded for this representation.",
      "example": "STAFF"
    },
    "coordinateAccuracy": {
      "type": "integer",
      "minimum": 0,
      "maximum": 10,
      "nullable": true,
      "description": "Whole-number coordinate accuracy recorded for preorder public manage contact. Accepted values enforce minimum 0 and maximum 10. Null means no value is recorded for this representation.",
      "example": 0
    },
    "deliveryInstructions": {
      "type": "string",
      "nullable": true,
      "description": "Delivery instructions for preorder public manage contact. Null means no value is recorded for this representation.",
      "example": "example"
    }
  },
  "required": [
    "contactName",
    "contactPhone",
    "contactEmail",
    "addressLine1",
    "addressLine2",
    "city",
    "region",
    "postalCode",
    "countryCode",
    "administrativeDivisionId",
    "localityId",
    "postalCodeId",
    "latitude",
    "longitude",
    "coordinateSource",
    "coordinateAccuracy",
    "deliveryInstructions"
  ],
  "description": "Contact details embedded in preorder public manage containing contact name, contact phone, contact email, address line1, address line2, and city. Null means no value is recorded for this representation.",
  "example": {
    "contactName": "Example name",
    "contactPhone": null,
    "contactEmail": null,
    "addressLine1": null,
    "addressLine2": null,
    "city": null,
    "region": null,
    "postalCode": null,
    "countryCode": null,
    "administrativeDivisionId": null,
    "localityId": null,
    "postalCodeId": null,
    "latitude": null,
    "longitude": null,
    "coordinateSource": null,
    "coordinateAccuracy": null,
    "deliveryInstructions": null
  }
}
depositRequired

Deposit details embedded in preorder public manage containing status, required amount, paid amount, and due at.

object
Full definition
{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "NOT_REQUIRED",
        "REQUIRED",
        "PARTIALLY_PAID",
        "PAID",
        "OVERDUE"
      ],
      "description": "Current lifecycle status of preorder public manage deposit; allowed values are NOT_REQUIRED, REQUIRED, PARTIALLY_PAID, PAID, OVERDUE.",
      "example": "NOT_REQUIRED"
    },
    "requiredAmount": {
      "type": "string",
      "pattern": "^\\d+\\.\\d{2}$",
      "description": "Decimal monetary required amount serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage deposit; zero is a recorded amount, not absence.",
      "example": "1.00"
    },
    "paidAmount": {
      "type": "string",
      "pattern": "^\\d+\\.\\d{2}$",
      "description": "Decimal monetary paid amount serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage deposit; zero is a recorded amount, not absence.",
      "example": "1.00"
    },
    "dueAt": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "description": "RFC 3339 timestamp for due at; offsets represent the same absolute instant. Null means no value is recorded for this representation.",
      "example": "2026-12-31T18:00:00.000Z"
    }
  },
  "required": [
    "status",
    "requiredAmount",
    "paidAmount",
    "dueAt"
  ],
  "description": "Deposit details embedded in preorder public manage containing status, required amount, paid amount, and due at.",
  "example": {
    "status": "NOT_REQUIRED",
    "requiredAmount": "1.00",
    "paidAmount": "1.00",
    "dueAt": null
  }
}
deliveryRequired

Delivery details embedded in preorder public manage containing zone id and fee amount.

object
Full definition
{
  "type": "object",
  "properties": {
    "zoneId": {
      "type": "string",
      "format": "uuid",
      "nullable": true,
      "description": "Hallify UUID identifying zone associated with preorder public manage delivery. Null means no value is recorded for this representation.",
      "example": "f6864a47-6a06-4534-8879-1bfd5a7ed49b"
    },
    "feeAmount": {
      "type": "string",
      "pattern": "^\\d+\\.\\d{2}$",
      "description": "Decimal monetary fee amount serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage delivery; zero is a recorded amount, not absence.",
      "example": "1.00"
    }
  },
  "required": [
    "zoneId",
    "feeAmount"
  ],
  "description": "Delivery details embedded in preorder public manage containing zone id and fee amount.",
  "example": {
    "zoneId": null,
    "feeAmount": "1.00"
  }
}
itemsRequired

Items returned in the preorder public manage collection.

array
Full definition
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "clientLineId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 80,
        "description": "Opaque identifier for client line associated with preorder public manage item; clients must not assume UUID syntax. Accepted values enforce minimum length 1 and maximum length 80.",
        "example": "example-id"
      },
      "id": {
        "type": "string",
        "format": "uuid",
        "description": "Hallify UUID identifying preorder public manage item.",
        "example": "9fbff223-7cc1-4311-8644-0bd59ff2477a"
      },
      "menuVersionId": {
        "type": "string",
        "format": "uuid",
        "nullable": true,
        "description": "Hallify UUID identifying menu version associated with preorder public manage item. Null means no value is recorded for this representation.",
        "example": "490ccfcb-caa6-472e-836a-a8416e8cee92"
      },
      "salesChannelId": {
        "type": "string",
        "format": "uuid",
        "nullable": true,
        "description": "Hallify UUID identifying sales channel associated with preorder public manage item. Null means no value is recorded for this representation.",
        "example": "ff0fa725-ba44-4e7a-82bb-a15650e0a0cc"
      },
      "menuItemId": {
        "type": "string",
        "format": "uuid",
        "nullable": true,
        "description": "Hallify UUID identifying menu item associated with preorder public manage item. Null means no value is recorded for this representation.",
        "example": "16ee6f36-c0cb-4311-85e8-2d2b3edea0fd"
      },
      "menuVariantId": {
        "type": "string",
        "format": "uuid",
        "nullable": true,
        "description": "Hallify UUID identifying menu variant associated with preorder public manage item. Null means no value is recorded for this representation.",
        "example": "94389946-e5d8-4fba-8358-e3a9c8a04b11"
      },
      "name": {
        "type": "string",
        "description": "Human-readable name for preorder public manage item.",
        "example": "Example name"
      },
      "rootItemStructureKind": {
        "type": "string",
        "enum": [
          "SINGLE_ITEM",
          "SIZED_PORTIONED",
          "COMBO_MEAL_DEAL",
          "FIXED_PRICE_COURSE_MENU",
          "BUILD_YOUR_OWN",
          "BUNDLE_KIT",
          "MEASURED",
          "OPEN_PRICE",
          "CATERING_PREORDER",
          "CUSTOM"
        ],
        "description": "Allowed root item structure kind for preorder public manage item: SINGLE_ITEM, SIZED_PORTIONED, COMBO_MEAL_DEAL, FIXED_PRICE_COURSE_MENU, BUILD_YOUR_OWN, BUNDLE_KIT, MEASURED, OPEN_PRICE, CATERING_PREORDER, CUSTOM.",
        "example": "SINGLE_ITEM"
      },
      "itemStructureExecutionMode": {
        "type": "string",
        "enum": [
          "DIRECT_ITEM",
          "SELLABLE_VERSION",
          "COMPONENT_GROUPS",
          "COURSE_SEQUENCE",
          "GUIDED_STAGES",
          "BUNDLE_SECTIONS",
          "MEASURED_QUANTITY",
          "OPEN_PRICE_ENTRY",
          "PREORDER_PACKAGE",
          "CUSTOM_POLICY"
        ],
        "description": "Allowed item structure execution mode for preorder public manage item: DIRECT_ITEM, SELLABLE_VERSION, COMPONENT_GROUPS, COURSE_SEQUENCE, GUIDED_STAGES, BUNDLE_SECTIONS, MEASURED_QUANTITY, OPEN_PRICE_ENTRY, PREORDER_PACKAGE, CUSTOM_POLICY.",
        "example": "DIRECT_ITEM"
      },
      "effectiveExecutionMode": {
        "type": "string",
        "enum": [
          "DIRECT_ITEM",
          "SELLABLE_VERSION",
          "COMPONENT_GROUPS",
          "COURSE_SEQUENCE",
          "GUIDED_STAGES",
          "BUNDLE_SECTIONS",
          "MEASURED_QUANTITY",
          "OPEN_PRICE_ENTRY",
          "PREORDER_PACKAGE",
          "CUSTOM_POLICY"
        ],
        "description": "Allowed effective execution mode for preorder public manage item: DIRECT_ITEM, SELLABLE_VERSION, COMPONENT_GROUPS, COURSE_SEQUENCE, GUIDED_STAGES, BUNDLE_SECTIONS, MEASURED_QUANTITY, OPEN_PRICE_ENTRY, PREORDER_PACKAGE, CUSTOM_POLICY.",
        "example": "DIRECT_ITEM"
      },
      "quantity": {
        "type": "integer",
        "minimum": 0,
        "description": "Whole-number quantity measured in the unit established by the item or line that embeds preorder public manage item. Accepted values enforce minimum 0.",
        "example": 1
      },
      "billableQuantity": {
        "type": "integer",
        "minimum": 0,
        "description": "Whole-number billable quantity measured in the unit established by the item or line that embeds preorder public manage item. Accepted values enforce minimum 0.",
        "example": 1
      },
      "unitPrice": {
        "type": "string",
        "pattern": "^\\d+\\.\\d{2}$",
        "description": "Decimal monetary unit price serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage item; zero is a recorded amount, not absence.",
        "example": "1.00"
      },
      "totalAmount": {
        "type": "string",
        "pattern": "^\\d+\\.\\d{2}$",
        "description": "Decimal monetary total amount serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage item; zero is a recorded amount, not absence.",
        "example": "1.00"
      },
      "specialRequest": {
        "type": "string",
        "nullable": true,
        "description": "Special request for preorder public manage item. Null means no value is recorded for this representation.",
        "example": "example"
      },
      "serviceFlags": {
        "type": "array",
        "items": {
          "type": "string",
          "example": "example"
        },
        "description": "Service flags values included as service flags in preorder public manage item.",
        "example": [
          "example"
        ]
      },
      "allergenCodes": {
        "type": "array",
        "items": {
          "type": "string",
          "example": "EXAMPLE"
        },
        "description": "Allergen codes values included as allergen codes in preorder public manage item.",
        "example": [
          "EXAMPLE"
        ]
      },
      "kitchenStatus": {
        "type": "string",
        "example": "PENDING",
        "description": "Current lifecycle status of preorder public manage item."
      },
      "modifiers": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "optionId": {
              "type": "string",
              "format": "uuid",
              "nullable": true,
              "description": "Hallify UUID identifying option associated with preorder public manage item modifiers item. Null means no value is recorded for this representation.",
              "example": "c3152e09-81b4-4a57-8893-2eca47cc44e8"
            },
            "groupName": {
              "type": "string",
              "description": "Human-readable group name for preorder public manage item modifiers item.",
              "example": "Example name"
            },
            "optionName": {
              "type": "string",
              "description": "Human-readable option name for preorder public manage item modifiers item.",
              "example": "Example name"
            },
            "priceDelta": {
              "type": "string",
              "pattern": "^\\d+\\.\\d{2}$",
              "description": "Decimal monetary price delta serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage item modifiers item; zero is a recorded amount, not absence.",
              "example": "1.00"
            },
            "allergenCodes": {
              "type": "array",
              "items": {
                "type": "string",
                "example": "EXAMPLE"
              },
              "description": "Allergen codes values included as allergen codes in preorder public manage item modifiers item.",
              "example": [
                "EXAMPLE"
              ]
            }
          },
          "required": [
            "optionId",
            "groupName",
            "optionName",
            "priceDelta",
            "allergenCodes"
          ],
          "example": {
            "optionId": null,
            "groupName": "Example name",
            "optionName": "Example name",
            "priceDelta": "1.00",
            "allergenCodes": [
              "EXAMPLE"
            ]
          }
        },
        "description": "Modifiers included as modifiers in preorder public manage item.",
        "example": [
          {
            "optionId": null,
            "groupName": "Example name",
            "optionName": "Example name",
            "priceDelta": "1.00",
            "allergenCodes": [
              "EXAMPLE"
            ]
          }
        ]
      },
      "components": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string",
              "format": "uuid",
              "description": "Hallify UUID identifying preorder public manage item components item.",
              "example": "cada95b5-09b4-4bdd-8379-2e6df6ee6198"
            },
            "operationalRole": {
              "type": "string",
              "enum": [
                "GUEST_SELECTION",
                "ASSEMBLY"
              ],
              "description": "Allowed operational role for preorder public manage item components item: GUEST_SELECTION, ASSEMBLY.",
              "example": "GUEST_SELECTION"
            },
            "name": {
              "type": "string",
              "description": "Human-readable name for preorder public manage item components item.",
              "example": "Example name"
            },
            "menuVariantId": {
              "type": "string",
              "format": "uuid",
              "nullable": true,
              "description": "Hallify UUID identifying menu variant associated with preorder public manage item components item. Null means no value is recorded for this representation.",
              "example": "94389946-e5d8-4fba-8358-e3a9c8a04b11"
            },
            "quantity": {
              "type": "integer",
              "minimum": 0,
              "description": "Whole-number quantity measured in the unit established by the item or line that embeds preorder public manage item components item. Accepted values enforce minimum 0.",
              "example": 1
            },
            "componentGroupId": {
              "type": "string",
              "description": "Opaque identifier for component group associated with preorder public manage item components item; clients must not assume UUID syntax.",
              "example": "example-id"
            },
            "componentGroupName": {
              "type": "string",
              "description": "Human-readable component group name for preorder public manage item components item.",
              "example": "Example name"
            },
            "componentChoiceId": {
              "type": "string",
              "description": "Opaque identifier for component choice associated with preorder public manage item components item; clients must not assume UUID syntax.",
              "example": "example-id"
            },
            "componentQuantity": {
              "type": "number",
              "minimum": 0,
              "description": "Fraction-capable component quantity measured in the unit established by the item or line that embeds preorder public manage item components item. Accepted values enforce minimum 0.",
              "example": 1
            },
            "componentUpcharge": {
              "type": "string",
              "pattern": "^\\d+\\.\\d{2}$",
              "description": "Decimal monetary component upcharge serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage item components item; zero is a recorded amount, not absence.",
              "example": "1.00"
            },
            "componentIsDefault": {
              "type": "boolean",
              "description": "Whether this component is selected by default when a new item configuration is created.",
              "example": true
            },
            "kitchenStatus": {
              "type": "string",
              "example": "PENDING",
              "description": "Current lifecycle status of preorder public manage item components item."
            },
            "modifiers": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "optionId": {
                    "type": "string",
                    "format": "uuid",
                    "nullable": true,
                    "description": "Hallify UUID identifying option associated with preorder public manage item components item modifiers item. Null means no value is recorded for this representation.",
                    "example": "c3152e09-81b4-4a57-8893-2eca47cc44e8"
                  },
                  "groupName": {
                    "type": "string",
                    "description": "Human-readable group name for preorder public manage item components item modifiers item.",
                    "example": "Example name"
                  },
                  "optionName": {
                    "type": "string",
                    "description": "Human-readable option name for preorder public manage item components item modifiers item.",
                    "example": "Example name"
                  },
                  "priceDelta": {
                    "type": "string",
                    "pattern": "^\\d+\\.\\d{2}$",
                    "description": "Decimal monetary price delta serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage item components item modifiers item; zero is a recorded amount, not absence.",
                    "example": "1.00"
                  },
                  "allergenCodes": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "example": "EXAMPLE"
                    },
                    "description": "Allergen codes values included as allergen codes in preorder public manage item components item modifiers item.",
                    "example": [
                      "EXAMPLE"
                    ]
                  }
                },
                "required": [
                  "optionId",
                  "groupName",
                  "optionName",
                  "priceDelta",
                  "allergenCodes"
                ],
                "example": {
                  "optionId": null,
                  "groupName": "Example name",
                  "optionName": "Example name",
                  "priceDelta": "1.00",
                  "allergenCodes": [
                    "EXAMPLE"
                  ]
                }
              },
              "description": "Modifiers included as modifiers in preorder public manage item components item.",
              "example": [
                {
                  "optionId": null,
                  "groupName": "Example name",
                  "optionName": "Example name",
                  "priceDelta": "1.00",
                  "allergenCodes": [
                    "EXAMPLE"
                  ]
                }
              ]
            }
          },
          "required": [
            "id",
            "operationalRole",
            "name",
            "menuVariantId",
            "quantity",
            "componentGroupId",
            "componentGroupName",
            "componentChoiceId",
            "componentQuantity",
            "componentUpcharge",
            "componentIsDefault",
            "kitchenStatus",
            "modifiers"
          ],
          "example": {
            "id": "cada95b5-09b4-4bdd-8379-2e6df6ee6198",
            "operationalRole": "GUEST_SELECTION",
            "name": "Example name",
            "menuVariantId": null,
            "quantity": 1,
            "componentGroupId": "example-id",
            "componentGroupName": "Example name",
            "componentChoiceId": "example-id",
            "componentQuantity": 1,
            "componentUpcharge": "1.00",
            "componentIsDefault": true,
            "kitchenStatus": "PENDING",
            "modifiers": [
              {
                "optionId": null,
                "groupName": "Example name",
                "optionName": "Example name",
                "priceDelta": "1.00",
                "allergenCodes": [
                  "EXAMPLE"
                ]
              }
            ]
          }
        },
        "description": "Components included as components in preorder public manage item.",
        "example": [
          {
            "id": "cada95b5-09b4-4bdd-8379-2e6df6ee6198",
            "operationalRole": "GUEST_SELECTION",
            "name": "Example name",
            "menuVariantId": null,
            "quantity": 1,
            "componentGroupId": "example-id",
            "componentGroupName": "Example name",
            "componentChoiceId": "example-id",
            "componentQuantity": 1,
            "componentUpcharge": "1.00",
            "componentIsDefault": true,
            "kitchenStatus": "PENDING",
            "modifiers": [
              {
                "optionId": null,
                "groupName": "Example name",
                "optionName": "Example name",
                "priceDelta": "1.00",
                "allergenCodes": [
                  "EXAMPLE"
                ]
              }
            ]
          }
        ]
      }
    },
    "required": [
      "clientLineId",
      "id",
      "menuVersionId",
      "salesChannelId",
      "menuItemId",
      "menuVariantId",
      "name",
      "rootItemStructureKind",
      "itemStructureExecutionMode",
      "effectiveExecutionMode",
      "quantity",
      "billableQuantity",
      "unitPrice",
      "totalAmount",
      "specialRequest",
      "serviceFlags",
      "allergenCodes",
      "kitchenStatus",
      "modifiers",
      "components"
    ],
    "example": {
      "clientLineId": "example-id",
      "id": "9fbff223-7cc1-4311-8644-0bd59ff2477a",
      "menuVersionId": null,
      "salesChannelId": null,
      "menuItemId": null,
      "menuVariantId": null,
      "name": "Example name",
      "rootItemStructureKind": "SINGLE_ITEM",
      "itemStructureExecutionMode": "DIRECT_ITEM",
      "effectiveExecutionMode": "DIRECT_ITEM",
      "quantity": 1,
      "billableQuantity": 1,
      "unitPrice": "1.00",
      "totalAmount": "1.00",
      "specialRequest": null,
      "serviceFlags": [
        "example"
      ],
      "allergenCodes": [
        "EXAMPLE"
      ],
      "kitchenStatus": "PENDING",
      "modifiers": [
        {
          "optionId": null,
          "groupName": "Example name",
          "optionName": "Example name",
          "priceDelta": "1.00",
          "allergenCodes": [
            "EXAMPLE"
          ]
        }
      ],
      "components": [
        {
          "id": "cada95b5-09b4-4bdd-8379-2e6df6ee6198",
          "operationalRole": "GUEST_SELECTION",
          "name": "Example name",
          "menuVariantId": null,
          "quantity": 1,
          "componentGroupId": "example-id",
          "componentGroupName": "Example name",
          "componentChoiceId": "example-id",
          "componentQuantity": 1,
          "componentUpcharge": "1.00",
          "componentIsDefault": true,
          "kitchenStatus": "PENDING",
          "modifiers": [
            {
              "optionId": null,
              "groupName": "Example name",
              "optionName": "Example name",
              "priceDelta": "1.00",
              "allergenCodes": [
                "EXAMPLE"
              ]
            }
          ]
        }
      ]
    }
  },
  "description": "Items returned in the preorder public manage collection.",
  "example": [
    {
      "clientLineId": "example-id",
      "id": "9fbff223-7cc1-4311-8644-0bd59ff2477a",
      "menuVersionId": null,
      "salesChannelId": null,
      "menuItemId": null,
      "menuVariantId": null,
      "name": "Example name",
      "rootItemStructureKind": "SINGLE_ITEM",
      "itemStructureExecutionMode": "DIRECT_ITEM",
      "effectiveExecutionMode": "DIRECT_ITEM",
      "quantity": 1,
      "billableQuantity": 1,
      "unitPrice": "1.00",
      "totalAmount": "1.00",
      "specialRequest": null,
      "serviceFlags": [
        "example"
      ],
      "allergenCodes": [
        "EXAMPLE"
      ],
      "kitchenStatus": "PENDING",
      "modifiers": [
        {
          "optionId": null,
          "groupName": "Example name",
          "optionName": "Example name",
          "priceDelta": "1.00",
          "allergenCodes": [
            "EXAMPLE"
          ]
        }
      ],
      "components": [
        {
          "id": "cada95b5-09b4-4bdd-8379-2e6df6ee6198",
          "operationalRole": "GUEST_SELECTION",
          "name": "Example name",
          "menuVariantId": null,
          "quantity": 1,
          "componentGroupId": "example-id",
          "componentGroupName": "Example name",
          "componentChoiceId": "example-id",
          "componentQuantity": 1,
          "componentUpcharge": "1.00",
          "componentIsDefault": true,
          "kitchenStatus": "PENDING",
          "modifiers": [
            {
              "optionId": null,
              "groupName": "Example name",
              "optionName": "Example name",
              "priceDelta": "1.00",
              "allergenCodes": [
                "EXAMPLE"
              ]
            }
          ]
        }
      ]
    }
  ]
}
allowedActionsRequired

Allowed actions details embedded in preorder public manage containing cancel, reschedule, and change request.

object
Full definition
{
  "type": "object",
  "properties": {
    "cancel": {
      "type": "boolean",
      "description": "Whether the caller may cancel; false means the action is unavailable in the current lifecycle and permission context.",
      "example": true
    },
    "reschedule": {
      "type": "boolean",
      "description": "Whether the caller may reschedule; false means the action is unavailable in the current lifecycle and permission context.",
      "example": true
    },
    "changeRequest": {
      "type": "boolean",
      "description": "Whether the caller may change request; false means the action is unavailable in the current lifecycle and permission context.",
      "example": true
    }
  },
  "required": [
    "cancel",
    "reschedule",
    "changeRequest"
  ],
  "description": "Allowed actions details embedded in preorder public manage containing cancel, reschedule, and change request.",
  "example": {
    "cancel": true,
    "reschedule": true,
    "changeRequest": true
  }
}
generatedAtRequired

RFC 3339 timestamp for generated at; offsets represent the same absolute instant.

string · date-time
Full definition
{
  "type": "string",
  "format": "date-time",
  "description": "RFC 3339 timestamp for generated at; offsets represent the same absolute instant.",
  "example": "2026-01-15T12:00:00.000Z"
}
Full definition
{
  "type": "object",
  "properties": {
    "fulfillmentId": {
      "type": "string",
      "format": "uuid",
      "description": "Hallify UUID identifying fulfillment associated with preorder public manage.",
      "example": "0a81282f-ea3b-40be-8ef7-4ad39e32ea88"
    },
    "orderId": {
      "type": "string",
      "format": "uuid",
      "description": "Hallify UUID identifying order associated with preorder public manage.",
      "example": "f3127edf-ce4f-4da7-8be5-81b962024e6c"
    },
    "revision": {
      "type": "integer",
      "minimum": 1,
      "description": "Monotonic optimistic-concurrency revision for preorder public manage. Accepted values enforce minimum 1.",
      "example": 1
    },
    "status": {
      "type": "string",
      "enum": [
        "DRAFT",
        "HELD",
        "CONFIRMED",
        "IN_PREPARATION",
        "READY_FOR_HANDOFF",
        "OUT_FOR_DELIVERY",
        "COMPLETED",
        "CANCELED",
        "EXPIRED"
      ],
      "description": "Current lifecycle status of preorder public manage; allowed values are DRAFT, HELD, CONFIRMED, IN_PREPARATION, READY_FOR_HANDOFF, OUT_FOR_DELIVERY, COMPLETED, CANCELED, EXPIRED.",
      "example": "DRAFT"
    },
    "serviceMode": {
      "type": "string",
      "enum": [
        "DINE_IN",
        "PICKUP",
        "DELIVERY",
        "CATERING"
      ],
      "description": "Allowed service mode for preorder public manage: DINE_IN, PICKUP, DELIVERY, CATERING.",
      "example": "DINE_IN"
    },
    "partySize": {
      "type": "integer",
      "minimum": 1,
      "description": "Whole-number party size recorded for preorder public manage. Accepted values enforce minimum 1.",
      "example": 1
    },
    "scheduledFor": {
      "type": "string",
      "format": "date-time",
      "description": "RFC 3339 timestamp for scheduled for; offsets represent the same absolute instant.",
      "example": "2026-01-15T12:00:00.000Z"
    },
    "venue": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid",
          "description": "Hallify UUID identifying preorder public manage venue.",
          "example": "fbc6db41-f1c2-4f74-862d-210bd28ee2a0"
        },
        "name": {
          "type": "string",
          "description": "Human-readable name for preorder public manage venue.",
          "example": "Example name"
        },
        "timeZone": {
          "type": "string",
          "description": "IANA time-zone identifier used to interpret venue-local dates and times for preorder public manage venue.",
          "example": "Asia/Tbilisi"
        }
      },
      "required": [
        "id",
        "name",
        "timeZone"
      ],
      "description": "Venue details embedded in preorder public manage containing id, name, and time zone.",
      "example": {
        "id": "fbc6db41-f1c2-4f74-862d-210bd28ee2a0",
        "name": "Example name",
        "timeZone": "Asia/Tbilisi"
      }
    },
    "channel": {
      "type": "object",
      "properties": {
        "publicHandle": {
          "type": "string",
          "description": "Public handle for preorder public manage channel.",
          "example": "example"
        },
        "salesChannelId": {
          "type": "string",
          "format": "uuid",
          "description": "Hallify UUID identifying sales channel associated with preorder public manage channel.",
          "example": "ff0fa725-ba44-4e7a-82bb-a15650e0a0cc"
        },
        "termsVersion": {
          "type": "string",
          "description": "Terms version for preorder public manage channel.",
          "example": "example"
        },
        "privacyVersion": {
          "type": "string",
          "description": "Privacy version for preorder public manage channel.",
          "example": "example"
        }
      },
      "required": [
        "publicHandle",
        "salesChannelId",
        "termsVersion",
        "privacyVersion"
      ],
      "description": "Channel details embedded in preorder public manage containing public handle, sales channel id, terms version, and privacy version.",
      "example": {
        "publicHandle": "example",
        "salesChannelId": "ff0fa725-ba44-4e7a-82bb-a15650e0a0cc",
        "termsVersion": "example",
        "privacyVersion": "example"
      }
    },
    "contact": {
      "type": "object",
      "nullable": true,
      "properties": {
        "contactName": {
          "type": "string",
          "description": "Human-readable contact name for preorder public manage contact.",
          "example": "Example name"
        },
        "contactPhone": {
          "type": "string",
          "nullable": true,
          "description": "Telephone number recorded for contact phone in preorder public manage contact. Null means no value is recorded for this representation.",
          "example": "+995555000000"
        },
        "contactEmail": {
          "type": "string",
          "nullable": true,
          "description": "Email address recorded for contact email in preorder public manage contact. Null means no value is recorded for this representation.",
          "format": "email",
          "example": "user@example.test"
        },
        "addressLine1": {
          "type": "string",
          "nullable": true,
          "description": "Primary street-address line for preorder public manage contact. Null means no value is recorded for this representation.",
          "example": "example"
        },
        "addressLine2": {
          "type": "string",
          "nullable": true,
          "description": "Optional secondary address details such as unit, floor, or building for preorder public manage contact. Null means no value is recorded for this representation.",
          "example": "example"
        },
        "city": {
          "type": "string",
          "nullable": true,
          "description": "City or locality recorded for the address represented by preorder public manage contact. Null means no value is recorded for this representation.",
          "example": "example"
        },
        "region": {
          "type": "string",
          "nullable": true,
          "description": "Region, state, or administrative subdivision recorded for preorder public manage contact. Null means no value is recorded for this representation.",
          "example": "example"
        },
        "postalCode": {
          "type": "string",
          "nullable": true,
          "description": "Stable postal code used to classify or address preorder public manage contact. Null means no value is recorded for this representation.",
          "example": "EXAMPLE"
        },
        "countryCode": {
          "type": "string",
          "nullable": true,
          "description": "Stable country code used to classify or address preorder public manage contact. Null means no value is recorded for this representation.",
          "example": "GE"
        },
        "administrativeDivisionId": {
          "type": "string",
          "format": "uuid",
          "nullable": true,
          "description": "Hallify UUID identifying administrative division associated with preorder public manage contact. Null means no value is recorded for this representation.",
          "example": "c8efbc76-614d-4a79-8f15-db6d48283d46"
        },
        "localityId": {
          "type": "string",
          "format": "uuid",
          "nullable": true,
          "description": "Hallify UUID identifying locality associated with preorder public manage contact. Null means no value is recorded for this representation.",
          "example": "1bfa5864-39f3-4647-8093-42aea5d9d046"
        },
        "postalCodeId": {
          "type": "string",
          "format": "uuid",
          "nullable": true,
          "description": "Hallify UUID identifying postal code associated with preorder public manage contact. Null means no value is recorded for this representation.",
          "example": "7424d59b-d459-4e7b-8cbc-7f5222274f26"
        },
        "latitude": {
          "type": "number",
          "nullable": true,
          "description": "Fraction-capable numeric latitude recorded for preorder public manage contact. Null means no value is recorded for this representation.",
          "example": 41.7151
        },
        "longitude": {
          "type": "number",
          "nullable": true,
          "description": "Fraction-capable numeric longitude recorded for preorder public manage contact. Null means no value is recorded for this representation.",
          "example": 44.8271
        },
        "coordinateSource": {
          "type": "string",
          "nullable": true,
          "enum": [
            "STAFF",
            "EXTERNAL_CLIENT",
            "GEOREFERENCE_CENTROID",
            null
          ],
          "description": "Allowed coordinate source for preorder public manage contact: STAFF, EXTERNAL_CLIENT, GEOREFERENCE_CENTROID. Null means no value is recorded for this representation.",
          "example": "STAFF"
        },
        "coordinateAccuracy": {
          "type": "integer",
          "minimum": 0,
          "maximum": 10,
          "nullable": true,
          "description": "Whole-number coordinate accuracy recorded for preorder public manage contact. Accepted values enforce minimum 0 and maximum 10. Null means no value is recorded for this representation.",
          "example": 0
        },
        "deliveryInstructions": {
          "type": "string",
          "nullable": true,
          "description": "Delivery instructions for preorder public manage contact. Null means no value is recorded for this representation.",
          "example": "example"
        }
      },
      "required": [
        "contactName",
        "contactPhone",
        "contactEmail",
        "addressLine1",
        "addressLine2",
        "city",
        "region",
        "postalCode",
        "countryCode",
        "administrativeDivisionId",
        "localityId",
        "postalCodeId",
        "latitude",
        "longitude",
        "coordinateSource",
        "coordinateAccuracy",
        "deliveryInstructions"
      ],
      "description": "Contact details embedded in preorder public manage containing contact name, contact phone, contact email, address line1, address line2, and city. Null means no value is recorded for this representation.",
      "example": {
        "contactName": "Example name",
        "contactPhone": null,
        "contactEmail": null,
        "addressLine1": null,
        "addressLine2": null,
        "city": null,
        "region": null,
        "postalCode": null,
        "countryCode": null,
        "administrativeDivisionId": null,
        "localityId": null,
        "postalCodeId": null,
        "latitude": null,
        "longitude": null,
        "coordinateSource": null,
        "coordinateAccuracy": null,
        "deliveryInstructions": null
      }
    },
    "deposit": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "NOT_REQUIRED",
            "REQUIRED",
            "PARTIALLY_PAID",
            "PAID",
            "OVERDUE"
          ],
          "description": "Current lifecycle status of preorder public manage deposit; allowed values are NOT_REQUIRED, REQUIRED, PARTIALLY_PAID, PAID, OVERDUE.",
          "example": "NOT_REQUIRED"
        },
        "requiredAmount": {
          "type": "string",
          "pattern": "^\\d+\\.\\d{2}$",
          "description": "Decimal monetary required amount serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage deposit; zero is a recorded amount, not absence.",
          "example": "1.00"
        },
        "paidAmount": {
          "type": "string",
          "pattern": "^\\d+\\.\\d{2}$",
          "description": "Decimal monetary paid amount serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage deposit; zero is a recorded amount, not absence.",
          "example": "1.00"
        },
        "dueAt": {
          "type": "string",
          "format": "date-time",
          "nullable": true,
          "description": "RFC 3339 timestamp for due at; offsets represent the same absolute instant. Null means no value is recorded for this representation.",
          "example": "2026-12-31T18:00:00.000Z"
        }
      },
      "required": [
        "status",
        "requiredAmount",
        "paidAmount",
        "dueAt"
      ],
      "description": "Deposit details embedded in preorder public manage containing status, required amount, paid amount, and due at.",
      "example": {
        "status": "NOT_REQUIRED",
        "requiredAmount": "1.00",
        "paidAmount": "1.00",
        "dueAt": null
      }
    },
    "delivery": {
      "type": "object",
      "properties": {
        "zoneId": {
          "type": "string",
          "format": "uuid",
          "nullable": true,
          "description": "Hallify UUID identifying zone associated with preorder public manage delivery. Null means no value is recorded for this representation.",
          "example": "f6864a47-6a06-4534-8879-1bfd5a7ed49b"
        },
        "feeAmount": {
          "type": "string",
          "pattern": "^\\d+\\.\\d{2}$",
          "description": "Decimal monetary fee amount serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage delivery; zero is a recorded amount, not absence.",
          "example": "1.00"
        }
      },
      "required": [
        "zoneId",
        "feeAmount"
      ],
      "description": "Delivery details embedded in preorder public manage containing zone id and fee amount.",
      "example": {
        "zoneId": null,
        "feeAmount": "1.00"
      }
    },
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "clientLineId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 80,
            "description": "Opaque identifier for client line associated with preorder public manage item; clients must not assume UUID syntax. Accepted values enforce minimum length 1 and maximum length 80.",
            "example": "example-id"
          },
          "id": {
            "type": "string",
            "format": "uuid",
            "description": "Hallify UUID identifying preorder public manage item.",
            "example": "9fbff223-7cc1-4311-8644-0bd59ff2477a"
          },
          "menuVersionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "description": "Hallify UUID identifying menu version associated with preorder public manage item. Null means no value is recorded for this representation.",
            "example": "490ccfcb-caa6-472e-836a-a8416e8cee92"
          },
          "salesChannelId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "description": "Hallify UUID identifying sales channel associated with preorder public manage item. Null means no value is recorded for this representation.",
            "example": "ff0fa725-ba44-4e7a-82bb-a15650e0a0cc"
          },
          "menuItemId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "description": "Hallify UUID identifying menu item associated with preorder public manage item. Null means no value is recorded for this representation.",
            "example": "16ee6f36-c0cb-4311-85e8-2d2b3edea0fd"
          },
          "menuVariantId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "description": "Hallify UUID identifying menu variant associated with preorder public manage item. Null means no value is recorded for this representation.",
            "example": "94389946-e5d8-4fba-8358-e3a9c8a04b11"
          },
          "name": {
            "type": "string",
            "description": "Human-readable name for preorder public manage item.",
            "example": "Example name"
          },
          "rootItemStructureKind": {
            "type": "string",
            "enum": [
              "SINGLE_ITEM",
              "SIZED_PORTIONED",
              "COMBO_MEAL_DEAL",
              "FIXED_PRICE_COURSE_MENU",
              "BUILD_YOUR_OWN",
              "BUNDLE_KIT",
              "MEASURED",
              "OPEN_PRICE",
              "CATERING_PREORDER",
              "CUSTOM"
            ],
            "description": "Allowed root item structure kind for preorder public manage item: SINGLE_ITEM, SIZED_PORTIONED, COMBO_MEAL_DEAL, FIXED_PRICE_COURSE_MENU, BUILD_YOUR_OWN, BUNDLE_KIT, MEASURED, OPEN_PRICE, CATERING_PREORDER, CUSTOM.",
            "example": "SINGLE_ITEM"
          },
          "itemStructureExecutionMode": {
            "type": "string",
            "enum": [
              "DIRECT_ITEM",
              "SELLABLE_VERSION",
              "COMPONENT_GROUPS",
              "COURSE_SEQUENCE",
              "GUIDED_STAGES",
              "BUNDLE_SECTIONS",
              "MEASURED_QUANTITY",
              "OPEN_PRICE_ENTRY",
              "PREORDER_PACKAGE",
              "CUSTOM_POLICY"
            ],
            "description": "Allowed item structure execution mode for preorder public manage item: DIRECT_ITEM, SELLABLE_VERSION, COMPONENT_GROUPS, COURSE_SEQUENCE, GUIDED_STAGES, BUNDLE_SECTIONS, MEASURED_QUANTITY, OPEN_PRICE_ENTRY, PREORDER_PACKAGE, CUSTOM_POLICY.",
            "example": "DIRECT_ITEM"
          },
          "effectiveExecutionMode": {
            "type": "string",
            "enum": [
              "DIRECT_ITEM",
              "SELLABLE_VERSION",
              "COMPONENT_GROUPS",
              "COURSE_SEQUENCE",
              "GUIDED_STAGES",
              "BUNDLE_SECTIONS",
              "MEASURED_QUANTITY",
              "OPEN_PRICE_ENTRY",
              "PREORDER_PACKAGE",
              "CUSTOM_POLICY"
            ],
            "description": "Allowed effective execution mode for preorder public manage item: DIRECT_ITEM, SELLABLE_VERSION, COMPONENT_GROUPS, COURSE_SEQUENCE, GUIDED_STAGES, BUNDLE_SECTIONS, MEASURED_QUANTITY, OPEN_PRICE_ENTRY, PREORDER_PACKAGE, CUSTOM_POLICY.",
            "example": "DIRECT_ITEM"
          },
          "quantity": {
            "type": "integer",
            "minimum": 0,
            "description": "Whole-number quantity measured in the unit established by the item or line that embeds preorder public manage item. Accepted values enforce minimum 0.",
            "example": 1
          },
          "billableQuantity": {
            "type": "integer",
            "minimum": 0,
            "description": "Whole-number billable quantity measured in the unit established by the item or line that embeds preorder public manage item. Accepted values enforce minimum 0.",
            "example": 1
          },
          "unitPrice": {
            "type": "string",
            "pattern": "^\\d+\\.\\d{2}$",
            "description": "Decimal monetary unit price serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage item; zero is a recorded amount, not absence.",
            "example": "1.00"
          },
          "totalAmount": {
            "type": "string",
            "pattern": "^\\d+\\.\\d{2}$",
            "description": "Decimal monetary total amount serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage item; zero is a recorded amount, not absence.",
            "example": "1.00"
          },
          "specialRequest": {
            "type": "string",
            "nullable": true,
            "description": "Special request for preorder public manage item. Null means no value is recorded for this representation.",
            "example": "example"
          },
          "serviceFlags": {
            "type": "array",
            "items": {
              "type": "string",
              "example": "example"
            },
            "description": "Service flags values included as service flags in preorder public manage item.",
            "example": [
              "example"
            ]
          },
          "allergenCodes": {
            "type": "array",
            "items": {
              "type": "string",
              "example": "EXAMPLE"
            },
            "description": "Allergen codes values included as allergen codes in preorder public manage item.",
            "example": [
              "EXAMPLE"
            ]
          },
          "kitchenStatus": {
            "type": "string",
            "example": "PENDING",
            "description": "Current lifecycle status of preorder public manage item."
          },
          "modifiers": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "optionId": {
                  "type": "string",
                  "format": "uuid",
                  "nullable": true,
                  "description": "Hallify UUID identifying option associated with preorder public manage item modifiers item. Null means no value is recorded for this representation.",
                  "example": "c3152e09-81b4-4a57-8893-2eca47cc44e8"
                },
                "groupName": {
                  "type": "string",
                  "description": "Human-readable group name for preorder public manage item modifiers item.",
                  "example": "Example name"
                },
                "optionName": {
                  "type": "string",
                  "description": "Human-readable option name for preorder public manage item modifiers item.",
                  "example": "Example name"
                },
                "priceDelta": {
                  "type": "string",
                  "pattern": "^\\d+\\.\\d{2}$",
                  "description": "Decimal monetary price delta serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage item modifiers item; zero is a recorded amount, not absence.",
                  "example": "1.00"
                },
                "allergenCodes": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "example": "EXAMPLE"
                  },
                  "description": "Allergen codes values included as allergen codes in preorder public manage item modifiers item.",
                  "example": [
                    "EXAMPLE"
                  ]
                }
              },
              "required": [
                "optionId",
                "groupName",
                "optionName",
                "priceDelta",
                "allergenCodes"
              ],
              "example": {
                "optionId": null,
                "groupName": "Example name",
                "optionName": "Example name",
                "priceDelta": "1.00",
                "allergenCodes": [
                  "EXAMPLE"
                ]
              }
            },
            "description": "Modifiers included as modifiers in preorder public manage item.",
            "example": [
              {
                "optionId": null,
                "groupName": "Example name",
                "optionName": "Example name",
                "priceDelta": "1.00",
                "allergenCodes": [
                  "EXAMPLE"
                ]
              }
            ]
          },
          "components": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "Hallify UUID identifying preorder public manage item components item.",
                  "example": "cada95b5-09b4-4bdd-8379-2e6df6ee6198"
                },
                "operationalRole": {
                  "type": "string",
                  "enum": [
                    "GUEST_SELECTION",
                    "ASSEMBLY"
                  ],
                  "description": "Allowed operational role for preorder public manage item components item: GUEST_SELECTION, ASSEMBLY.",
                  "example": "GUEST_SELECTION"
                },
                "name": {
                  "type": "string",
                  "description": "Human-readable name for preorder public manage item components item.",
                  "example": "Example name"
                },
                "menuVariantId": {
                  "type": "string",
                  "format": "uuid",
                  "nullable": true,
                  "description": "Hallify UUID identifying menu variant associated with preorder public manage item components item. Null means no value is recorded for this representation.",
                  "example": "94389946-e5d8-4fba-8358-e3a9c8a04b11"
                },
                "quantity": {
                  "type": "integer",
                  "minimum": 0,
                  "description": "Whole-number quantity measured in the unit established by the item or line that embeds preorder public manage item components item. Accepted values enforce minimum 0.",
                  "example": 1
                },
                "componentGroupId": {
                  "type": "string",
                  "description": "Opaque identifier for component group associated with preorder public manage item components item; clients must not assume UUID syntax.",
                  "example": "example-id"
                },
                "componentGroupName": {
                  "type": "string",
                  "description": "Human-readable component group name for preorder public manage item components item.",
                  "example": "Example name"
                },
                "componentChoiceId": {
                  "type": "string",
                  "description": "Opaque identifier for component choice associated with preorder public manage item components item; clients must not assume UUID syntax.",
                  "example": "example-id"
                },
                "componentQuantity": {
                  "type": "number",
                  "minimum": 0,
                  "description": "Fraction-capable component quantity measured in the unit established by the item or line that embeds preorder public manage item components item. Accepted values enforce minimum 0.",
                  "example": 1
                },
                "componentUpcharge": {
                  "type": "string",
                  "pattern": "^\\d+\\.\\d{2}$",
                  "description": "Decimal monetary component upcharge serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage item components item; zero is a recorded amount, not absence.",
                  "example": "1.00"
                },
                "componentIsDefault": {
                  "type": "boolean",
                  "description": "Whether this component is selected by default when a new item configuration is created.",
                  "example": true
                },
                "kitchenStatus": {
                  "type": "string",
                  "example": "PENDING",
                  "description": "Current lifecycle status of preorder public manage item components item."
                },
                "modifiers": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "optionId": {
                        "type": "string",
                        "format": "uuid",
                        "nullable": true,
                        "description": "Hallify UUID identifying option associated with preorder public manage item components item modifiers item. Null means no value is recorded for this representation.",
                        "example": "c3152e09-81b4-4a57-8893-2eca47cc44e8"
                      },
                      "groupName": {
                        "type": "string",
                        "description": "Human-readable group name for preorder public manage item components item modifiers item.",
                        "example": "Example name"
                      },
                      "optionName": {
                        "type": "string",
                        "description": "Human-readable option name for preorder public manage item components item modifiers item.",
                        "example": "Example name"
                      },
                      "priceDelta": {
                        "type": "string",
                        "pattern": "^\\d+\\.\\d{2}$",
                        "description": "Decimal monetary price delta serialized as a string in the currency identified by the financial document or policy that embeds preorder public manage item components item modifiers item; zero is a recorded amount, not absence.",
                        "example": "1.00"
                      },
                      "allergenCodes": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "example": "EXAMPLE"
                        },
                        "description": "Allergen codes values included as allergen codes in preorder public manage item components item modifiers item.",
                        "example": [
                          "EXAMPLE"
                        ]
                      }
                    },
                    "required": [
                      "optionId",
                      "groupName",
                      "optionName",
                      "priceDelta",
                      "allergenCodes"
                    ],
                    "example": {
                      "optionId": null,
                      "groupName": "Example name",
                      "optionName": "Example name",
                      "priceDelta": "1.00",
                      "allergenCodes": [
                        "EXAMPLE"
                      ]
                    }
                  },
                  "description": "Modifiers included as modifiers in preorder public manage item components item.",
                  "example": [
                    {
                      "optionId": null,
                      "groupName": "Example name",
                      "optionName": "Example name",
                      "priceDelta": "1.00",
                      "allergenCodes": [
                        "EXAMPLE"
                      ]
                    }
                  ]
                }
              },
              "required": [
                "id",
                "operationalRole",
                "name",
                "menuVariantId",
                "quantity",
                "componentGroupId",
                "componentGroupName",
                "componentChoiceId",
                "componentQuantity",
                "componentUpcharge",
                "componentIsDefault",
                "kitchenStatus",
                "modifiers"
              ],
              "example": {
                "id": "cada95b5-09b4-4bdd-8379-2e6df6ee6198",
                "operationalRole": "GUEST_SELECTION",
                "name": "Example name",
                "menuVariantId": null,
                "quantity": 1,
                "componentGroupId": "example-id",
                "componentGroupName": "Example name",
                "componentChoiceId": "example-id",
                "componentQuantity": 1,
                "componentUpcharge": "1.00",
                "componentIsDefault": true,
                "kitchenStatus": "PENDING",
                "modifiers": [
                  {
                    "optionId": null,
                    "groupName": "Example name",
                    "optionName": "Example name",
                    "priceDelta": "1.00",
                    "allergenCodes": [
                      "EXAMPLE"
                    ]
                  }
                ]
              }
            },
            "description": "Components included as components in preorder public manage item.",
            "example": [
              {
                "id": "cada95b5-09b4-4bdd-8379-2e6df6ee6198",
                "operationalRole": "GUEST_SELECTION",
                "name": "Example name",
                "menuVariantId": null,
                "quantity": 1,
                "componentGroupId": "example-id",
                "componentGroupName": "Example name",
                "componentChoiceId": "example-id",
                "componentQuantity": 1,
                "componentUpcharge": "1.00",
                "componentIsDefault": true,
                "kitchenStatus": "PENDING",
                "modifiers": [
                  {
                    "optionId": null,
                    "groupName": "Example name",
                    "optionName": "Example name",
                    "priceDelta": "1.00",
                    "allergenCodes": [
                      "EXAMPLE"
                    ]
                  }
                ]
              }
            ]
          }
        },
        "required": [
          "clientLineId",
          "id",
          "menuVersionId",
          "salesChannelId",
          "menuItemId",
          "menuVariantId",
          "name",
          "rootItemStructureKind",
          "itemStructureExecutionMode",
          "effectiveExecutionMode",
          "quantity",
          "billableQuantity",
          "unitPrice",
          "totalAmount",
          "specialRequest",
          "serviceFlags",
          "allergenCodes",
          "kitchenStatus",
          "modifiers",
          "components"
        ],
        "example": {
          "clientLineId": "example-id",
          "id": "9fbff223-7cc1-4311-8644-0bd59ff2477a",
          "menuVersionId": null,
          "salesChannelId": null,
          "menuItemId": null,
          "menuVariantId": null,
          "name": "Example name",
          "rootItemStructureKind": "SINGLE_ITEM",
          "itemStructureExecutionMode": "DIRECT_ITEM",
          "effectiveExecutionMode": "DIRECT_ITEM",
          "quantity": 1,
          "billableQuantity": 1,
          "unitPrice": "1.00",
          "totalAmount": "1.00",
          "specialRequest": null,
          "serviceFlags": [
            "example"
          ],
          "allergenCodes": [
            "EXAMPLE"
          ],
          "kitchenStatus": "PENDING",
          "modifiers": [
            {
              "optionId": null,
              "groupName": "Example name",
              "optionName": "Example name",
              "priceDelta": "1.00",
              "allergenCodes": [
                "EXAMPLE"
              ]
            }
          ],
          "components": [
            {
              "id": "cada95b5-09b4-4bdd-8379-2e6df6ee6198",
              "operationalRole": "GUEST_SELECTION",
              "name": "Example name",
              "menuVariantId": null,
              "quantity": 1,
              "componentGroupId": "example-id",
              "componentGroupName": "Example name",
              "componentChoiceId": "example-id",
              "componentQuantity": 1,
              "componentUpcharge": "1.00",
              "componentIsDefault": true,
              "kitchenStatus": "PENDING",
              "modifiers": [
                {
                  "optionId": null,
                  "groupName": "Example name",
                  "optionName": "Example name",
                  "priceDelta": "1.00",
                  "allergenCodes": [
                    "EXAMPLE"
                  ]
                }
              ]
            }
          ]
        }
      },
      "description": "Items returned in the preorder public manage collection.",
      "example": [
        {
          "clientLineId": "example-id",
          "id": "9fbff223-7cc1-4311-8644-0bd59ff2477a",
          "menuVersionId": null,
          "salesChannelId": null,
          "menuItemId": null,
          "menuVariantId": null,
          "name": "Example name",
          "rootItemStructureKind": "SINGLE_ITEM",
          "itemStructureExecutionMode": "DIRECT_ITEM",
          "effectiveExecutionMode": "DIRECT_ITEM",
          "quantity": 1,
          "billableQuantity": 1,
          "unitPrice": "1.00",
          "totalAmount": "1.00",
          "specialRequest": null,
          "serviceFlags": [
            "example"
          ],
          "allergenCodes": [
            "EXAMPLE"
          ],
          "kitchenStatus": "PENDING",
          "modifiers": [
            {
              "optionId": null,
              "groupName": "Example name",
              "optionName": "Example name",
              "priceDelta": "1.00",
              "allergenCodes": [
                "EXAMPLE"
              ]
            }
          ],
          "components": [
            {
              "id": "cada95b5-09b4-4bdd-8379-2e6df6ee6198",
              "operationalRole": "GUEST_SELECTION",
              "name": "Example name",
              "menuVariantId": null,
              "quantity": 1,
              "componentGroupId": "example-id",
              "componentGroupName": "Example name",
              "componentChoiceId": "example-id",
              "componentQuantity": 1,
              "componentUpcharge": "1.00",
              "componentIsDefault": true,
              "kitchenStatus": "PENDING",
              "modifiers": [
                {
                  "optionId": null,
                  "groupName": "Example name",
                  "optionName": "Example name",
                  "priceDelta": "1.00",
                  "allergenCodes": [
                    "EXAMPLE"
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    "allowedActions": {
      "type": "object",
      "properties": {
        "cancel": {
          "type": "boolean",
          "description": "Whether the caller may cancel; false means the action is unavailable in the current lifecycle and permission context.",
          "example": true
        },
        "reschedule": {
          "type": "boolean",
          "description": "Whether the caller may reschedule; false means the action is unavailable in the current lifecycle and permission context.",
          "example": true
        },
        "changeRequest": {
          "type": "boolean",
          "description": "Whether the caller may change request; false means the action is unavailable in the current lifecycle and permission context.",
          "example": true
        }
      },
      "required": [
        "cancel",
        "reschedule",
        "changeRequest"
      ],
      "description": "Allowed actions details embedded in preorder public manage containing cancel, reschedule, and change request.",
      "example": {
        "cancel": true,
        "reschedule": true,
        "changeRequest": true
      }
    },
    "generatedAt": {
      "type": "string",
      "format": "date-time",
      "description": "RFC 3339 timestamp for generated at; offsets represent the same absolute instant.",
      "example": "2026-01-15T12:00:00.000Z"
    }
  },
  "required": [
    "fulfillmentId",
    "orderId",
    "revision",
    "status",
    "serviceMode",
    "partySize",
    "scheduledFor",
    "venue",
    "channel",
    "contact",
    "deposit",
    "delivery",
    "items",
    "allowedActions",
    "generatedAt"
  ],
  "description": "Returns the guest-visible preorder projection and current revision.",
  "example": {
    "fulfillmentId": "0a81282f-ea3b-40be-8ef7-4ad39e32ea88",
    "orderId": "f3127edf-ce4f-4da7-8be5-81b962024e6c",
    "revision": 1,
    "status": "DRAFT",
    "serviceMode": "DINE_IN",
    "partySize": 1,
    "scheduledFor": "2026-01-15T12:00:00.000Z",
    "venue": {
      "id": "fbc6db41-f1c2-4f74-862d-210bd28ee2a0",
      "name": "Example name",
      "timeZone": "Asia/Tbilisi"
    },
    "channel": {
      "publicHandle": "example",
      "salesChannelId": "ff0fa725-ba44-4e7a-82bb-a15650e0a0cc",
      "termsVersion": "example",
      "privacyVersion": "example"
    },
    "contact": null,
    "deposit": {
      "status": "NOT_REQUIRED",
      "requiredAmount": "1.00",
      "paidAmount": "1.00",
      "dueAt": null
    },
    "delivery": {
      "zoneId": null,
      "feeAmount": "1.00"
    },
    "items": [
      {
        "clientLineId": "example-id",
        "id": "9fbff223-7cc1-4311-8644-0bd59ff2477a",
        "menuVersionId": null,
        "salesChannelId": null,
        "menuItemId": null,
        "menuVariantId": null,
        "name": "Example name",
        "rootItemStructureKind": "SINGLE_ITEM",
        "itemStructureExecutionMode": "DIRECT_ITEM",
        "effectiveExecutionMode": "DIRECT_ITEM",
        "quantity": 1,
        "billableQuantity": 1,
        "unitPrice": "1.00",
        "totalAmount": "1.00",
        "specialRequest": null,
        "serviceFlags": [
          "example"
        ],
        "allergenCodes": [
          "EXAMPLE"
        ],
        "kitchenStatus": "PENDING",
        "modifiers": [
          {
            "optionId": null,
            "groupName": "Example name",
            "optionName": "Example name",
            "priceDelta": "1.00",
            "allergenCodes": [
              "EXAMPLE"
            ]
          }
        ],
        "components": [
          {
            "id": "cada95b5-09b4-4bdd-8379-2e6df6ee6198",
            "operationalRole": "GUEST_SELECTION",
            "name": "Example name",
            "menuVariantId": null,
            "quantity": 1,
            "componentGroupId": "example-id",
            "componentGroupName": "Example name",
            "componentChoiceId": "example-id",
            "componentQuantity": 1,
            "componentUpcharge": "1.00",
            "componentIsDefault": true,
            "kitchenStatus": "PENDING",
            "modifiers": [
              {
                "optionId": null,
                "groupName": "Example name",
                "optionName": "Example name",
                "priceDelta": "1.00",
                "allergenCodes": [
                  "EXAMPLE"
                ]
              }
            ]
          }
        ]
      }
    ],
    "allowedActions": {
      "cancel": true,
      "reschedule": true,
      "changeRequest": true
    },
    "generatedAt": "2026-01-15T12:00:00.000Z"
  }
}
TranslatedErrorDto

Stable error envelope emitted by the global HTTP exception boundary. Domain-specific machine data, when present, is nested under details.

statusCodeRequired

HTTP status code repeated from the response.

integer
Full definition
{
  "type": "integer",
  "description": "HTTP status code repeated from the response.",
  "example": 400
}
errorRequired

Translation key for the HTTP category, such as errors:http.conflict. The specific cause is identified by code and translationKey.

string
Full definition
{
  "type": "string",
  "description": "Translation key for the HTTP category, such as errors:http.conflict. The specific cause is identified by code and translationKey.",
  "example": "errors.request.invalid"
}
codeRequired

Stable machine-readable domain code, or an HTTP_* fallback when no domain code is provided. Branch on this field and the HTTP status; localized wording never controls retries or business decisions.

string
Full definition
{
  "type": "string",
  "example": "HTTP_BAD_REQUEST",
  "description": "Stable machine-readable domain code, or an HTTP_* fallback when no domain code is provided. Branch on this field and the HTTP status; localized wording never controls retries or business decisions."
}
messageRequired

Translation key, identical to translationKey. The API does not return localized display text. Resolve the key and translationValues in the consuming application.

string
Full definition
{
  "type": "string",
  "example": "errors:http.badRequest",
  "description": "Translation key, identical to translationKey. The API does not return localized display text. Resolve the key and translationValues in the consuming application."
}
translationKeyRequired

Canonical translation key, identical to message. Status-specific errors:http.* keys cover unspecified failures. Public keys and EN/RU explanations are listed in Developers; unknown keys require a localized client fallback.

string
Full definition
{
  "type": "string",
  "example": "errors:http.badRequest",
  "description": "Canonical translation key, identical to message. Status-specific errors:http.* keys cover unspecified failures. Public keys and EN/RU explanations are listed in Developers; unknown keys require a localized client fallback."
}
translationValuesOptional

Optional scalar values for placeholders in the translation. Treat values as data, escape them when rendering, and never use them as translation options.

object
Full definition
{
  "type": "object",
  "additionalProperties": {
    "oneOf": [
      {
        "type": "string",
        "example": "example"
      },
      {
        "type": "number",
        "example": 0
      },
      {
        "type": "boolean",
        "example": true
      }
    ],
    "example": "example"
  },
  "description": "Optional scalar values for placeholders in the translation. Treat values as data, escape them when rendering, and never use them as translation options.",
  "example": {
    "exampleKey": "example"
  }
}
validationErrorsOptional

Field validation failures with translation keys and stable validator codes. Submitted values and raw validator text are not included.

array
Full definition
{
  "description": "Field validation failures with translation keys and stable validator codes. Submitted values and raw validator text are not included.",
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/ValidationErrorDto"
  },
  "example": [
    {
      "field": "email",
      "translationKey": "validation:isEmail",
      "code": "isEmail",
      "message": "validation:isEmail"
    }
  ]
}
detailsOptional

Optional domain-specific blocker or validation details

oneOf
Full definition
{
  "description": "Optional domain-specific blocker or validation details",
  "oneOf": [
    {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/JsonValue"
      },
      "example": [
        "example"
      ]
    },
    {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/JsonValue"
      },
      "example": {
        "exampleKey": "example"
      }
    }
  ],
  "example": [
    "example"
  ]
}
Full definition
{
  "type": "object",
  "properties": {
    "statusCode": {
      "type": "integer",
      "description": "HTTP status code repeated from the response.",
      "example": 400
    },
    "error": {
      "type": "string",
      "description": "Translation key for the HTTP category, such as errors:http.conflict. The specific cause is identified by code and translationKey.",
      "example": "errors.request.invalid"
    },
    "code": {
      "type": "string",
      "example": "HTTP_BAD_REQUEST",
      "description": "Stable machine-readable domain code, or an HTTP_* fallback when no domain code is provided. Branch on this field and the HTTP status; localized wording never controls retries or business decisions."
    },
    "message": {
      "type": "string",
      "example": "errors:http.badRequest",
      "description": "Translation key, identical to translationKey. The API does not return localized display text. Resolve the key and translationValues in the consuming application."
    },
    "translationKey": {
      "type": "string",
      "example": "errors:http.badRequest",
      "description": "Canonical translation key, identical to message. Status-specific errors:http.* keys cover unspecified failures. Public keys and EN/RU explanations are listed in Developers; unknown keys require a localized client fallback."
    },
    "translationValues": {
      "type": "object",
      "additionalProperties": {
        "oneOf": [
          {
            "type": "string",
            "example": "example"
          },
          {
            "type": "number",
            "example": 0
          },
          {
            "type": "boolean",
            "example": true
          }
        ],
        "example": "example"
      },
      "description": "Optional scalar values for placeholders in the translation. Treat values as data, escape them when rendering, and never use them as translation options.",
      "example": {
        "exampleKey": "example"
      }
    },
    "validationErrors": {
      "description": "Field validation failures with translation keys and stable validator codes. Submitted values and raw validator text are not included.",
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ValidationErrorDto"
      },
      "example": [
        {
          "field": "email",
          "translationKey": "validation:isEmail",
          "code": "isEmail",
          "message": "validation:isEmail"
        }
      ]
    },
    "details": {
      "description": "Optional domain-specific blocker or validation details",
      "oneOf": [
        {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/JsonValue"
          },
          "example": [
            "example"
          ]
        },
        {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/JsonValue"
          },
          "example": {
            "exampleKey": "example"
          }
        }
      ],
      "example": [
        "example"
      ]
    }
  },
  "required": [
    "statusCode",
    "error",
    "code",
    "message",
    "translationKey"
  ],
  "description": "Stable error envelope emitted by the global HTTP exception boundary. Domain-specific machine data, when present, is nested under details.",
  "example": {
    "statusCode": 400,
    "error": "errors:http.badRequest",
    "code": "HTTP_BAD_REQUEST",
    "message": "errors:http.badRequest",
    "translationKey": "errors:http.badRequest"
  }
}
ValidationErrorDto

Field validation failure with a field path, stable validator code and a translation key. Human-readable text belongs to the consuming application.

fieldRequired

Public field path. Nested properties and array indices are separated by dots.

string
Full definition
{
  "type": "string",
  "example": "email",
  "description": "Public field path. Nested properties and array indices are separated by dots."
}
translationKeyRequired

Translation key for this validator, identical to message. Resolve it using a client dictionary; see the public Developers error catalog.

string
Full definition
{
  "type": "string",
  "example": "validation:isEmail",
  "description": "Translation key for this validator, identical to message. Resolve it using a client dictionary; see the public Developers error catalog."
}
codeRequired

Stable validator identifier for this field failure. Custom validators may define additional identifiers.

string
Full definition
{
  "type": "string",
  "example": "isEmail",
  "description": "Stable validator identifier for this field failure. Custom validators may define additional identifiers."
}
messageRequired

Translation key describing this field validation failure, identical to translationKey. Submitted values and validator prose are not included.

string
Full definition
{
  "type": "string",
  "example": "validation:isEmail",
  "description": "Translation key describing this field validation failure, identical to translationKey. Submitted values and validator prose are not included."
}
translationValuesOptional

Optional scalar values for placeholders in the translation. Treat values as data, escape them when rendering, and never use them as translation options.

object
Full definition
{
  "type": "object",
  "additionalProperties": {
    "oneOf": [
      {
        "type": "string",
        "example": "example"
      },
      {
        "type": "number",
        "example": 0
      },
      {
        "type": "boolean",
        "example": true
      }
    ],
    "example": "example"
  },
  "description": "Optional scalar values for placeholders in the translation. Treat values as data, escape them when rendering, and never use them as translation options.",
  "example": {
    "exampleKey": "example"
  }
}
Full definition
{
  "type": "object",
  "properties": {
    "field": {
      "type": "string",
      "example": "email",
      "description": "Public field path. Nested properties and array indices are separated by dots."
    },
    "translationKey": {
      "type": "string",
      "example": "validation:isEmail",
      "description": "Translation key for this validator, identical to message. Resolve it using a client dictionary; see the public Developers error catalog."
    },
    "code": {
      "type": "string",
      "example": "isEmail",
      "description": "Stable validator identifier for this field failure. Custom validators may define additional identifiers."
    },
    "message": {
      "type": "string",
      "example": "validation:isEmail",
      "description": "Translation key describing this field validation failure, identical to translationKey. Submitted values and validator prose are not included."
    },
    "translationValues": {
      "type": "object",
      "additionalProperties": {
        "oneOf": [
          {
            "type": "string",
            "example": "example"
          },
          {
            "type": "number",
            "example": 0
          },
          {
            "type": "boolean",
            "example": true
          }
        ],
        "example": "example"
      },
      "description": "Optional scalar values for placeholders in the translation. Treat values as data, escape them when rendering, and never use them as translation options.",
      "example": {
        "exampleKey": "example"
      }
    }
  },
  "required": [
    "field",
    "translationKey",
    "code",
    "message"
  ],
  "description": "Field validation failure with a field path, stable validator code and a translation key. Human-readable text belongs to the consuming application.",
  "example": {
    "field": "email",
    "translationKey": "validation:isEmail",
    "code": "isEmail",
    "message": "validation:isEmail"
  }
}
JsonValue

Recursively JSON-safe value used only where the owning contract intentionally allows free-form structured data.

Full definition
{
  "oneOf": [
    {
      "type": "string",
      "nullable": true,
      "example": "example"
    },
    {
      "type": "number",
      "example": 0
    },
    {
      "type": "boolean",
      "example": true
    },
    {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/JsonValue"
      },
      "example": [
        "example"
      ]
    },
    {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/JsonValue"
      },
      "example": {
        "exampleKey": "example"
      }
    }
  ],
  "description": "Recursively JSON-safe value used only where the owning contract intentionally allows free-form structured data.",
  "example": "example"
}

Hallify uses essential cookies and optional analytics.

Essential cookies keep sign-in, locale, and theme preferences working. Analytics is off until you choose to allow it.