Introduction
How partners connect to Ovianta voice agents.
Ovianta voice agents answer a clinic's phone, call patients back, and chat on the clinic's website. To do that well they need two things from the clinic's software, and the clinic usually wants one thing back.
Agenda integration
You implement a small HTTP API on top of your agenda. Ovianta calls it to find patients, look up free slots, and book, move, cancel or confirm appointments while the agent talks to the patient.
Event webhooks
Ovianta sends a signed POST to your URL when a call ends or the agent leaves a note for the clinic's staff,
with the transcript and everything the agent changed.
The two are independent. A clinic can use either one, or both.
Which direction each one goes
| Agenda integration | Event webhooks | |
|---|---|---|
| Who calls whom | Ovianta calls your API | Ovianta calls your URL |
| When | During the conversation, while the patient waits | After the fact |
| You answer with | The data Ovianta asked for | Any 2xx status |
| Signed with | X-Signature, using the integration's secret | x-signature, using the endpoint's whsec_… secret |
| Set up in Ovianta under | Integrations | Settings › Webhooks |
Two different secrets
Each integration has its own secret. Use the agenda integration's secret to check requests to your agenda API, and each webhook endpoint's secret to check the events sent to that endpoint.
Conventions
- Ids are yours. Every
doctorId,patientId,appointmentIdorcenterIdthat Ovianta sends you is an id your system gave it. Ovianta stores them as strings, so send numbers as strings too. - Local time. The agenda integration uses
DD/MM/YYYYdates andHH:MMtimes in the clinic's local time (Europe/Madrid). Event webhooks use ISO 8601 timestamps with an offset. - New fields can appear. Ovianta adds optional fields without notice. Ignore fields you do not know, in both directions.