openapi: 3.0.3 info: title: Slice Public API description: |- The Slice Public API is a RESTful HTTP API for technology partners integrating with the Slice network of independent local pizzerias. It exposes pizzeria-oriented resources — shops and orders — so partners can discover Slice shops and create, retrieve, update, and cancel orders against them. This is the **v2** surface of the Slice Public API, documented on Slice's Stoplight developer portal at https://developer.slicelife.com (project `slice-public-api`, spec node `/API-V2.yaml`). The paths, methods, operation summaries, and component-schema names in this description were reconstructed from Slice's live Stoplight project node tree, which is publicly enumerable. The raw OpenAPI document body and per-property schema definitions on developer.slicelife.com are gated behind workspace authentication, so individual schema properties are intentionally NOT enumerated here — the `Order` and `Error` schemas are declared as objects without invented fields. The server URL is also not published publicly and is therefore omitted rather than fabricated; partners obtain it together with credentials from Slice. Access requires an API key issued by Slice; partners request credentials from api-support@slicelife.com. version: 'v2' contact: name: Slice API Support email: api-support@slicelife.com url: https://developer.slicelife.com/ x-generated-from: stoplight-node-tree x-spec-node: /API-V2.yaml x-spec-node-stable-id: 5cpnln20yilx3 x-properties-source: |- Operation paths/methods/summaries are confirmed-real from the live Stoplight project node tree. Schema property internals were auth-gated and are not enumerated to avoid fabrication. x-last-validated: '2026-06-03' externalDocs: description: Slice Public API documentation (Stoplight) url: https://developer.slicelife.com/ tags: - name: Shops description: Discover pizzerias (shops) in the Slice network. - name: Orders description: Create, retrieve, update, and cancel orders against a Slice shop. security: - ApiKeyAuth: [] paths: /shops: get: operationId: getShops summary: Get Shops description: |- Returns shops (independent pizzerias) available in the Slice network. Confirmed operation from the Stoplight node `/API-V2.yaml/paths/~1shops/get`. tags: - Shops responses: '200': description: A collection of Slice shops. '401': $ref: '#/components/responses/Unauthorized' default: $ref: '#/components/responses/Error' /orders: post: operationId: createOrder summary: Create Order description: |- Creates a new order against a Slice shop. Confirmed operation from the Stoplight node `/API-V2.yaml/paths/~1orders/post`. tags: - Orders requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Order' responses: '201': description: The created order. content: application/json: schema: $ref: '#/components/schemas/Order' '400': $ref: '#/components/responses/Error' '401': $ref: '#/components/responses/Unauthorized' default: $ref: '#/components/responses/Error' /orders/{orderID}: parameters: - $ref: '#/components/parameters/OrderID' get: operationId: getOrder summary: Get Order description: |- Retrieves a single order by its identifier. Confirmed operation from `/API-V2.yaml/paths/~1orders~1{orderID}/get`. tags: - Orders responses: '200': description: The requested order. content: application/json: schema: $ref: '#/components/schemas/Order' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/Error' default: $ref: '#/components/responses/Error' put: operationId: updateOrder summary: Update Order description: |- Updates an existing order by its identifier. Confirmed operation from `/API-V2.yaml/paths/~1orders~1{orderID}/put`. tags: - Orders requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Order' responses: '200': description: The updated order. content: application/json: schema: $ref: '#/components/schemas/Order' '400': $ref: '#/components/responses/Error' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/Error' default: $ref: '#/components/responses/Error' delete: operationId: deleteOrder summary: Delete Order description: |- Cancels/deletes an existing order by its identifier. Confirmed operation from `/API-V2.yaml/paths/~1orders~1{orderID}/delete`. tags: - Orders responses: '204': description: The order was deleted. '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/Error' default: $ref: '#/components/responses/Error' components: securitySchemes: ApiKeyAuth: type: apiKey in: header name: Authorization description: |- API key issued by Slice to approved technology partners. Request credentials from api-support@slicelife.com. The exact header name is assigned with the credentials; `Authorization` is used here as the documented placeholder. parameters: OrderID: name: orderID in: path required: true description: The unique identifier of the order. schema: type: string responses: Unauthorized: description: Authentication failed or API key is missing/invalid. content: application/json: schema: $ref: '#/components/schemas/Error' Error: description: An error response. content: application/json: schema: $ref: '#/components/schemas/Error' schemas: Order: type: object title: Order description: |- A Slice order. Confirmed component schema from the Stoplight node `/API-V2.yaml/components/schemas/Order`. Individual order properties are defined in the auth-gated source document and are deliberately not enumerated here to avoid fabrication. additionalProperties: true Error: type: object title: Error description: |- A Slice API error payload. Corresponds to the shared `error` model (`/models/error.yaml`) referenced by the spec. Property internals are auth-gated and not enumerated here to avoid fabrication. additionalProperties: true