Für Entwickler

Google-Bewertungen-API für Entwickler

Eine REST-API, um Ihre Standorte und Bewertungen abzufragen und Bewertungsanfragen aus Ihrem eigenen System auszulösen (Kasse, Buchung, E-Commerce), plus signierte Webhooks für Echtzeit-Ereignisse ohne Polling.

Authentifizierung

Erstellen Sie einen API-Schlüssel unter Einstellungen → API in Ihrem Dashboard. Jeder Schlüssel wird bei der Erstellung nur einmal angezeigt — bewahren Sie ihn sicher auf. Senden Sie ihn im Authorization-Header jeder Anfrage:

curl -H "Authorization: Bearer rvd_live_..." \
  "https://reviews-api.rovidev.com/api/v1/locations"

GET /api/v1/locations

Gibt die aktiven Standorte Ihrer Organisation zurück.

{
  "id": "b3f1...",
  "name": "Cafetería El Sol - Centro"
}

GET /api/v1/reviews

Gibt die Bewertungen Ihrer Organisation paginiert zurück. Unterstützt die Filter status (pending, negative, published), location_id, platform (google, facebook, tripadvisor), page und page_size.

curl -H "Authorization: Bearer rvd_live_..." \
  "https://reviews-api.rovidev.com/api/v1/reviews?status=negative&page=1&page_size=50"
{
  "items": [
    {
      "id": "9c2a...",
      "location_id": "b3f1...",
      "location_name": "Cafetería El Sol - Centro",
      "platform": "google",
      "star_rating": 5,
      "comment": "Trato excelente",
      "reviewer_name": "Ana",
      "sentiment": "positive",
      "review_created_at": "2026-08-20T10:15:00",
      "reply_status": "published",
      "reply_content": "¡Muchas gracias, Ana!"
    }
  ],
  "total": 1,
  "page": 1,
  "page_size": 50
}

Auch in JavaScript / Node

const res = await fetch(
  "https://reviews-api.rovidev.com/api/v1/reviews?status=negative&page=1&page_size=50",
  { headers: { Authorization: "Bearer rvd_live_..." } }
)
const { items, total } = await res.json()

POST /api/v1/review-requests

Lösen Sie eine Bewertungsanfrage genau in dem Moment aus, in dem eine Bestellung, Buchung oder ein Termin abgeschlossen wird, statt sich auf eine manuell hochgeladene Kontaktliste zu verlassen. Unterstützt die Kanäle email, sms und whatsapp.

curl -X POST -H "Authorization: Bearer rvd_live_..." \
  -H "Content-Type: application/json" \
  -d '{"channel":"email","name":"Ana","email":"ana@example.com"}' \
  "https://reviews-api.rovidev.com/api/v1/review-requests"
{
  "id": "7e4b...",
  "status": "sent",
  "channel": "email",
  "recipient": "ana@example.com"
}

Auch in JavaScript / Node

await fetch("https://reviews-api.rovidev.com/api/v1/review-requests", {
  method: "POST",
  headers: {
    Authorization: "Bearer rvd_live_...",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({ channel: "email", name: "Ana", email: "ana@example.com" })
})

Webhooks

Konfigurieren Sie unter Einstellungen → API eine URL, um bei jedem Ereignis einen POST zu erhalten, statt die API regelmäßig abzufragen. Maximal 5 aktive Webhooks pro Organisation.

Verfügbare Ereignisse

  • review.created
  • review.replied
  • daily.summary

Signatur überprüfen

Jede Zustellung enthält den Header X-RoviDev-Signature: ein HMAC-SHA256 des Anfragetexts, berechnet mit dem Secret, das bei der Erstellung des Webhooks angezeigt wird. Überprüfen Sie es auf Ihrem Server, bevor Sie das Ereignis verarbeiten:

import hashlib
import hmac

expected = hmac.new(secret.encode(), request.body, hashlib.sha256).hexdigest()
hmac.compare_digest(expected, request.headers["X-RoviDev-Signature"])

Auch in JavaScript / Node

const crypto = require("crypto")

const expected = crypto
  .createHmac("sha256", secret)
  .update(rawBody)
  .digest("hex")
crypto.timingSafeEqual(Buffer.from(expected), Buffer.from(req.headers["x-rovidev-signature"]))
Schritt-für-Schritt-Anleitung: Bewertungsanfragen und Webhooks automatisieren →

Bereit, Ihr System zu verbinden?

Dashboard öffnen →