Download OpenAPI specification:Download
This API of AlfaDocs is documented using the OpenAPI format. In addition to the OpenAPI syntax, we use a few vendor extensions.
The API is located at https://app.alfadocs.com/api/. SSL is used for transport security.
You need to specify the X-Api-Key field in the request header using the API Key.
An API key is related to a certain archive. You create an API Key for your archive inside of AlfaDocs, in Impostazioni -> Studio -> Chiavi API
.
The API currently does not have a usage limit. However, AlfaDocs reserves the right to limit the API usage and also to ask for a fee related to the API usage.
If you discover bugs or you need other API functionalities, just tell us. While doing so, please specify the use case. Generally, feedback is always welcome. Feel free to contact our support.
Get a list of accounts. Accounts are related to the transactions.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "count": 0,
- "data": [
- {
- "id": 33963,
- "name": "Banca",
- "deleted": false
}
]
}
Get the information related to all configured appointment booking reasons.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "count": 0,
- "data": [
- {
- "id": 5,
- "specialtyId": 820,
- "description": "Visita di Controllo",
- "duration": "30",
- "sequenceNumber": "3",
- "createdAt": "2021-02-18 10:30:47",
- "deleted": false,
- "operatorIds": [
- 177,
- 250,
- 370
], - "price": "125.12"
}
]
}
Get a list of appointments. The default Date filter is from current date to Sunday +14 days. The maximum datetime range is 30 days.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
dateStart | date-time <Y-m-d> Start date |
dateEnd | date-time <Y-m-d> End date |
state | string Enum: "absent" "waiting" "in_care" "done" "cancelled" "confirmed" Appointment State |
patientId | integer Patient ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "count": 0,
- "data": [
- {
- "id": 33963,
- "date": "2020-01-01 00:00:00",
- "patientId": 69215,
- "emailReminder": false,
- "smsReminder": true,
- "description": "Appointment",
- "allDay": false,
- "type": "telehealth",
- "state": "confirmed",
- "duration": 30,
- "colorId": 85665,
- "chairId": 2285362,
- "operatorId": 965563,
- "createdThroughBooking": true,
- "createdThroughApi": false,
- "firstVisit": "no"
}
]
}
Create an appointment
practiceId required | integer Practice id |
archiveId required | integer Archive id |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
date required | string <date-time> Appointment's date |
patientId | integer Patient's ID |
emailReminder | boolean Email reminder |
smsReminder | boolean SMS reminder |
description | string Appointment description |
allDay | boolean Is it a full day appointment? |
type | string Enum: "telehealth" "inPractice" Type of appointment |
duration | integer Duration of the appointment in minutes |
state | string Appointment State |
colorId required | integer ID of the color for the appointment in the agenda. |
chairId | integer Chair ID of the practice |
operatorId | integer Operator ID |
{- "date": "2020-01-01 00:00:00",
- "patientId": 69215,
- "emailReminder": false,
- "smsReminder": true,
- "description": "Appointment",
- "allDay": false,
- "type": "telehealth",
- "duration": 30,
- "state": "string",
- "colorId": 85665,
- "chairId": 2285362,
- "operatorId": 965563
}
{- "status": "success",
- "data": {
- "id": 33963,
- "date": "2020-01-01 00:00:00",
- "patientId": 69215,
- "emailReminder": false,
- "smsReminder": true,
- "description": "Appointment",
- "allDay": false,
- "type": "telehealth",
- "state": "confirmed",
- "duration": 30,
- "colorId": 85665,
- "chairId": 2285362,
- "operatorId": 965563,
- "createdThroughBooking": true,
- "createdThroughApi": false,
- "firstVisit": "no"
}
}
Get the information related to an appointment.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
appointmentId required | integer Appointment ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "data": {
- "id": 33963,
- "date": "2020-01-01 00:00:00",
- "patientId": 69215,
- "emailReminder": false,
- "smsReminder": true,
- "description": "Appointment",
- "allDay": false,
- "type": "telehealth",
- "state": "confirmed",
- "duration": 30,
- "colorId": 85665,
- "chairId": 2285362,
- "operatorId": 965563,
- "createdThroughBooking": true,
- "createdThroughApi": false,
- "firstVisit": "no"
}
}
Update an existing appointment's one or multiple attributes.
practiceId required | integer Practice id |
archiveId required | integer Archive id |
appointmentId required | integer Appointment id |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
date required | string <date-time> Appointment's date |
patientId | integer Patient's ID |
emailReminder | boolean Email reminder |
smsReminder | boolean SMS reminder |
description | string Appointment description |
allDay | boolean Is it a full day appointment? |
type | string Enum: "telehealth" "inPractice" Type of appointment |
duration | integer Duration of the appointment in minutes |
state | string Appointment State |
colorId required | integer ID of the color for the appointment in the agenda. |
chairId | integer Chair ID of the practice |
operatorId | integer Operator ID |
{- "date": "2020-01-01 00:00:00",
- "patientId": 69215,
- "emailReminder": false,
- "smsReminder": true,
- "description": "Appointment",
- "allDay": false,
- "type": "telehealth",
- "duration": 30,
- "state": "string",
- "colorId": 85665,
- "chairId": 2285362,
- "operatorId": 965563
}
{- "status": "success",
- "data": {
- "id": 33963,
- "date": "2020-01-01 00:00:00",
- "patientId": 69215,
- "emailReminder": false,
- "smsReminder": true,
- "description": "Appointment",
- "allDay": false,
- "type": "telehealth",
- "state": "confirmed",
- "duration": 30,
- "colorId": 85665,
- "chairId": 2285362,
- "operatorId": 965563,
- "createdThroughBooking": true,
- "createdThroughApi": false,
- "firstVisit": "no"
}
}
Returns the CarePlan Entries related to the given appointment ID.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
appointmentId required | integer Appointment ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "data": [
- {
- "entryId": 132,
- "price": 6000,
- "discountedPrice": 6000,
- "discountPercentage": 0,
- "absoluteDiscount": 0,
- "createdAt": "2024-08-14",
- "useInventory": "?",
- "consumptionPrice": "?",
- "done": "false",
- "dateDone": "2024-08-14",
- "laboratoryPurpose": "?",
- "laboratoryCosts": "?",
- "multiplyLaboratoryCosts": "?",
- "compensationType": "?",
- "compensationValue": "?",
- "deleted": "false",
- "sequenceNumber": 1,
- "numberOfExecutions": 2,
- "calculatedVariableCosts": 0,
- "calculatedContributionMargin": 0,
- "calculateCompensationBasedOnDiscount": "?",
- "calculateCompensationAfterCosts": "?",
- "hasPhases": "false",
- "doneAmount": 0,
- "vatPercentage": 19,
- "udi": "?",
- "label": "Apicectomia mesiale"
}
]
}
Get the information related to a Bill.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
billId required | integer Bill ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "data": {
- "id": 33963,
- "carePlanId": 69215,
- "companyId": 69215,
- "operatorId": 69215,
- "type": "full",
- "direction": "incoming",
- "date": "2020-01-01 00:00:00",
- "net": 12.23,
- "stamp": 12.23,
- "numberIncludingPrefix": "123",
- "createdAt": "2021-02-18 10:30:47"
}
}
Get a filtered list of bills. By default, the list of bills is limited to the last 31 calendar days. You can filter bills using a maximum time range of 31 days.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
dateStart | date-time <Y-m-d> Start date |
dateEnd | date-time <Y-m-d> End date |
type | string Enum: "full" "partial" "credit" "proforma" Bill Type |
direction | string Enum: "incoming" "outgoing" Bill direction |
carePlanId | integer Care Plan ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "count": 0,
- "data": [
- {
- "id": 33963,
- "carePlanId": 69215,
- "companyId": 69215,
- "operatorId": 69215,
- "type": "full",
- "direction": "incoming",
- "date": "2020-01-01 00:00:00",
- "net": 12.23,
- "stamp": 12.23,
- "numberIncludingPrefix": "123",
- "createdAt": "2021-02-18 10:30:47"
}
]
}
Get a list of liabilities for a given bill ID.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
billId required | integer Bill ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "count": 0,
- "data": [
- {
- "id": 33963,
- "billId": 69215,
- "date": "2020-01-01",
- "amount": "12.23",
- "createdAt": "2021-02-18 10:30:47",
- "relatedToInsurance": false,
- "sistemaTsExpenseType": "tk"
}
]
}
Delete a bill liability from the given archive.
practiceId required | integer Practice id |
archiveId required | integer Archive id |
billId required | integer Bill ID |
liabilityId required | integer Liability id |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
Get a specific Care Plan defined by its ID
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
carePlanId required | integer Care Plan ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "data": [
- {
- "id": 132,
- "branch": "dentistry",
- "name": "Piano #1",
- "state": "estimate",
- "dateAccepted": "2024-08-14",
- "findingId": 132,
- "priceListId": 132,
- "operatorId": 132,
- "personalAssistantId": 132,
- "carePlanDiscardReasonId": 132,
- "createdAt": "2024-08-14",
- "text": "estimate",
- "background": false,
- "createdThroughAppointment": false,
- "isSigned": false,
- "discountPercentage": 0,
- "carePlanEntriesCount": 1,
- "price": 6000,
- "discountedPrice": 6000,
- "grossPrice": 6000,
- "grossDiscountedPrice": 6000,
- "doneAmount": 0,
- "billedAmount": 0,
- "creditedAmount": 0,
- "billableAmount": 0,
- "fullBillsCount": 0,
- "liabilities": "[]"
}
]
}
Returns if the specified CarePlan is signed
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
carePlanId required | integer Care Plan ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "isSigned": "false"
}
Get the information related to all configured chairs.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "count": 0,
- "data": [
- {
- "id": 33963,
- "name": "Poltrona 1",
- "deleted": false
}
]
}
Get the information related to all configured colors.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "count": 0,
- "data": [
- {
- "id": 33963,
- "backgroundColor": "e91e63",
- "textColor": "ffffff"
}
]
}
Get the practice and archive ID that are related to the given API key.
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "data": {
- "practiceId": 33100,
- "archiveId": 44500
}
}
Get the list of all Custom Object Fields. By default, custom fields of all object types (patient, care_plan, etc.) will be returned. You can filter by Object type if you just need the custom field of a specific Object Type.
practiceId required | integer Practice ID |
archive required | integer Archive ID |
objectType | string Filter by Object Type (f.e. patient or care_plan) |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "count": 0,
- "data": [
- {
- "id": 8364,
- "objectType": "patient",
- "label": "Person Height",
- "technicalName": "personHeight",
- "type": "dropdown",
- "choices": [
- "string"
]
}
]
}
Create a Custom Object Field.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
id | integer Custom Object Field ID |
objectType | string The object type to which the field is related to (f.e. patient or care_plan). |
label | string The label of the field |
technicalName | string The technical name of the field. |
type | string The type of the field (f.e. single_line_text, single_checkbox, dropdown). |
choices | Array of strings The list of dropdown choices. This is only relevant if type is 'dropdown'. |
{- "id": 8364,
- "objectType": "patient",
- "label": "Person Height",
- "technicalName": "personHeight",
- "type": "dropdown",
- "choices": [
- "string"
]
}
{- "status": "success",
- "data": {
- "id": 8364,
- "objectType": "patient",
- "label": "Person Height",
- "technicalName": "personHeight",
- "type": "dropdown",
- "choices": [
- "string"
]
}
}
Retrieves a list of documents for a specified patient, including each document's name, type, creation date, and download URL.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
patientId required | integer Patient ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "count": 0,
- "data": [
- {
- "id": 0,
- "name": "document.jpg",
- "folderId": "12345",
- "type": "xray",
- "createdAt": "2020-05-05 14:00:00",
}
]
}
Add a new document to the selected patient. You can check the file inside the Patient profile -> Document tab.
practiceId required | integer Practice id |
archiveId required | integer Archive id |
patientId required | integer Patient ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
base64Data required | string base64 encoded file data |
type required | string Enum: "text" "xray" "image" "identification" "electronic_signature_patient_details" "electronic_signature_patient_details_and_terms_and_conditions" "other" File type |
name required | string File name |
folderName required | string Folder name where the document it's going to be |
{- "base64Data": "string",
- "type": "text",
- "name": "string",
- "folderName": "string"
}
{- "status": "success",
- "data": {
- "id": 0,
- "name": "document.jpg",
- "folderId": "12345",
- "type": "xray",
- "createdAt": "2020-05-05 14:00:00",
}
}
Retrieve the information of the selected document. The information includes the name, type, creation date and download URL.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
patientId required | integer Patient ID |
documentId required | integer Document ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "data": {
- "id": 0,
- "name": "document.jpg",
- "folderId": "12345",
- "type": "xray",
- "createdAt": "2020-05-05 14:00:00",
}
}
Triggers the download of a specific document's content for a patient, providing direct access to the document's binary file.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
patientId required | integer Patient ID |
documentId required | integer Document ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
Get a list of free slots available for a duration of time starting from the startDate.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
startDate required | date-time <Y-m-d> Start date |
endDate | date-time <Y-m-d> End date |
duration required | integer Slot duration (in minutes) |
operatorIds | Array of integers Example: operatorIds=1,2,3,4 Operator's ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "count": 0,
- "data": [
- {
- "chairId": 2285362,
- "date": "2020-01-01",
- "operatorId": 965563,
- "time": "00:00:00"
}
]
}
Get the information related to all configured operators.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
ignoreDeleted | bool Example: ignoreDeleted=true To ignore deleted operators otherwise deleted operators will be included |
italianFiscalCode | string filter Operator by italianFiscalCode |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "count": 0,
- "data": [
- {
- "id": 33963,
- "name": "Mario Rossi",
- "italianFiscalCode": "AAA BBB 99H11 L999X",
- "sequenceNumber": 1,
- "deleted": false
}
]
}
By passing in the appropriate options, you can search for available patients in the system. Custom fields have an underscore as prefix
practiceId required | integer Practice id |
archiveId required | integer Archive id |
phoneNumberPrefix | string <0039> Phone number prefix |
phoneNumber | string <1112233444> Phone number |
italianFiscalCode | string Example: italianFiscalCode=RSSMRA85T10A562S To filter patients by italianFiscalCode |
offset | integer Offset to move the result window forward |
limit | integer Number of results in response |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "links": { },
- "total": 1,
- "offset": 0,
- "limit": 100,
- "results": [
- {
- "id": 1,
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "emailEnabled": true,
- "emailValid": "true",
- "phoneNumbers": [
- {
- "id": 0,
- "prefix": "string",
- "number": "string",
- "label": "string",
- "smsEnabled": true
}
], - "gender": "m",
- "street": "Via Albertazzi 1",
- "city": "Milano",
- "postcode": "20100",
- "province": "MI",
- "dateOfBirth": "1989-10-11",
- "placeOfBirth": "Milano",
- "italianFiscalCode": "RSSMRA85T10A562S",
- "job": "string",
- "yearlyNumberingYear": "2018",
- "yearlyNumberingNumber": "2018",
- "defaultDiscount": 20,
- "sourceId": 283,
- "priceListId": 283,
- "emailReminderPossible": "true",
- "smsReminderPossible": "true",
- "createdAt": "2018-04-01 00:00:00",
- "documentSignatureEmailPossible": "true",
- "lastModifiedAt": "2022-06-17 00:00:00",
- "_sampleCustomField": "string"
}
]
}
Adds a new patient to the system. You can also add the custom patient fields that you defined on Gestione -> Pazienti -> Impostazioni Paziente
by just putting the technical name and the value on the body.
practiceId required | integer Practice id |
archiveId required | integer Archive id |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
firstName required | string Patient first name |
lastName required | string Patient last name |
string Patient last name | |
emailEnabled | boolean If the patient has email sending enabled |
gender | string Enum: "m" "f" Gender of the patient |
street | string Street address of the patient |
city | string City of the patient |
postcode | string Zip code of the patient |
province | string Province of the patient |
dateOfBirth | string Date of birth of the patient |
placeOfBirth | string City of birth |
italianFiscalCode | string Italian fiscal code |
job | string Software Engineer |
yearlyNumberingYear | string Yearly numbering year |
yearlyNumberingNumber | integer Yearly numbering number |
defaultDiscount | integer Default percentage of discount |
sourceId | integer ID of the patient's source. You can customize the sources available in the |
priceListId | integer Price list ID. You can find the price lists in the |
emailReminderPossible | boolean Is possible to send emails reminders to the patient? |
smsReminderPossible | boolean Is possible to send SMS reminders to the patient? |
createdAt | string <date-time> Creation date |
documentSignatureEmailPossible | boolean Is possible to send documents requesting signature? |
lastModifiedAt | string <date-time> Last modified date |
_sampleCustomField | string <string> The custom field value |
{- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "emailEnabled": true,
- "gender": "m",
- "street": "Via Albertazzi 1",
- "city": "Milano",
- "postcode": "20100",
- "province": "MI",
- "dateOfBirth": "1989-10-11",
- "placeOfBirth": "Milano",
- "italianFiscalCode": "RSSMRA85T10A562S",
- "job": "string",
- "yearlyNumberingYear": "2018",
- "yearlyNumberingNumber": "2018",
- "defaultDiscount": 20,
- "sourceId": 283,
- "priceListId": 283,
- "emailReminderPossible": "true",
- "smsReminderPossible": "true",
- "createdAt": "2018-04-01 00:00:00",
- "documentSignatureEmailPossible": "true",
- "lastModifiedAt": "2022-06-17 00:00:00",
- "_sampleCustomField": "string"
}
{- "status": "success",
- "data": [
- {
- "id": 1,
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "emailEnabled": true,
- "emailValid": "true",
- "phoneNumbers": [
- {
- "id": 0,
- "prefix": "string",
- "number": "string",
- "label": "string",
- "smsEnabled": true
}
], - "gender": "m",
- "street": "Via Albertazzi 1",
- "city": "Milano",
- "postcode": "20100",
- "province": "MI",
- "dateOfBirth": "1989-10-11",
- "placeOfBirth": "Milano",
- "italianFiscalCode": "RSSMRA85T10A562S",
- "job": "string",
- "yearlyNumberingYear": "2018",
- "yearlyNumberingNumber": "2018",
- "defaultDiscount": 20,
- "sourceId": 283,
- "priceListId": 283,
- "emailReminderPossible": "true",
- "smsReminderPossible": "true",
- "createdAt": "2018-04-01 00:00:00",
- "documentSignatureEmailPossible": "true",
- "lastModifiedAt": "2022-06-17 00:00:00",
- "_sampleCustomField": "string"
}
]
}
Get patient info. It also works for deleted patients, but returns only some data. The endpoint will also return the custom patient field values. These custom fields have an underscore as prefix
patientId required | integer Patient id |
practiceId required | integer Practice id |
archiveId required | integer Archive id |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "data": {
- "id": 1,
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "emailEnabled": true,
- "emailValid": "true",
- "phoneNumbers": [
- {
- "id": 0,
- "prefix": "string",
- "number": "string",
- "label": "string",
- "smsEnabled": true
}
], - "gender": "m",
- "street": "Via Albertazzi 1",
- "city": "Milano",
- "postcode": "20100",
- "province": "MI",
- "dateOfBirth": "1989-10-11",
- "placeOfBirth": "Milano",
- "italianFiscalCode": "RSSMRA85T10A562S",
- "job": "string",
- "yearlyNumberingYear": "2018",
- "yearlyNumberingNumber": "2018",
- "defaultDiscount": 20,
- "sourceId": 283,
- "priceListId": 283,
- "emailReminderPossible": "true",
- "smsReminderPossible": "true",
- "createdAt": "2018-04-01 00:00:00",
- "documentSignatureEmailPossible": "true",
- "lastModifiedAt": "2022-06-17 00:00:00",
- "_sampleCustomField": "string"
}
}
Delete a patient from the given archive.
practiceId required | integer Practice id |
patientId required | integer Patient id |
archiveId required | integer Archive id |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
Update an existing patient from the archive. You can also update custom fields that you defined in Gestione -> Pazienti -> Impostazioni Paziente
by using the technical name with an underscore as prefix.
practiceId required | integer Practice id |
patientId required | integer Patient id |
archiveId required | integer Archive id |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
firstName required | string Patient first name |
lastName required | string Patient last name |
string Patient last name | |
emailEnabled | boolean If the patient has email sending enabled |
gender | string Enum: "m" "f" Gender of the patient |
street | string Street address of the patient |
city | string City of the patient |
postcode | string Zip code of the patient |
province | string Province of the patient |
dateOfBirth | string Date of birth of the patient |
placeOfBirth | string City of birth |
italianFiscalCode | string Italian fiscal code |
job | string Software Engineer |
yearlyNumberingYear | string Yearly numbering year |
yearlyNumberingNumber | integer Yearly numbering number |
defaultDiscount | integer Default percentage of discount |
sourceId | integer ID of the patient's source. You can customize the sources available in the |
priceListId | integer Price list ID. You can find the price lists in the |
emailReminderPossible | boolean Is possible to send emails reminders to the patient? |
smsReminderPossible | boolean Is possible to send SMS reminders to the patient? |
createdAt | string <date-time> Creation date |
documentSignatureEmailPossible | boolean Is possible to send documents requesting signature? |
lastModifiedAt | string <date-time> Last modified date |
_sampleCustomField | string <string> The custom field value |
{- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "emailEnabled": true,
- "gender": "m",
- "street": "Via Albertazzi 1",
- "city": "Milano",
- "postcode": "20100",
- "province": "MI",
- "dateOfBirth": "1989-10-11",
- "placeOfBirth": "Milano",
- "italianFiscalCode": "RSSMRA85T10A562S",
- "job": "string",
- "yearlyNumberingYear": "2018",
- "yearlyNumberingNumber": "2018",
- "defaultDiscount": 20,
- "sourceId": 283,
- "priceListId": 283,
- "emailReminderPossible": "true",
- "smsReminderPossible": "true",
- "createdAt": "2018-04-01 00:00:00",
- "documentSignatureEmailPossible": "true",
- "lastModifiedAt": "2022-06-17 00:00:00",
- "_sampleCustomField": "string"
}
{- "status": "success",
- "data": [
- {
- "id": 1,
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "emailEnabled": true,
- "emailValid": "true",
- "phoneNumbers": [
- {
- "id": 0,
- "prefix": "string",
- "number": "string",
- "label": "string",
- "smsEnabled": true
}
], - "gender": "m",
- "street": "Via Albertazzi 1",
- "city": "Milano",
- "postcode": "20100",
- "province": "MI",
- "dateOfBirth": "1989-10-11",
- "placeOfBirth": "Milano",
- "italianFiscalCode": "RSSMRA85T10A562S",
- "job": "string",
- "yearlyNumberingYear": "2018",
- "yearlyNumberingNumber": "2018",
- "defaultDiscount": 20,
- "sourceId": 283,
- "priceListId": 283,
- "emailReminderPossible": "true",
- "smsReminderPossible": "true",
- "createdAt": "2018-04-01 00:00:00",
- "documentSignatureEmailPossible": "true",
- "lastModifiedAt": "2022-06-17 00:00:00",
- "_sampleCustomField": "string"
}
]
}
Get the information related to all payment types.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "count": 0,
- "data": [
- {
- "id": 33963,
- "name": "Contante",
- "deleted": false
}
]
}
Get the information related to the practice.
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "data": {
- "id": 33963,
- "name": "Studio Rossi"
}
}
Get the information related to all configured specialties.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "count": 0,
- "data": [
- {
- "id": 5,
- "name": "Prevenzione",
- "sequenceNumber": "3",
- "createdAt": "2021-02-18 10:30:47",
- "deleted": false,
- "operatorIds": [
- 177,
- 250,
- 370
]
}
]
}
Get a filtered list of undeleted transactions. By default, the list of transaction is limited to the last 31 calendar days. You can filter transactions using a maximum time range of 31 days.
practiceId required | integer Practice ID |
archiveId required | integer Archive ID |
dateStart | date-time <Y-m-d> Start date |
dateEnd | date-time <Y-m-d> End date |
direction | string Enum: "incoming" "outgoing" Transaction direction |
billId | integer Bill ID |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "count": 0,
- "data": [
- {
- "id": 33963,
- "direction": "incoming",
- "amount": 12.12,
- "date": "2020-01-01",
- "billId": 69215,
- "accountId": 69215,
- "paymentTypeId": 69215,
- "createdAt": "2021-02-18 10:30:47",
- "deleted": false,
- "verified": true,
- "relatedToInsurance": false,
- "sistemaTsExpenseType": "tk"
}
]
}
Create an transaction. If the transaction is related to a bill, the billId parameter is required. If you are dealing with a bill liability, please remember to delete the bill liability after the transaction is created.
practiceId required | integer Practice id |
archiveId required | integer Archive id |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
amount required | number Amount of transaction |
date required | string <date> Transaction's date |
direction required | string <string> Enum: "incoming" "outgoing" Transaction's direction |
billId | integer Bill's ID |
accountId required | integer Account ID. |
paymentTypeId | integer Payment type ID |
relatedToInsurance | boolean Trasaction related to a insurance |
sistemaTsExpenseType | string Enum: "tk" "tk2" "fc" "fv" "sp" "ad" "as" "sr" "sr2" "ct" "pi" "ic" "aa" "nn" Sistema TS type |
{- "amount": 23.12,
- "date": "2020-01-01",
- "direction": "incoming",
- "billId": 69215,
- "accountId": 85665,
- "paymentTypeId": 2285362,
- "relatedToInsurance": false,
- "sistemaTsExpenseType": "tk"
}
{- "status": "success",
- "data": {
- "id": 33963,
- "direction": "incoming",
- "amount": 12.12,
- "date": "2020-01-01",
- "billId": 69215,
- "accountId": 69215,
- "paymentTypeId": 69215,
- "createdAt": "2021-02-18 10:30:47",
- "deleted": false,
- "verified": true,
- "relatedToInsurance": false,
- "sistemaTsExpenseType": "tk"
}
}
Get a care plan entry
practiceId required | integer |
archiveId required | integer |
carePlanId required | integer |
carePlanEntryId required | integer |
{- "status": "success",
- "data": {
- "entryId": 132,
- "price": 6000,
- "discountedPrice": 6000,
- "discountPercentage": 0,
- "absoluteDiscount": 0,
- "createdAt": "2024-08-14",
- "useInventory": "?",
- "consumptionPrice": "?",
- "done": "false",
- "dateDone": "2024-08-14",
- "laboratoryPurpose": "?",
- "laboratoryCosts": "?",
- "multiplyLaboratoryCosts": "?",
- "compensationType": "?",
- "compensationValue": "?",
- "deleted": "false",
- "sequenceNumber": 1,
- "numberOfExecutions": 2,
- "calculatedVariableCosts": 0,
- "calculatedContributionMargin": 0,
- "calculateCompensationBasedOnDiscount": "?",
- "calculateCompensationAfterCosts": "?",
- "hasPhases": "false",
- "doneAmount": 0,
- "vatPercentage": 19,
- "udi": "?",
- "label": "Apicectomia mesiale"
}
}
Get all the related phone numbers of an specific patient.
practiceId required | integer Practice id |
archiveId required | integer Archive id |
patientId required | integer Patient id |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "links": { },
- "total": 1,
- "offset": 0,
- "limit": 100,
- "results": [
- {
- "id": 0,
- "prefix": "string",
- "number": "string",
- "label": "string",
- "smsEnabled": true
}
]
}
Add a new phone number to an existing patient
practiceId required | integer Practice id |
archiveId required | integer Archive id |
patientId required | integer Patient id |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
prefix | string Prefix of the phone number |
number | string Number of the phone number |
label | string Type of the phone number |
smsEnabled | boolean Is this phone available for SMS? |
{- "prefix": "string",
- "number": "string",
- "label": "string",
- "smsEnabled": true
}
{- "status": "success",
- "data": [
- {
- "id": 0,
- "prefix": "string",
- "number": "string",
- "label": "string",
- "smsEnabled": true
}
]
}
Get an specific phone number of a patient.
practiceId required | integer Practice id |
archiveId required | integer Archive id |
patientId required | integer Patient id |
phoneNumberId required | integer Phone number id |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
{- "status": "success",
- "data": {
- "id": 0,
- "prefix": "string",
- "number": "string",
- "label": "string",
- "smsEnabled": true
}
}
Modify an specific phone number from a patient
practiceId required | integer Practice id |
archiveId required | integer Archive id |
patientId required | integer Patient id |
phoneNumberId required | integer Phone number id |
X-Api-Key required | apiKey Example: JcqPcPQ0Cg07vfYatzZPvuJO3ueuaec3 API Key Authentication |
prefix | string Prefix of the phone number |
number | string Number of the phone number |
label | string Type of the phone number |
smsEnabled | boolean Is this phone available for SMS? |
{- "prefix": "string",
- "number": "string",
- "label": "string",
- "smsEnabled": true
}
{- "status": "success",
- "data": [
- {
- "id": 0,
- "prefix": "string",
- "number": "string",
- "label": "string",
- "smsEnabled": true
}
]
}