Skip to main content

Request Reviews

Submit a request to scrape reviews from multiple review sites for a business.

Endpoint​

POST https://data.reviewdata.ai/submit/request-reviews/

Description​

This endpoint validates the API key, creates a scraping request record, and queues scraping tasks for each publisher. The request is processed asynchronously, and you can retrieve results using the /retrieve-task/ endpoint.

Try It Out​

Test this endpoint directly in your browser:

Request Reviews

POST

Test this endpoint directly in your browser. Enter your API key and modify the request body as needed.

Your API key is required for authentication

Request Body (JSON)

Modify the request parameters below. A unique foreign_key is auto-generated but can be manually edited.

Request Body​

Schema​

{
"job": "App\\Jobs\\RequestReviews",
"data": {
"api_key": "string",
"foreign_key": "string",
"lazy": "boolean",
"business": {
"id": "string",
"name": "string",
"address": {
"street": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string"
},
"phone": "string",
"description": "string",
"tags": ["string"]
},
"publishers": {
"publisher.com": {
"profile_key": "string",
"last_review_hashes": ["string"],
"first_page_only": "boolean"
}
}
}
}

Required Fields​

  • job: Must be "App\\Jobs\\RequestReviews"
  • data.api_key: Your API key for authentication
  • data.foreign_key: External request identifier
  • data.business: Business information object
  • data.publishers: Publisher configurations object

Business Object​

FieldTypeRequiredDescription
idstringYesBusiness identifier
namestringYesBusiness name
addressobjectYesPhysical address
phonestringYesContact number
descriptionstringYesBusiness details
tagsarrayYesAdditional categories

Address Object​

FieldTypeRequiredDescription
streetstringYesStreet address
citystringYesCity name
statestringYesState/province
zipstringYesPostal code
countrystringYes3-letter country code (e.g., USA, GBR)

Publisher Configuration​

FieldTypeRequiredDescription
profile_keystringYesBusiness URL/ID at publisher
last_review_hashesarrayYesHashes from previous reviews
first_page_onlybooleanYestrue=first page, false=all pages
persona.additional_cookiesobjectNoRequired for Facebook

Example Request​

Basic Request​

{
"job": "App\\Jobs\\RequestReviews",
"data": {
"lazy": true,
"api_key": "YOUR_API_KEY_HERE",
"business": {
"id": "restaurant_001",
"name": "McDonald's",
"tags": [
"restaurant",
"pizza",
"italian",
"casual"
],
"phone": "+12123852066",
"address": {
"zip": "10038",
"city": "New York",
"state": "NY",
"street": "160 Broadway",
"country": "USA"
},
"description": "Classic, long-running fast-food chain known for its burgers & fries."
},
"publishers": {
"maps.google.com": {
"profile_key": "https://www.google.com/maps/place/McDonald's/@40.7094789,-74.0126167,886m/data=!3m2!1e3!5s0x89c2592f4977ef97:0xf78d57398ac93494!4m7!3m6!1s0x89c25a177d4bf5db:0x84e51f23e8c0a75c!8m2!3d40.7094789!4d-74.0100364!10e1!16s%2Fg%2F1thtf190!5m1!1e1?entry=ttu&g_ep=EgoyMDI1MDYyMi4wIKXMDSoASAFQAw%3D%3D",
"first_page_only": false,
"last_review_hashes": []
}
},
"foreign_key": "TEST_1751446701622_hznlpc"
}
}

Request with Additional Cookies​

{
"job": "App\\Jobs\\RequestReviews",
"data": {
"lazy": true,
"api_key": "YOUR_API_KEY_HERE",
"business": {
"id": "restaurant_001",
"name": "McDonald's",
"tags": [
"restaurant",
"pizza",
"italian",
"casual"
],
"phone": "+12123852066",
"address": {
"zip": "10038",
"city": "New York",
"state": "NY",
"street": "160 Broadway",
"country": "USA"
},
"description": "Classic, long-running fast-food chain known for its burgers & fries."
},
"publishers": {
"facebook.com": {
"profile_key": "https://www.facebook.com/McDonalds/",
"first_page_only": true,
"last_review_hashes": [],
"persona": {
"additional_cookies": {
"login": [
{
"name": "Cookie_Name",
"value": "Cookie_Value",
"domain": "Cookie_domain"
}
]
}
}
}
},
"foreign_key": "TEST_1751446701622_hznlpc"
}
}

Response​

Success Response (201)​

{
"status": "success",
"tasks_id": "900e2ff4-2d25-4576-ab18-b9b8e73c0bd6",
"request_id": "9f9d2b5a-085c-4df3-bcca-20928f086925",
"foreign_key": "TEST_1751004113518_i6yxcl",
"publisher_key": "maps.google.com",
}

Error Response (400)​

{
"error": "Invalid payload",
"details": {
"data": {
"business": {
"address": {
"street": ["This field is required."]
}
}
}
}
}

Error Response (401)​

{
"error": "Invalid API key",
"details": {
"api_key": ["The provided API key is invalid"]
}
}

Parameters​

Job Key​

Must be "App\\Jobs\\RequestReviews"

API Key​

Client authentication key placed in data.api_key

Foreign Key​

External request identifier (data.foreign_key)

Lazy Mode​

Set data.lazy=true to increase timeout for large requests

Business Data​

Used for profile lookup when no profile_key is provided:

  • id: Business identifier
  • name: Business name
  • address: Physical address
  • phone: Contact number
  • description: Business details
  • tags: Additional categories

Address Requirements​

  • country: 3-letter country code (e.g., USA, GBR)

Publisher Configuration​

Key-value pairs where key is publisher name (e.g., yelp.com)

FieldDescription
profile_keyBusiness URL/ID at publisher
last_review_hashesHashes from previous reviews
first_page_onlytrue=first page, false=all pages
additional_cookiesRequired for Facebook/Yelp

Rate Limiting​

This endpoint is subject to rate limiting based on your subscription plan. If you exceed your rate limit, you'll receive a 429 Too Many Requests response.

Next Steps​

After submitting a request:

  1. Use the Retrieve Task endpoint to check status
  2. Configure Webhooks for real-time notifications
  3. Monitor task progress and retrieve results when complete