200
Voosh API Documentation (1.0.0)
Voosh aggregates data from multiple platforms, including DoorDash, Uber Eats, ezCater, Grubhub, and others, to provide a unified system that enables restaurant owners to analyze their listed restaurants across various platforms and locations.
This API documentation outlines the available endpoints that facilitate seamless access to key operational data. These APIs empower restaurants to efficiently manage operations and make data-driven decisions.
Once you become an official Voosh partner, you will receive a unique API key (partner token) for secure authentication and access to live data. For partnership inquiries, please contact us.
Restaurant Details API
The Restaurant Details API enables partners to retrieve all restaurant listings associated with Voosh, including delivery platform mappings (DoorDash, Uber Eats, Grubhub) and store-level availability, grouped by client. There is also support to retrieve specific client restaurant details.
This API provides:
All Restaurant Listings – Fetches restaurant details for all clients, including listing IDs, restaurant names, and platform-specific store names.
Platform Availability Flags – Indicates if each restaurant is listed on DoorDash, Uber Eats, or Grubhub.
Client-Based Grouping – Organizes listings under each
clientId
andclientName
for easier management.
Reviews API
The Reviews API enables partners to access, manage, and respond to customer reviews for common clients across multiple platforms. This API provides:
Reviews Data – Retrieve detailed reviews submitted by customers across integrated platforms, including ratings, comments, and timestamps.
Manual Reply to Reviews – Submit replies manually to individual customer reviews directly through the API.
This API helps partners streamline customer engagement, maintain brand reputation, and ensure timely responses to feedback across platforms.
Request
This endpoint allows you to retrieve reviews associated with specific listings within a defined date range. You can specify the number of reviews to return, as well as pagination options.
POST
{{base-url}}/v1/partnerApi/review-manager/reviews?limit=3&offset=1&order=-1
The request body must be in JSON format and includes the following parameters:
Key | Type | Description |
---|---|---|
startDate | string | The start date for filtering reviews (format: YYYY-MM-DD). |
endDate | string | The end date for filtering reviews (format: YYYY-MM-DD). |
listingIds | array | An array of listing IDs to filter the reviews. |
channel | array | An array specifying the channels from which to fetch reviews (e.g., DOORDASH). |
{
"startDate": "2025-06-06",
"endDate": "2025-07-06",
"listingIds": [
"P67071",
"P67073"
],
"channel": [
"DOORDASH",
"UBEREATS",
"GRUBHUB"
]}
The response will be in JSON format and contains the following structure:
Key | Type | Description |
---|---|---|
status | boolean | Indicates the success of the request. |
statusCode | integer | A code representing the status of the request (0 for success). |
message | string | A message providing additional information about the request. |
result | object | Contains the main data returned from the API. |
error | object | Contains error details if the request was unsuccessful. |
The result
object may contain the following keys:
Key | Type | Description |
---|---|---|
total | integer | The total number of reviews matching the criteria. |
reviews | array | An array of review objects. |
totalUnAnswered | integer | The total number of unanswered reviews. |
unAnsweredReviews | array | An array of unanswered review objects. |
totalYelp | integer | The total number of Yelp reviews. |
yelpReviews | array | An array of Yelp review objects. |
unansweredYelp | integer | The total number of unanswered Yelp reviews. |
unansweredReviewsYelp | array | An array of unanswered Yelp review objects. |
Each object in the reviews
array contains the following fields:
Key | Type | Description |
---|---|---|
uuid | string | Unique identifier for the review. |
date | string | The date the review was created. |
daysLeftToReply | integer | The number of days left to respond to the review. |
orderSubTotal | number | The subtotal of the order associated with the review. |
CustomerId | string | Unique identifier for the customer who left the review. |
storeId | string | Unique identifier for the store associated with the review. |
brandId | string | Unique identifier for the brand associated with the review. |
deliveryUUID | string | Unique identifier for the order associated with the review. |
toBeReviewed | boolean | Indicates if the review is pending for a response. |
reviewId | string | Unique identifier for the review. |
CustomerName | string | Name of the customer who left the review. |
ListingId | string | Unique identifier for the listing associated with the review. |
channel | string | The channel from which the review originated. |
orderRating | integer | Rating given by the customer for the order. |
reviewReplyPromoValue | number | Promotional value associated with the review reply, if any. |
orderFeedback | string | Feedback provided by the customer regarding the order. |
reviewReplyComment | string | Comment provided in response to the review, if any. |
orderDate | string | The date the order was placed. |
reviewCreated | string | The timestamp when the review was created. |
reviewReplyCreated | string | The timestamp when the review reply was created, if applicable. |
reviewReplied | boolean | Indicates if a reply has been made to the review. |
yelpReplyApproved | boolean | Indicates if the Yelp reply has been approved. |
customerType | string | Type of the customer (e.g., new, returning). |
autoReply | boolean | Indicates if the reply was generated automatically. |
{
"status": true,
"statusCode": 200,
"message": "Reviews fetched successfully",
"result": {
"total": 33,
"reviews": [
{
"uuid": "cfcd296b-214b-3001-923f-9a406df4424b",
"date": "2025-07-05T01:08:44.000Z",
"daysLeftToReply": 3,
"orderSubTotal": 15.49,
"CustomerId": "524823061",
"storeId": "P6707",
"brandId": "393",
"deliveryUUID": "cfcd296b-214b-3001-923f-9a406df4424b",
"toBeReviewed": null,
"reviewId": null,
"CustomerName": "Camilo T",
"ListingId": "P67071",
"channel": "DOORDASH",
"orderRating": 5,
"reviewReplyPromoValue": null,
"orderFeedback": "",
"reviewReplyComment": null,
"orderDate": null,
"reviewCreated": "2025-07-05T01:08:44.000Z",
"reviewReplyCreated": null,
"reviewReplied": false,
"yelpReplyApproved": false,
"customerType": "new",
"autoReply": false
}
],
"totalUnAnswered": 5,
"unAnsweredReviews": [
{
"uuid": "cfcd296b-214b-3001-923f-9a406df4424b",
"date": "2025-07-05T01:08:44.000Z",
"daysLeftToReply": 3,
"orderSubTotal": 15.49,
"CustomerId": "524823061",
"storeId": "P6707",
"brandId": "393",
"deliveryUUID": "cfcd296b-214b-3001-923f-9a406df4424b",
"toBeReviewed": null,
"reviewId": null,
"CustomerName": "Camilo T",
"ListingId": "P67071",
"channel": "DOORDASH",
"orderRating": 5,
"reviewReplyPromoValue": null,
"orderFeedback": "",
"reviewReplyComment": null,
"orderDate": null,
"reviewCreated": "2025-07-05T01:08:44.000Z",
"reviewReplyCreated": null,
"reviewReplied": false,
"yelpReplyApproved": false,
"customerType": "new",
"autoReply": false
}
],
"totalYelp": 0,
"yelpReviews": [],
"unansweredYelp": 0,
"unansweredReviewsYelp": []
},
"error": null
}
200 OK: The request was successful, and the response contains the requested data.
Other Status Codes: Refer to the API documentation for additional status codes and their meanings.
This endpoint is essential for managing and analyzing reviews across different channels, helping businesses to respond effectively to customer feedback.
- Mock server
https://api.voosh.ai/_mock/main/v1/partnerApi/review-manager/reviews
https://growapiservicesv2server.voosh.ai/v1/partnerApi/review-manager/reviews
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
'https://api.voosh.ai/_mock/main/v1/partnerApi/review-manager/reviews?limit=3&offset=1&order=-1' \
-H 'Content-Type: application/json' \
-H 'token: {{access-token}}' \
-H 'x-api-key: YOUR_API_KEY_HERE' \
-d '{
"channel": [
"DOORDASH",
"UBEREATS",
"GRUBHUB"
],
"endDate": "2025-07-06",
"listingIds": [
"P67071",
"P67073"
],
"startDate": "2025-06-06"
}'
{ "error": null, "message": "Reviews fetched successfully", "result": { "reviews": [ … ], "total": 33, "totalUnAnswered": 5, "totalYelp": 0, "unAnsweredReviews": [ … ], "unansweredReviewsYelp": [], "unansweredYelp": 0, "yelpReviews": [] }, "status": true, "statusCode": 200 }
Request
This endpoint allows partners to submit replies to reviews for their listings. It is designed to facilitate communication with customers by enabling businesses to respond to feedback directly.
POST
{{base-url}}/v1/partnerApi/review-manager/reply
The request body must be sent in JSON format and includes the following parameters:
Field | Type | Description |
---|---|---|
promoValue | integer | A value representing any promotional offer associated with the reply. |
comment | string | The text of the reply to the customer's review. |
deliveryUUID | string | A unique identifier for the delivery associated with the review. |
customerId | string | The unique identifier of the customer who left the review. |
feedback | string | Any additional feedback that may be relevant. |
listingId | string | The unique identifier of the listing being reviewed. |
rating | integer | The rating given by the customer (scale typically from 1 to 5). |
channel | string | The platform through which the review was received (e.g., DOORDASH). |
customerName | string | The name of the customer who left the review. |
reviewCreated | string | The date when the review was created. |
{
"promoValue": 0,
"comment": "Hello Jessica, We appreciate ...",
"deliveryUUID": "5d594684-e433-3001-bece-56a015 ...",
"customerId": "",
"feedback": "",
"listingId": "P1351",
"rating": 5,
"channel": "DOORDASH",
"customerName": "Jessica W",
"reviewCreated": "2025-04-12"
}
Upon a successful request, the API will return a response with the following structure:
Field | Type | Description |
---|---|---|
status | boolean | Indicates whether the request was successful. |
statusCode | integer | A code representing the status of the response. |
message | string | A message providing additional information about the response. |
result | object | Contains further details about the result of the operation. |
result.message | string | Any relevant message related to the result. |
error | null or object | Will be null if there is no error; otherwise, it will contain error details. |
{
"status": true,
"statusCode": 200,
"message": "Review respond request initiated",
"result": {
"message": "review respond request initiated"},
"error": null
}
A successful request will typically return a 200 status code.
The response structure is consistent across various endpoints of this API, allowing ease of integration and understanding.
Ensure that all required fields are populated correctly to avoid errors in submission.
- Mock server
https://api.voosh.ai/_mock/main/v1/partnerApi/review-manager/reply
https://growapiservicesv2server.voosh.ai/v1/partnerApi/review-manager/reply
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://api.voosh.ai/_mock/main/v1/partnerApi/review-manager/reply \
-H 'Content-Type: application/json' \
-H 'token: {{access-token}}' \
-H 'user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36' \
-H 'x-api-key: YOUR_API_KEY_HERE' \
-d '{
"channel": "DOORDASH",
"comment": "Hello Jessica, We appreciate your 5-star rating! Thank you for choosing us through DoorDash!",
"customerId": "",
"customerName": "Jessica W",
"deliveryUUID": "5d594684-e433-0152e47b0",
"feedback": "",
"listingId": "P1351",
"promoValue": 0,
"rating": 5,
"reviewCreated": "2025-04-12"
}'
{ "error": null, "message": "Review respond request initiated", "result": { "message": "review respond request initiated" }, "status": true, "statusCode": 200 }
Orders API
The Orders API enables seamless aggregation of order data from multiple third-party platforms for clients common to Voosh and its partners. This API provides:
Order Details: Retrieves comprehensive order information from integrated platforms, including order status, timestamps, and itemized breakdowns.
Financial Insights: Fetches order-level financial data, offering visibility into revenue, taxes, fees, and other cost components.
By consolidating order data across platforms, this API empowers partners to efficiently analyze performance, optimize operations, and ensure accurate financial tracking.
Dispute Manager API
The Dispute Manager API enables partners to track and manage disputed orders for common clients across multiple platforms. This API provides:
Disputed Order Data: Retrieves details of disputed orders, including their current status (approved, denied, or expired) and the total number of orders eligible for dispute.
Dispute Resolution Methods:
AI Auto Disputes – Automate the dispute process by enabling AI-powered dispute submission for all locations.
Manual Disputes – Manually select and submit disputes for specific orders as needed.
This API streamlines dispute management, ensuring accurate tracking and efficient resolution of charge discrepancies.
Financial Reconciliation API
The Financial Reconciliation API provides a comprehensive view of financial transactions across multiple locations, enabling accurate tracking and reconciliation of payments, deductions, and discrepancies. This API includes:
Deductions Breakdown – Retrieve a detailed breakdown of deductions, including commissions, error charges, adjustments, and other fee components.
Estimated vs. Actual Payout – Access store-wise comparisons between estimated and actual payouts to identify discrepancies.
Tax Bifurcation – Retrieve store-level tax details, differentiating between taxes remitted to the merchant and those remitted to the state.
POS vs. Third-Party Reconciliation – Compare POS data with third-party platform records to identify order mismatches, status differences, and unclaimed revenue at the store level.
Deposit Data – Get store-wise deposit details to track payment settlements and ensure financial accuracy.
This API helps partners maintain financial transparency and optimize reconciliation processes across platforms.