API reference
Every operation, generated from the platform's own operation registry.
This page is generated from the same registry the gateway authorizes against. The scope, entitlement, idempotency and sandbox facts below are not a description of the implementation — they are the implementation's own metadata.
Account
GET /v1/me/membership
Beta Sandbox supported
Whether this customer holds an active Ryde One membership. Call it before offering to transact, so the agent can explain the requirement rather than hit a 403 mid-sentence.
| Operation | get_membership_status |
|---|---|
| Scope | profile.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | get_membership_status |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/me/membership' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
Food
GET /v1/food/merchants
Beta Sandbox supported
Find open restaurants, grocery stores and shops near a point.
| Operation | search_restaurants |
|---|---|
| Scope | food.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | search_restaurants |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/food/merchants' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
POST /v1/food/orders/quote
Beta Sandbox supported
Price a basket exactly as checkout would: items, fees, taxes, any member discount, and the total. Returns the quote_id place_food_order requires.
| Operation | quote_food_order |
|---|---|
| Scope | food.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | quote_food_order |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/food/orders/quote' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
POST /v1/food/orders
Beta Ryde One required Sandbox supported
Place the order the customer confirmed, from a quote_id they were shown.
| Operation | place_food_order |
|---|---|
| Scope | food.order |
| Entitlement | Ryde One required |
| Idempotency | Required |
| MCP tool | place_food_order |
Requires a fresh quote the customer was shown, plus an Idempotency-Key.
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/food/orders' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H "Idempotency-Key: $(uuidgen)" \
-H 'Content-Type: application/json' \
-d '{ … }'
GET /v1/food/orders/{order_id}
Beta Sandbox supported
Live state of one order, including courier progress. Deliberately NOT membership-gated: an order that exists stays trackable whatever happens to the membership.
| Operation | get_food_order |
|---|---|
| Scope | food.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | get_food_order |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/food/orders/$order_id' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
GET /v1/food/orders
Beta Sandbox supported
The customer's own order history, newest first.
| Operation | list_food_orders |
|---|---|
| Scope | food.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | list_food_orders |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/food/orders' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
POST /v1/food/orders/{order_id}/cancel
Beta Sandbox supported
Cancel an order, where its current state still allows it. Never membership-gated — getting OUT of a transaction must not require an entitlement.
| Operation | cancel_food_order |
|---|---|
| Scope | food.read |
| Entitlement | None |
| Idempotency | Supported |
| MCP tool | cancel_food_order |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/food/orders/$order_id/cancel' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
Rides
GET /v1/rides/products
Beta Sandbox supported
The vehicle tiers that can be requested, with each tier's base fare.
| Operation | search_ride_options |
|---|---|
| Scope | rides.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | search_ride_options |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/rides/products' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
POST /v1/rides/quote
Beta Sandbox supported
Road distance, driving time and the final fare per vehicle tier, tax included. Returns the quote_id request_ride requires.
| Operation | quote_ride |
|---|---|
| Scope | rides.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | quote_ride |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/rides/quote' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
POST /v1/rides
Beta Ryde One required Sandbox supported
Request the ride the customer confirmed, from a quote_id they were shown.
| Operation | request_ride |
|---|---|
| Scope | rides.request |
| Entitlement | Ryde One required |
| Idempotency | Required |
| MCP tool | request_ride |
Requires a fresh quote the customer was shown, plus an Idempotency-Key.
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/rides' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H "Idempotency-Key: $(uuidgen)" \
-H 'Content-Type: application/json' \
-d '{ … }'
GET /v1/rides/{ride_id}
Beta Sandbox supported
Live state of one ride: dispatch progress, the assigned driver and vehicle, and the pickup ETA. Never membership-gated — a ride in progress stays trackable.
| Operation | get_ride |
|---|---|
| Scope | rides.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | get_ride |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/rides/$ride_id' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
GET /v1/rides
Beta Sandbox supported
The customer's own ride history, newest first.
| Operation | list_rides |
|---|---|
| Scope | rides.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | list_rides |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/rides' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
POST /v1/rides/{ride_id}/cancel
Beta Sandbox supported
Cancel a ride that has not started. Never membership-gated, for the same reason as cancelling an order.
| Operation | cancel_ride |
|---|---|
| Scope | rides.read |
| Entitlement | None |
| Idempotency | Supported |
| MCP tool | cancel_ride |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/rides/$ride_id/cancel' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
Delivery
POST /v1/deliveries/quote
Beta Sandbox supported
Price a courier run between two points. Runs the same pricing path the request does, so the quote is the charge.
| Operation | quote_delivery |
|---|---|
| Scope | delivery.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | quote_delivery |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/deliveries/quote' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
POST /v1/deliveries
Beta Ryde One required Sandbox supported
Dispatch a courier to move a package, from a quote_id the customer was shown.
| Operation | request_delivery |
|---|---|
| Scope | delivery.request |
| Entitlement | Ryde One required |
| Idempotency | Required |
| MCP tool | request_delivery |
Requires a fresh quote the customer was shown, plus an Idempotency-Key.
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/deliveries' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H "Idempotency-Key: $(uuidgen)" \
-H 'Content-Type: application/json' \
-d '{ … }'
GET /v1/deliveries/{delivery_id}
Beta Sandbox supported
Live state of one delivery, including courier progress and proof of delivery once collected.
| Operation | get_delivery |
|---|---|
| Scope | delivery.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | get_delivery |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/deliveries/$delivery_id' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
Carrier
GET /v1/coverage
Beta Carrier agreement required Sandbox supported
Ask whether Ryde delivers to a postcode or a point, and at which service levels.
| Operation | check_coverage |
|---|---|
| Scope | coverage.read |
| Entitlement | Carrier agreement required |
| Idempotency | Not required |
| MCP tool | check_coverage |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/coverage' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
GET /v1/rates
Beta Carrier agreement required Sandbox supported
Price one parcel to one address from your contracted rate card, per service level. Creates nothing.
| Operation | quote_rates |
|---|---|
| Scope | coverage.read |
| Entitlement | Carrier agreement required |
| Idempotency | Not required |
| MCP tool | quote_rates |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/rates' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
POST /v1/shipments
Beta Carrier agreement required Sandbox supported
Hand Ryde one parcel to deliver. Returns its Ryde tracking number.
| Operation | create_shipment |
|---|---|
| Scope | shipments.create |
| Entitlement | Carrier agreement required |
| Idempotency | Supported |
| MCP tool | create_shipment |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/shipments' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
POST /v1/shipments/batch
Beta Carrier agreement required Sandbox supported
Hand Ryde a manifest of up to 500 parcels in one request. Every row reports created, duplicate or rejected with a reason.
| Operation | create_shipments_batch |
|---|---|
| Scope | shipments.create |
| Entitlement | Carrier agreement required |
| Idempotency | Supported |
| MCP tool | create_shipments_batch |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/shipments/batch' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
GET /v1/shipments/{tracking_number}
Beta Carrier agreement required Sandbox supported
The current state of one parcel, with its scan history and proof of delivery once delivered.
| Operation | get_shipment |
|---|---|
| Scope | shipments.read |
| Entitlement | Carrier agreement required |
| Idempotency | Not required |
| MCP tool | get_shipment |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/shipments/$tracking_number' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
GET /v1/shipments
Beta Carrier agreement required Sandbox supported
Your parcels, newest first, filterable by status and date.
| Operation | list_shipments |
|---|---|
| Scope | shipments.read |
| Entitlement | Carrier agreement required |
| Idempotency | Not required |
| MCP tool | list_shipments |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/shipments' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
POST /v1/shipments/{tracking_number}/cancel
Beta Carrier agreement required Sandbox supported
Cancel a parcel you have given Ryde, at any point before it is delivered or returned.
| Operation | cancel_shipment |
|---|---|
| Scope | shipments.manage |
| Entitlement | Carrier agreement required |
| Idempotency | Supported |
| MCP tool | cancel_shipment |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/shipments/$tracking_number/cancel' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
GET /v1/shipments/{tracking_number}/events
Beta Carrier agreement required Sandbox supported
Every recorded event for one parcel, oldest first: where it was scanned, when, and why an attempt failed.
| Operation | list_shipment_events |
|---|---|
| Scope | shipments.read |
| Entitlement | Carrier agreement required |
| Idempotency | Not required |
| MCP tool | list_shipment_events |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/shipments/$tracking_number/events' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
GET /v1/hubs
Beta Carrier agreement required Sandbox supported
The depots your parcels are collected from.
| Operation | list_hubs |
|---|---|
| Scope | coverage.read |
| Entitlement | Carrier agreement required |
| Idempotency | Not required |
| MCP tool | list_hubs |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/hubs' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
Services
GET /v1/services/providers
Beta Sandbox supported
Find providers who travel to the customer, with their live availability. Availability is derived per request and is never cached by the client.
| Operation | search_service_providers |
|---|---|
| Scope | services.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | search_service_providers |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/services/providers' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
GET /v1/services/providers/{provider_id}/slots
Beta Sandbox supported
Open appointment slots on a date, for a job of a given duration. A long job is only offered a start whose consecutive slots are all free.
| Operation | get_provider_availability |
|---|---|
| Scope | services.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | get_provider_availability |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/services/providers/$provider_id/slots' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
POST /v1/services/bookings/quote
Beta Sandbox supported
Price a service booking before committing to a slot.
| Operation | quote_service |
|---|---|
| Scope | services.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | quote_service |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/services/bookings/quote' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
POST /v1/services/bookings
Beta Ryde One required Sandbox supported
Book a provider, optionally into a specific slot. Slot contention is settled by the platform: a losing booking is refused, never double-booked.
| Operation | book_service |
|---|---|
| Scope | services.book |
| Entitlement | Ryde One required |
| Idempotency | Required |
| MCP tool | book_service |
Requires a fresh quote the customer was shown, plus an Idempotency-Key.
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/services/bookings' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H "Idempotency-Key: $(uuidgen)" \
-H 'Content-Type: application/json' \
-d '{ … }'
GET /v1/services/bookings/{booking_id}
Beta Sandbox supported
Live state of one booking, through arrival, start and completion.
| Operation | get_service_booking |
|---|---|
| Scope | services.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | get_service_booking |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/services/bookings/$booking_id' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
Tasks
GET /v1/tasks/types
Beta Sandbox supported
The task types this market can actually execute, with the evidence each one collects. Only types Ryde can staff are listed.
| Operation | list_task_types |
|---|---|
| Scope | tasks.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | list_task_types |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/tasks/types' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
POST /v1/tasks/quote
Beta Sandbox supported
Price a task and confirm a qualified provider could be found for it before committing.
| Operation | quote_task |
|---|---|
| Scope | tasks.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | quote_task |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/tasks/quote' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
POST /v1/tasks
Beta Ryde One required Sandbox supported
Dispatch real-world work with structured requirements and evidence rules.
| Operation | create_task |
|---|---|
| Scope | tasks.create |
| Entitlement | Ryde One required |
| Idempotency | Required |
| MCP tool | create_task |
Requires a fresh quote the customer was shown, plus an Idempotency-Key.
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/tasks' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H "Idempotency-Key: $(uuidgen)" \
-H 'Content-Type: application/json' \
-d '{ … }'
GET /v1/tasks/{task_id}
Beta Sandbox supported
Task state, the assigned provider, and the evidence collected so far.
| Operation | get_task |
|---|---|
| Scope | tasks.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | get_task |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/tasks/$task_id' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
GET /v1/tasks/{task_id}/evidence
Beta Sandbox supported
The evidence collected against a task: photos with their content hashes, capture GPS and device timestamps, and any checklist answers.
| Operation | get_task_evidence |
|---|---|
| Scope | tasks.read |
| Entitlement | None |
| Idempotency | Not required |
| MCP tool | get_task_evidence |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/tasks/$task_id/evidence' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
POST /v1/tasks/{task_id}/cancel
Beta Sandbox supported
Cancel a task that has not started.
| Operation | cancel_task |
|---|---|
| Scope | tasks.read |
| Entitlement | None |
| Idempotency | Supported |
| MCP tool | cancel_task |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/tasks/$task_id/cancel' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
Business
GET /v1/business/orders
Beta Business agreement required Sandbox supported
List the store's orders, newest first. Filter by status or fulfillment, or ask only for active work.
| Operation | list_business_orders |
|---|---|
| Scope | orders.read |
| Entitlement | Business agreement required |
| Idempotency | Not required |
| MCP tool | list_business_orders |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/business/orders' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
GET /v1/business/orders/{order_id}
Beta Business agreement required Sandbox supported
Read one of the store's orders in full, including its line items and status history.
| Operation | get_business_order |
|---|---|
| Scope | orders.read |
| Entitlement | Business agreement required |
| Idempotency | Not required |
| MCP tool | get_business_order |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/business/orders/$order_id' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
POST /v1/business/orders/{order_id}/accept
Beta Business agreement required Sandbox supported
Accept an incoming order. Refused with 402 if a card or wallet order has not been paid yet.
| Operation | accept_business_order |
|---|---|
| Scope | orders.manage |
| Entitlement | Business agreement required |
| Idempotency | Supported |
| MCP tool | accept_business_order |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/orders/$order_id/accept' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
POST /v1/business/orders/{order_id}/reject
Beta Business agreement required Sandbox supported
Reject an order. A paid order is refunded to the customer's Ryde wallet — or, when the store collected it on its own Stripe account, to the customer's card by the store — and any booked slot is released.
| Operation | reject_business_order |
|---|---|
| Scope | orders.manage |
| Entitlement | Business agreement required |
| Idempotency | Supported |
| MCP tool | reject_business_order |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/orders/$order_id/reject' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
POST /v1/business/orders/{order_id}/preparing
Beta Business agreement required Sandbox supported
Mark an accepted order as being prepared, so the customer's tracking reflects the kitchen.
| Operation | start_business_order_prep |
|---|---|
| Scope | orders.manage |
| Entitlement | Business agreement required |
| Idempotency | Supported |
| MCP tool | start_business_order_prep |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/orders/$order_id/preparing' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
POST /v1/business/orders/{order_id}/ready
Beta Business agreement required Sandbox supported
Mark an order ready for collection. For a delivery order this is what dispatches a Ryde courier.
| Operation | mark_business_order_ready |
|---|---|
| Scope | orders.manage |
| Entitlement | Business agreement required |
| Idempotency | Supported |
| MCP tool | mark_business_order_ready |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/orders/$order_id/ready' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
POST /v1/business/orders/{order_id}/complete
Beta Business agreement required Sandbox supported
Complete a pickup or dine-in order. Refused with 409 while a table check is still open.
| Operation | complete_business_order |
|---|---|
| Scope | orders.manage |
| Entitlement | Business agreement required |
| Idempotency | Supported |
| MCP tool | complete_business_order |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/orders/$order_id/complete' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
GET /v1/business/catalog/items
Beta Business agreement required Sandbox supported
List the store's catalogue items with their prices, modifiers and availability.
| Operation | list_catalog_items |
|---|---|
| Scope | menu.read |
| Entitlement | Business agreement required |
| Idempotency | Not required |
| MCP tool | list_catalog_items |
Example request
curl -s 'https://sandbox-api.ryde.us.com/v1/business/catalog/items' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN"
POST /v1/business/catalog/items
Beta Business agreement required Sandbox supported
Create a catalogue item. It appears immediately in the store's POS and on its Ryde storefront.
| Operation | create_catalog_item |
|---|---|
| Scope | menu.manage |
| Entitlement | Business agreement required |
| Idempotency | Supported |
| MCP tool | create_catalog_item |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/catalog/items' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
PUT /v1/business/catalog/items/{item_id}
Beta Business agreement required Sandbox supported
Update a catalogue item's name, description, price, category or modifier groups.
| Operation | update_catalog_item |
|---|---|
| Scope | menu.manage |
| Entitlement | Business agreement required |
| Idempotency | Supported |
| MCP tool | update_catalog_item |
Example request
curl -sX PUT 'https://sandbox-api.ryde.us.com/v1/business/catalog/items/$item_id' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
PUT /v1/business/catalog/items/{item_id}/availability
Beta Business agreement required Sandbox supported
Take an item off sale or put it back on, without deleting it. The reversible way to 86 something.
| Operation | set_catalog_item_availability |
|---|---|
| Scope | menu.manage |
| Entitlement | Business agreement required |
| Idempotency | Supported |
| MCP tool | set_catalog_item_availability |
Example request
curl -sX PUT 'https://sandbox-api.ryde.us.com/v1/business/catalog/items/$item_id/availability' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
DELETE /v1/business/catalog/items/{item_id}
Beta Business agreement required Sandbox supported
Remove a catalogue item. There is no undo through the API — to take something off sale temporarily, set its availability instead.
| Operation | delete_catalog_item |
|---|---|
| Scope | menu.manage |
| Entitlement | Business agreement required |
| Idempotency | Supported |
| MCP tool | delete_catalog_item |
Example request
curl -sX DELETE 'https://sandbox-api.ryde.us.com/v1/business/catalog/items/$item_id' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'
POST /v1/business/catalog/items/batch
Beta Business agreement required Sandbox supported
Create many catalogue items at once, with their categories. Creates only — it never reprices an existing item.
| Operation | import_catalog_items |
|---|---|
| Scope | menu.manage |
| Entitlement | Business agreement required |
| Idempotency | Supported |
| MCP tool | import_catalog_items |
Example request
curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/catalog/items/batch' \
-H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d '{ … }'