/v1/openapi.yaml(no API key)This specification
Responses
200OpenAPI document.
For developers & agencies
Order Google review removals from your own software and track every review until Google decides. Built for agencies managing many client profiles and for businesses with their own tools.
Search a Google business and list its reviews, lowest rating first.
Send review ids. We re-read them from Google and file the reports.
Per-review status and events: filed, deleted, rejected, appealed.
Switch on the Lösch-Abo per profile: new 1–3 star reviews every 30 days.
Same terms as on the website: €19 net per review Google confirms as deleted. No base fee, nothing for rejected reviews. Orders and invoices run through your customer account; payment uses your saved card or SEPA mandate, otherwise invoice. Terms
curl "https://api.5sterne.net/v1/businesses?query=Autohaus%20M%C3%BCller%20Berlin" \
-H "Authorization: Bearer $API_KEY" curl "https://api.5sterne.net/v1/businesses/0x47a84e373f035901%3A0x42120465b5e3b70/reviews?sort=lowest" \
-H "Authorization: Bearer $API_KEY" curl -X POST "https://api.5sterne.net/v1/orders" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: kunde-42-2026-10-01" \
-d '{
"businessDataId": "0x47a84e373f035901:0x42120465b5e3b70",
"reviewIds": ["ChZDSUhNMG9nS0VJQ0FnSUM..."],
"termsVersion": "2026-10-price-19-v1",
"externalReference": "kunde-42"
}' curl "https://api.5sterne.net/v1/orders/ORDER_ID" \
-H "Authorization: Bearer $API_KEY" https://api.5sterne.netAuthorization: Bearer 5s_live_…. Keys are shown once; revoke them in your customer area.Idempotency-Key header with every order. A retry with the same key returns the original order.termsVersion (2026-10-price-19-v1). After a price change, old versions get a 422 instead of being billed at the new price.{"type","title","status","detail"}. 409 and 422 for reviews also list the affected reviewIds.The machine-readable contract.
/v1/openapi.yaml(no API key)200OpenAPI document.Find a Google business and the reviews you want removed. Each search, each review page, and each page read while placing an order counts towards a daily budget of 1000 Google calls per customer (resets 00:00 UTC).
/v1/businesses query required | string | Business name and city, e.g. Autohaus Müller Berlin. |
200Matches.400RFC 7807 problem.401RFC 7807 problem.429RFC 7807 problem.503RFC 7807 problem. data required | Business[] |
/v1/businesses/{dataId}/reviewsUp to 8 reviews on the first page, 18 on later ones. Pass nextPageToken as pageToken for more.
dataId (path) required | string | dataId from the search, URL-encoded. |
sort | "lowest" | "newest" | |
pageToken | string |
200A page of reviews.400RFC 7807 problem.401RFC 7807 problem.429RFC 7807 problem.503RFC 7807 problem. businessDataId required | string | |
businessName required | string | |
rating required | number | |
totalReviews required | integer | |
data required | LookupReview[] | |
nextPageToken required | string | null |
Place removal orders and follow each review until Google decides.
/v1/ordersNewest first. Includes orders placed on the website and by the Lösch-Abo.
limit | integer | |
cursor | string | The nextCursor of the previous page. |
200A page of orders.400RFC 7807 problem.401RFC 7807 problem.429RFC 7807 problem. data required | Order[] | |
nextCursor required | string | null |
/v1/ordersWe re-read the business's reviews from Google, so every id must be one of its current 1-3 star reviews. Contact and billing data are taken from your latest order. Payment: your saved card or SEPA mandate, otherwise invoice. You are billed only for reviews Google confirms as deleted. Filing starts right away; the call can take several seconds while reviews are read. Each review page read counts towards the daily budget of 1000 Google calls (see Lookup).
Idempotency-Key (header) | string | Retrying with the same key returns the original order (200, Idempotent-Replayed: true) instead of a second one. |
businessDataId required | string | |
reviewIds required | string[] | Google review ids from GET /v1/businesses/{dataId}/reviews. |
termsVersion required | "2026-10-price-19-v1" | Confirms the AGB you order under (19.00 EUR net per deleted review). When prices change, old versions are rejected with 422 instead of silently billing a new price. |
externalReference | string | Your own reference, e.g. your client's id. Returned on every order. |
200Idempotent replay of an earlier order.201Order placed.400RFC 7807 problem.401RFC 7807 problem.409Some reviews are already part of a live order.422Unknown reviews (with reviewIds), outdated termsVersion, an Idempotency-Key
reused with a different body, no usable payment method, or missing phone number.
429RFC 7807 problem.503RFC 7807 problem. id required | string (uuid) | |
externalReference required | string | null | |
createdAt required | string (date-time) | |
source required | "website" | "auto_delete" | "api" | |
businessName required | string | |
status required | "in_progress" | "completed" | completed once no review awaits Google. |
reviewCount required | integer | |
counts required | Counts | |
currency required | "EUR" | |
estimatedNetCents required | integer | Net amount if every review were deleted. |
billedNetCents required | integer | null | Net amount actually billed, once invoiced. |
reviews required | Review[] |
/v1/orders/{orderId} orderId (path) required | string (uuid) |
200The order.401RFC 7807 problem.404RFC 7807 problem.429RFC 7807 problem. id required | string (uuid) | |
externalReference required | string | null | |
createdAt required | string (date-time) | |
source required | "website" | "auto_delete" | "api" | |
businessName required | string | |
status required | "in_progress" | "completed" | completed once no review awaits Google. |
reviewCount required | integer | |
counts required | Counts | |
currency required | "EUR" | |
estimatedNetCents required | integer | Net amount if every review were deleted. |
billedNetCents required | integer | null | Net amount actually billed, once invoiced. |
reviews required | Review[] |
The Google profiles you have ordered for, and their Lösch-Abo.
/v1/profilesEvery Google Maps profile you have ordered for, with totals and Lösch-Abo state.
200Profiles.401RFC 7807 problem.429RFC 7807 problem. data required | Profile[] |
/v1/profiles/{dataId}/auto-deleteEvery 30 days we check the profile and order removal of reviews never ordered
before (1-3 stars), lowest rating first, up to maxReviewsPerCycle. Each run creates
a regular order (source: auto_delete), billed like any other.
Sending consentVersion means: "I authorize 5Sterne to request removal of previously
unordered negative reviews (1–3 stars) every 30 days, up to my chosen limit. €19 net
per successful removal; I can disable this at any time." It is required to switch the
Lösch-Abo on or to raise the limit; lowering the limit or switching off needs none.
The profile must have been ordered for at least once.
dataId (path) required | string |
enabled required | boolean | |
maxReviewsPerCycle | integer | null | Omit to keep the current limit; null = unlimited. |
consentVersion | "2026-10-auto-delete-api-v1" |
200The new state.400RFC 7807 problem.401RFC 7807 problem.404RFC 7807 problem.422RFC 7807 problem.429RFC 7807 problem. enabled required | boolean | |
nextCheckAt required | string (date-time) | null | |
maxReviewsPerCycle required | integer | null | null = unlimited. |
enrolled required | boolean |