Ovianta Developers

Catalogs

Tell Ovianta about your doctors, specialties, insurances and centers.

Patients do not know your ids. They say "Dr. Pérez", "the eye doctor" or "I'm with Adeslas". GET /custom-config gives Ovianta the lists it needs to turn those words into your doctorId, specialityId and insuranceId.

Get your catalogs

GET/custom-config

Your doctors, specialties, insurances and centers, so Ovianta can map what a patient says to your ids.

Response: 200

Free-form JSON: see the shapes below.

Example request

GET {baseUrl}/custom-config
Accept: application/json
X-Signature: 5f2b9c…

Example response

{
  "doctors": {
    "description": "Doctors and the centers they work at",
    "data": [
      {
        "id": "24895",
        "name": "Dr. Juan Pérez",
        "speciality": "1",
        "idCenter": "1"
      },
      {
        "id": "24896",
        "name": "Dra. María Gómez",
        "speciality": "2",
        "idCenter": "2"
      }
    ]
  },
  "specialities": {
    "description": "Specialties",
    "data": [
      {
        "id": "1",
        "name": "Oftalmología general"
      },
      {
        "id": "2",
        "name": "Unidad de cataratas"
      }
    ]
  },
  "insurances": {
    "description": "Insurances the clinic accepts",
    "data": [
      {
        "id": "23507325",
        "name": "ADESLAS"
      },
      {
        "id": "0998",
        "name": "Privado"
      }
    ]
  },
  "centers": {
    "description": "Sites (multi-center clinics only)",
    "data": [
      {
        "id": "1",
        "name": "Sede Centro"
      },
      {
        "id": "2",
        "name": "Sede Norte"
      }
    ]
  }
}

What to include

The structure is free: Ovianta reads it by meaning, not by key name. Include whatever you have of:

  • Doctors, with their id, name and specialty, and the centers they work at.
  • Specialties (or appointment types), with id and name.
  • Insurances you accept, with id and name. Include private patients as one more entry if your agenda models them that way.
  • Centers, only if you have several sites. See Multi-center.

Wrapping each list in { "description": ..., "data": [...] }, as in the example, helps but is not required. Key names such as idMed, idCentro or companies are fine as they are.

Doctors at several centers

A doctor can work at several centers, and accept different insurances at each. Any of these shapes works, and you can mix them.

Repeat the doctor once per center:

{
  "doctors": { "data": [
    { "id": "322", "name": "Dr. Álvarez", "speciality": "1", "idCenter": "5" },
    { "id": "322", "name": "Dr. Álvarez", "speciality": "1", "idCenter": "1" }
  ] }
}

When a doctor has a list of insurances, Ovianta only offers that doctor to patients whose insurance is on it.

Keep the structure, change the data

Ovianta re-reads this endpoint about once a day, so a new doctor or insurance is picked up within a day with nothing else to do. The structure (key names and nesting) is learned once: talk to Ovianta before changing it on a live integration.

On this page