Skip to content
All bounties

Talabat

Open
talabat.com

Talabat delivery workflows for browsing restaurants, building carts, checking out, and tracking post-order support in UAE cities.

Reward
₩500,000
Tier
Platinum
Auth
Browser
APIs
6 APIs
Working now
none
Posted
2026-07-04
Kind
New service
  1. Open
  2. Claimed
  3. In review
  4. Finalizing
  5. Syncing
  6. Merged
  7. Paid

Scope

This provider targets Talabat's customer-facing delivery surface, including location-gated restaurant search, menu details, cart construction, checkout review, and live order support. It is an unofficial integration surface with strong location, session, and fulfillment constraints, so implementations should expect dynamic pricing, delivery-area filtering, and order-state polling.

Expected APIs

6
search-restaurantsSearch restaurantsReadMedium

Find restaurants available for a delivery address using cuisine, rating, fee, and ETA filters. This is the entry point for location-gated browsing and returns the restaurants a customer can actually order from.

  • addressobjectRequiredDelivery address or geocoded location used to determine serviceability.Example {"lat":25.2048,"lng":55.2708}
  • cuisinestringOptionalCuisine or category filter to narrow search results.Example burgers
  • sortstringOptionalOrdering mode such as delivery time, fee, rating, or popularity.Example delivery_time
  • max_delivery_feenumberOptionalUpper bound for the delivery fee filter.Example 15
restaurantsdelivery_feeestimated_delivery_timeratingis_available
  • Returns only restaurants serviceable for the supplied address, not generic catalog entries.
  • Exposes pricing and ETA indicators that change with the selected location and sort order.
  • Preserves availability flags so closed or out-of-zone restaurants can be excluded.

Auth required for this API.

get-menu-and-promotionsGet menu and promotionsReadMedium

Load menu sections, item modifiers, allergy notes, minimum order constraints, and active promotions for a chosen restaurant. The response should reflect the live menu state for the customer's location and time.

  • restaurant_idstringRequiredRestaurant identifier selected from search results.Example talabat-restaurant-10291
  • addressobjectOptionalOptional delivery context used to confirm item availability and delivery restrictions.Example {"lat":25.2048,"lng":55.2708}
  • localestringOptionalLocale used for menu text and promotion labels.Example en-AE
menu_sectionsitemsmodifiersallergy_notesminimum_orderpromotions
  • Returns menu sections and item-level options rather than a flattened item list.
  • Includes modifier groups and allergy or ingredient notes where the restaurant provides them.
  • Shows active promotions and minimum-order constraints tied to the selected outlet.

Auth required for this API.

build-cartBuild cartWriteMedium

Assemble a pending order with item quantities, substitutions, special instructions, voucher code, and delivery address. The operation should calculate a provisional basket before checkout approval.

  • restaurant_idstringRequiredRestaurant the basket is being built against.Example talabat-restaurant-10291
  • itemsarrayRequiredSelected menu items with quantities and chosen modifiers.Example [{"itemId":"item-1","qty":2,"modifiers":["no-onion"]}]
  • voucher_codestringOptionalOptional promo or voucher code to apply to the basket.Example SAVE10
  • delivery_addressobjectRequiredFinal delivery address used for basket validation.Example {"label":"Home","lat":25.2048,"lng":55.2708}
  • notesstringOptionalSpecial preparation or delivery instructions.Example Call on arrival
cart_idsubtotaldiscountdelivery_feetaxtotalestimated_delivery_time
  • Validates item availability and quantities before creating the pending basket.
  • Applies voucher or substitution logic to the returned totals when the promotion is accepted.
  • Returns a cart identifier and a price breakdown suitable for checkout review.

Auth required for this API.

review-checkoutReview checkoutReadMedium

Summarize the final payable amount, payment method, ETA, and cancellation terms before the user commits the order. This is the last read-only step before submission.

  • cart_idstringRequiredBasket identifier returned by the cart step.Example cart-88421
  • payment_method_idstringOptionalSelected payment instrument to validate against the total.Example card-1
cart_idtotalpayment_methodsetacancellation_termsfees
  • Shows the final price after fees, taxes, discounts, and any service charges are applied.
  • Includes payment-method constraints and visible cancellation terms before submission.
  • Keeps the response tied to the live basket rather than a stale catalog estimate.

Auth required for this API.

place-orderPlace orderWriteHard

Submit the confirmed basket only after explicit user approval. The request should create the order and return the canonical order reference and initial fulfillment state.

  • cart_idstringRequiredApproved basket to submit.Example cart-88421
  • approval_tokenstringRequiredExplicit user approval marker for the final purchase step.Example user-approved-2026-07-06T09:00:00Z
order_idorder_statuspayment_statusetarestaurant_name
  • Refuses to submit without an explicit approval token or equivalent confirmation signal.
  • Returns a stable order identifier and the initial order status from the live fulfillment flow.
  • Does not duplicate the order if the same approved request is retried idempotently.

Auth required for this API.

track-order-supportTrack order and supportReadHard

Follow the post-order lifecycle, including courier status, issue flags, refund progress, and receipt retrieval. The surface should reflect fulfillment updates and support actions for the placed order.

  • order_idstringRequiredOrder identifier returned after checkout submission.Example order-551233
  • include_receiptbooleanOptionalWhether to include invoice or receipt data in the response.Example true
order_statusrider_statusissue_flagsrefund_statusreceipt_url
  • Surfaces rider or fulfillment progress rather than only a static order state.
  • Includes issue, refund, or support indicators when the order has a problem.
  • Returns receipt or invoice data when the order is complete and receipts are available.

Auth required for this API.

Suggested surface. Propose changes in your submission if the upstream differs.

Acceptance criteria

  • Service scaffolded from the public @apifuse/provider-sdk
  • All listed APIs implemented with Zod/Standard Schema input & output
  • Each API declares exactly one of healthCheck or healthCheckUnsupported
  • Real upstream fixture data included where applicable
  • bun run check and bun run test pass
  • Auth, credential and env-secret behavior documented. No real secrets committed

Evidence to submit

  • Workspace repository and main commit link
  • SDK version/tag and the create command used
  • API list with input/output summaries
  • healthCheck coverage table per API
  • bun run check and bun run test output

Ready to claim?

Submit a claim. Your workspace is prepared after confirmation.