Voxares

Overview

Integrate your systems with Voxares using the REST API

API Reference

The Voxares API lets you manage patients, send messages, and access content programmatically. Use it to connect your CRM, EHR, booking system, or any other software to Voxares.

Base URL

https://api.voxares.com/api/v1/integration

All endpoints in this documentation are relative to the base URL above.

Quick start

1. Create an API key

Go to Settings > API Keys in the Voxares dashboard and create a new key. Copy the full key immediately - it is only shown once.

2. Make your first request

curl -X GET "https://api.voxares.com/api/v1/integration/patients?page=0&pageSize=5" \
  -H "Authorization: Bearer vox-YOUR-API-KEY"

3. Send a message

curl -X POST "https://api.voxares.com/api/v1/integration/messages/send" \
  -H "Authorization: Bearer vox-YOUR-API-KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "providerId": "EHR-123",
    "firstName": "Ana",
    "lastName": "Horvat",
    "mobileNumber": "+385991234567",
    "content": "Your appointment is tomorrow at 10:00."
  }'

Core concepts

Patients

Patients are the people you communicate with. You can create, update, and look up patients by your own external ID (providerId), so you never need to store Voxares IDs in your system.

Messages

Send SMS messages to patients, either with inline text or by referencing a saved practice template. Every message returns a messageId you can use to check delivery status.

Content

Browse your practice templates, forms, and documents programmatically. Useful for building custom UIs or syncing content with external systems.

Form Submissions

Poll for patient form submission results. Filter by timestamp to pick up new and updated submissions without webhooks.

Rich content and practice templates

Beyond plain SMS text, Voxares can send messages with form links, document attachments, and dynamic variables (like {{firstName}}). These rich features are configured through practice templates, which you create and manage in the Voxares dashboard.

The API cannot create or edit templates, forms, or documents. You do that in the dashboard. The API lets you:

  1. Browse templates with GET /practice-templates to find the template ID you need
  2. Send a template with POST /messages/send using practiceTemplateId. Voxares fills in the variables and attaches the rich content for you.

See the Content API for listing templates, forms, and documents.

Response format

All list endpoints return a paginated response:

{
  "data": [ ... ],
  "count": 42
}

Single-resource endpoints return the resource object directly.

Errors

Error responses use standard HTTP status codes with a JSON body:

{
  "statusCode": 400,
  "message": "Validation failed",
  "error": "Bad Request"
}
StatusMeaning
400Bad request - check your request body
401Unauthorized - invalid or missing API key
403Forbidden - API key lacks required scope
404Resource not found
409Conflict - duplicate resource
422Unprocessable entity - validation error
500Internal server error

Pagination

List endpoints accept these query parameters:

ParameterTypeDefaultDescription
pageinteger0Zero-based page index
pageSizeinteger20Items per page (max 100)
searchTermstring-Full-text search
Copyright © 2026