Contendar Help

Analytics

Get a summary of testimonial activity for a project: approval rate, sources, sentiment, and a daily trend.

GET /testimonials/analytics

Authentication

Send your API key as a bearer token. See Authentication .

Query parameters

ParameterTypeRequiredNotes
projectIdUUIDyesThe project to read.
formBuilderIdUUIDnoOnly count submissions from this form.
sincedatenoOnly count submissions on or after this date. ISO date or date time.

Response

{
  "total": 128,
  "approvedCount": 94,
  "pendingCount": 22,
  "rejectedCount": 12,
  "approvalRate": 0.73,
  "sourceBreakdown": [
    { "source": "form", "count": 80 },
    { "source": "import", "count": 40 },
    { "source": "manual", "count": 8 }
  ],
  "sentimentBreakdown": [
    { "sentiment": "positive", "count": 90 },
    { "sentiment": "neutral", "count": 20 },
    { "sentiment": "negative", "count": 8 },
    { "sentiment": "unanalyzed", "count": 10 }
  ],
  "platformBreakdown": [
    { "platform": "Google", "count": 30 },
    { "platform": "Trustpilot", "count": 10 }
  ],
  "trend": [
    { "date": "2026-08-27", "count": 4 },
    { "date": "2026-08-28", "count": 7 }
  ]
}

Response fields

FieldTypeNotes
totalnumberAll submissions in scope.
approvedCountnumberSubmissions with status approved.
pendingCountnumberSubmissions with status pending.
rejectedCountnumberSubmissions with status rejected.
approvalRatenumber or nullApproved divided by the number of reviewed submissions. null when none are reviewed.
sourceBreakdownarrayCount per source: form, manual, import, migration.
sentimentBreakdownarrayCount per sentiment: positive, neutral, negative, plus unanalyzed.
platformBreakdownarrayCount per import platform, for example Google or Trustpilot.
trendarrayCount per day. Each item has an ISO date and a count.

Example

curl "https://app.contendar.com/api/v1/testimonials/analytics?projectId=YOUR_PROJECT_ID&since=2026-08-01" \
  -H "Authorization: Bearer ck_your_key_here"

Related pages

Was this helpful?