Skip to content

API Overview

The programmatic API allows external systems (e.g., hospital HIS/EMR, CRM, ticketing systems) to automate survey workflows: create contacts, send surveys, and track responses.

All API endpoints are available at:

https://fikrr.diwakarmaurya.com/api

All API requests require an API key passed via the x-api-key header:

Terminal window
curl -H "x-api-key: YOUR_API_KEY" \
https://fikrr.diwakarmaurya.com/api/directory/contacts

Alternatively, use a Bearer token in the Authorization header:

Terminal window
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://fikrr.diwakarmaurya.com/api/directory/contacts

API keys are scoped to a user and inherit that user’s organization membership and permissions. All queries are automatically scoped to the API key owner’s organization — you cannot access data from other organizations.

API keys can be created from Settings > API Keys in the web UI.

All errors return a consistent JSON structure:

{
"code": "NOT_FOUND",
"status": 404,
"message": "Contact not found"
}
CodeStatusDescription
BAD_REQUEST400Invalid input or missing required fields
FORBIDDEN403User lacks required permission or organization membership
NOT_FOUND404Resource not found
CONFLICT409Duplicate resource or state conflict
INTERNAL_SERVER_ERROR500Unexpected server error

API requests are rate-limited per API key:

  • 100 requests/minute per API key
  • 1,000 requests/hour per API key

Rate limit headers are included in every response:

X-RateLimit-Limit: 100
X-RateLimit-Remaining: 95
X-RateLimit-Reset: 1709654400

All request and response bodies use JSON:

Content-Type: application/json

A typical external system integration follows this pattern:

  1. Create contactsUpsert contacts by externalId from your system
  2. Send surveysQuick distribute a survey to those contacts
  3. Track responsesCheck response status by externalId
  4. React to completions — Configure webhooks for real-time notifications