Lewati ke isi

Referensi API

Telekonsultasi

Sesi telekonsultasi terjadwal; hanya baca (modul telecon).

OpenAPI 3.1 · versi 1.1.0 · 127 operasi · 30 event webhook

Basis URLhttps://api.medivana.cloud/api/v1

Sesi telekonsultasi

Default hari ini; dengan patient_id semua tanggal. Tautan undangan pasien tidak pernah dikembalikan di sini.

Scope
encounters:read
Izin RBAC
encounter.read · telecon.manage
Modul
telecon

Parameter

Parameter GET /telecon/sessions
NamaLokasiTipeKeterangan
datequerystring (date)
practitioner_idquerystring (uuid)
patient_idquerystring (uuid)
statusqueryscheduled | in_progress | completed | cancelled

Contoh kode

Bahasa contoh kode
curl -X GET "https://api.medivana.cloud/api/v1/telecon/sessions" \
  -H "Authorization: Bearer $MEDIVANA_TOKEN"
const res = await fetch("https://api.medivana.cloud/api/v1/telecon/sessions", {
  method: "GET",
  headers: {
    Authorization: `Bearer ${process.env.MEDIVANA_TOKEN}`,
  },
});
if (!res.ok) throw new Error(`HTTP ${res.status}: ${await res.text()}`);
const data = await res.json();
import os
import requests

resp = requests.get(
    "https://api.medivana.cloud/api/v1/telecon/sessions",
    headers={"Authorization": f"Bearer {os.environ['MEDIVANA_TOKEN']}"},
    timeout=30,
)
resp.raise_for_status()
data = resp.json()

Respons

200Sesiapplication/json

{
  "items": [
    {
      "id": "3f0c2a10-5b7e-4c1d-9a2e-00000001e101",
      "branch_id": "3f0c2a10-5b7e-4c1d-9a2e-0000000000b1",
      "patient_id": "3f0c2a10-5b7e-4c1d-9a2e-0000000a0001",
      "patient_name": "Pasien Contoh",
      "practitioner_id": "3f0c2a10-5b7e-4c1d-9a2e-0000000d0001",
      "practitioner_name": "dr. Rina Contoh",
      "encounter_id": null,
      "service_id": "3f0c2a10-5b7e-4c1d-9a2e-00000001f004",
      "service_name": "Telekonsultasi umum",
      "scheduled_start": "2026-10-29T19:00:00+07:00",
      "scheduled_end": "2026-10-29T19:20:00+07:00",
      "duration_minutes": 20,
      "status": "scheduled",
      "payment_status": "paid",
      "payment_settled": true,
      "paid_at": "2026-10-29T15:00:00+07:00",
      "payment_ref": null,
      "charge_id": "3f0c2a10-5b7e-4c1d-9a2e-000000009101",
      "consent_at": null,
      "started_at": null,
      "ended_at": null,
      "cancel_reason": null,
      "notes": null,
      "version": 2
    }
  ]
}
Skema 200
Skema 200
NamaTipeKeterangan
itemswajibarray<object>
items[].idstring (uuid)
items[].branch_idstring (uuid)
items[].patient_idstring (uuid)
items[].patient_namestring
items[].practitioner_idstring (uuid)
items[].practitioner_namestring
items[].encounter_idstring (uuid) | null
items[].service_idstring (uuid)
items[].service_namestring
items[].scheduled_startstring (date-time)
items[].scheduled_endstring (date-time)
items[].duration_minutesinteger
items[].statusscheduled | in_progress | completed | cancelled
items[].payment_statusunpaid | paid
items[].payment_settledboolean
items[].paid_atstring (date-time) | null
items[].payment_refstring | null
items[].charge_idstring (uuid) | null
items[].consent_atstring (date-time) | null
items[].started_atstring (date-time) | null
items[].ended_atstring (date-time) | null
items[].cancel_reasonstring | null
items[].notesstring | null
items[].versioninteger
Galat
  • 401unauthorizedToken tidak ada, tidak valid, kedaluwarsa, atau dicabut
  • 402module-lockedModul tidak aktif di paket organisasi
  • 403forbiddenScope token tidak memberi izin (forbidden), atau langganan klinik baca-saja untuk operasi tulis (read-only)
  • 429rate-limitedBatas laju klien (rate_limit_per_min) terlampaui; coba lagi pada menit berikutnya

Detail sesi telekonsultasi

Scope
encounters:read
Izin RBAC
encounter.read · telecon.manage
Modul
telecon

Parameter

Parameter GET /telecon/sessions/{id}
NamaLokasiTipeKeterangan
idwajibpathstring (uuid)

Contoh kode

Bahasa contoh kode
curl -X GET "https://api.medivana.cloud/api/v1/telecon/sessions/3f0c2a10-5b7e-4c1d-9a2e-000000000001" \
  -H "Authorization: Bearer $MEDIVANA_TOKEN"
const res = await fetch("https://api.medivana.cloud/api/v1/telecon/sessions/3f0c2a10-5b7e-4c1d-9a2e-000000000001", {
  method: "GET",
  headers: {
    Authorization: `Bearer ${process.env.MEDIVANA_TOKEN}`,
  },
});
if (!res.ok) throw new Error(`HTTP ${res.status}: ${await res.text()}`);
const data = await res.json();
import os
import requests

resp = requests.get(
    "https://api.medivana.cloud/api/v1/telecon/sessions/3f0c2a10-5b7e-4c1d-9a2e-000000000001",
    headers={"Authorization": f"Bearer {os.environ['MEDIVANA_TOKEN']}"},
    timeout=30,
)
resp.raise_for_status()
data = resp.json()

Respons

200Sesiapplication/json

{
  "id": "3f0c2a10-5b7e-4c1d-9a2e-000000000001",
  "branch_id": "3f0c2a10-5b7e-4c1d-9a2e-000000000001",
  "patient_id": "3f0c2a10-5b7e-4c1d-9a2e-000000000001",
  "patient_name": "string",
  "practitioner_id": "3f0c2a10-5b7e-4c1d-9a2e-000000000001",
  "practitioner_name": "string",
  "encounter_id": "3f0c2a10-5b7e-4c1d-9a2e-000000000001",
  "service_id": "3f0c2a10-5b7e-4c1d-9a2e-000000000001",
  "service_name": "string",
  "scheduled_start": "2026-11-02T08:00:00+07:00",
  "scheduled_end": "2026-11-02T08:00:00+07:00",
  "duration_minutes": 0,
  "status": "scheduled",
  "payment_status": "unpaid",
  "payment_settled": true,
  "paid_at": "2026-11-02T08:00:00+07:00",
  "payment_ref": "string",
  "charge_id": "3f0c2a10-5b7e-4c1d-9a2e-000000000001",
  "consent_at": "2026-11-02T08:00:00+07:00",
  "started_at": "2026-11-02T08:00:00+07:00",
  "ended_at": "2026-11-02T08:00:00+07:00",
  "cancel_reason": "string",
  "notes": "string",
  "version": 0
}
Skema 200
Skema 200
NamaTipeKeterangan
idstring (uuid)
branch_idstring (uuid)
patient_idstring (uuid)
patient_namestring
practitioner_idstring (uuid)
practitioner_namestring
encounter_idstring (uuid) | null
service_idstring (uuid)
service_namestring
scheduled_startstring (date-time)
scheduled_endstring (date-time)
duration_minutesinteger
statusscheduled | in_progress | completed | cancelled
payment_statusunpaid | paid
payment_settledboolean
paid_atstring (date-time) | null
payment_refstring | null
charge_idstring (uuid) | null
consent_atstring (date-time) | null
started_atstring (date-time) | null
ended_atstring (date-time) | null
cancel_reasonstring | null
notesstring | null
versioninteger
Galat
  • 401unauthorizedToken tidak ada, tidak valid, kedaluwarsa, atau dicabut
  • 402module-lockedModul tidak aktif di paket organisasi
  • 403forbiddenScope token tidak memberi izin (forbidden), atau langganan klinik baca-saja untuk operasi tulis (read-only)
  • 404not-foundData tidak ada, milik organisasi lain, atau di luar cakupan cabang klien
  • 429rate-limitedBatas laju klien (rate_limit_per_min) terlampaui; coba lagi pada menit berikutnya