Getir · AsyncAPI Specification
Getir Food Webhooks
Version
View Spec
View on GitHub
CompanyFood DeliveryGrocery DeliveryOn-Demand DeliveryLogisticsRestaurantsPoint of SaleMarketplaceTurkeyPartner IntegrationAsyncAPIWebhooksEvents
AsyncAPI Specification
generated: '2026-07-31'
method: searched
source: >-
https://developers.getir.com/food/documentation/giris — "Integration Structure" section,
served by https://food-pos-api-gateway.getirapi.com/v1/documentations/contents?title=6&language=en
docs: https://developers.getir.com/food/documentation/giris
spec_type: Webhooks
asyncapi_published: false
asyncapi_note: >-
Getir publishes no AsyncAPI document for this event surface. Probed /asyncapi.json,
/asyncapi.yaml and the docs host — all miss. This artifact captures the webhook catalog
exactly as Getir documents it; no AsyncAPI has been authored on their behalf.
description: >-
GetirFood pushes order events to the integrating POS company rather than requiring polling.
The partner registers two callback URLs — one for new orders, one for order cancellations —
plus a single x-api-key value that Getir sends on both. All order information is delivered by
HTTP POST to the partner-hosted URLs.
delivery:
direction: outbound (Getir -> partner)
transport: HTTPS
method: POST
registration: >-
Two separate URLs are supplied to Getir by the partner (new order, order cancellation),
together with one x-api-key value that must be identical for both.
authentication:
header: x-api-key
shared_across_endpoints: true
content_type: application/json
events:
- name: New Order
event: food_order.new
direction: outbound
method: POST
url: "partner-provided (documentation example: https://yourdomain.com/newOrder)"
description: Fired when a new food order is placed for a restaurant affiliated with the partner company.
payload_fields:
- id
- status
- isScheduled
- confirmationId
- client (id, name, contactPhoneNumber, clientPhoneNumber, deliveryAddress, location)
- courier (id, status, name, location)
- products[] (id, imageURL, wideImageURL, count, product, name{tr,en}, price, optionPrice,
priceWithOption, totalPrice, totalOptionPrice, totalPriceWithOption, optionCategories,
displayInfo, note, discountedPriceWithOption, totalDiscountedPriceWithOption)
- clientNote
- doNotKnock
- dropOffAtDoor
- totalPrice
- totalDiscountedPrice
- checkoutDate
- deliveryType
- isEcoFriendly
- paymentMethod
- paymentMethodText{en,tr}
- restaurant (id, name, brand)
- isQueued
- name: Cancel Order
event: food_order.cancelled
direction: outbound
method: POST
url: "partner-provided (documentation example: https://yourdomain.com/cancelOrder)"
description: Fired when a previously delivered order event is cancelled.
payload_fields:
- id
- status
- isScheduled
- confirmationId
- client (id, name, contactPhoneNumber, clientPhoneNumber, deliveryAddress, location)
- courier (id, status, name, location)
- products[] (same shape as the new-order payload)
- clientNote
- doNotKnock
- dropOffAtDoor
- totalPrice
- totalDiscountedPrice
- checkoutDate
- verifyDate
- cancelDate
- cancelNote
- cancelReason (id, messages{tr,en}, cancelSource)
- deliveryType
- isEcoFriendly
- paymentMethod
- paymentMethodText{en,tr}
- restaurant (id, name, brand)
- isQueued
fallback_polling:
description: >-
Documented backup path when the partner cannot process a pushed order. Getir explicitly
asks integrators not to poll /unapproved continuously.
operations:
- operationId: postFoodordersPeriodicUnapproved
path: /food-orders/periodic/unapproved
note: Excluded from the rate limiter, but constant polling is discouraged by the docs.
- operationId: postFoodordersActive
path: /food-orders/active
- operationId: postFoodordersPeriodicCancelled
path: /food-orders/periodic/cancelled
failure_handling:
documented_error: >-
Registry code 72 FoodOrderWebHookError ("food order webhook error", HTTP 400) is the
published error raised on webhook failure.
retry_policy: not published by Getir
detail: errors/getir-error-codes.yml
x-evidence:
fetched: '2026-07-31'
docs_api: https://food-pos-api-gateway.getirapi.com/v1/documentations/contents?title=6&language=en
http_status: 200