grubhub · Schema
Grubhub Order Webhook Payload
Webhook payload for a new order placed through Grubhub.
Properties
| Name | Type | Description |
|---|---|---|
| event_type | string | The type of event that triggered this webhook. |
| order_uuid | string | The unique identifier for the order. |
| merchant_id | string | The Grubhub merchant identifier. |
| placed_at | string | When the order was placed. |
| fulfillment_type | string | The type of fulfillment requested. |
| customer | object | Customer details for the order. |
| items | array | Items included in the order. |
| totals | object | Financial totals for the order. |
| delivery_address | object | Delivery address for the order. |
| special_instructions | string | Special instructions from the customer. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://developer.grubhub.com/schemas/grubhub/orderwebhookpayload.json",
"title": "Grubhub Order Webhook Payload",
"description": "Webhook payload for a new order placed through Grubhub.",
"type": "object",
"properties": {
"event_type": {
"type": "string",
"description": "The type of event that triggered this webhook.",
"const": "NEW_ORDER",
"example": "STANDARD"
},
"order_uuid": {
"type": "string",
"format": "uuid",
"description": "The unique identifier for the order.",
"example": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"merchant_id": {
"type": "string",
"description": "The Grubhub merchant identifier.",
"example": "ghm-1234567890"
},
"placed_at": {
"type": "string",
"format": "date-time",
"description": "When the order was placed.",
"example": "2026-06-02T18:30:00Z"
},
"fulfillment_type": {
"type": "string",
"description": "The type of fulfillment requested.",
"enum": [
"DELIVERY",
"PICKUP"
],
"example": "DELIVERY"
},
"customer": {
"type": "object",
"description": "Customer details for the order.",
"properties": {
"first_name": {
"type": "string",
"description": "Customer's first name."
},
"last_name": {
"type": "string",
"description": "Customer's last name."
},
"phone": {
"type": "string",
"description": "Customer's phone number."
}
}
},
"items": {
"type": "array",
"description": "Items included in the order.",
"items": {
"type": "object",
"properties": {
"item_id": {
"type": "string",
"description": "The menu item identifier."
},
"name": {
"type": "string",
"description": "The item name."
},
"quantity": {
"type": "integer",
"description": "The quantity ordered."
},
"price": {
"type": "number",
"format": "double",
"description": "The unit price."
},
"modifiers": {
"type": "array",
"description": "Applied modifiers.",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Modifier name."
},
"price": {
"type": "number",
"format": "double",
"description": "Modifier price."
}
}
}
}
}
}
},
"totals": {
"type": "object",
"description": "Financial totals for the order.",
"properties": {
"subtotal": {
"type": "number",
"format": "double",
"description": "Subtotal before taxes and fees."
},
"tax": {
"type": "number",
"format": "double",
"description": "Tax amount."
},
"tip": {
"type": "number",
"format": "double",
"description": "Tip amount."
},
"total": {
"type": "number",
"format": "double",
"description": "Total order amount."
}
}
},
"delivery_address": {
"type": "object",
"description": "Delivery address for the order.",
"properties": {
"street_address": {
"type": "string",
"description": "Street address."
},
"city": {
"type": "string",
"description": "City name."
},
"state": {
"type": "string",
"description": "State abbreviation."
},
"zip": {
"type": "string",
"description": "ZIP code."
}
}
},
"special_instructions": {
"type": "string",
"description": "Special instructions from the customer.",
"example": "Leave at the front desk."
}
}
}