Description


This API gives read-only access to Fuga data.


These endpoints typically require a considerable amount of processing, so rate and time-of-day limitations might apply. If so, these are communicated in the response of an unsuccessful request.


We also provide a basic gui to test/use this API: Basic GUI.


For logged in users there are also ER diagrams available.


Endpoints

Authentication

Basic Authentication, username and password are provided by Sonetas upon request and after validation with a customer responsible.

 

Every application using an API must also provide an applicationKey when it uses the API. The applicationKey must be set as a custom http header with name'X-Application-Key' and can be requested from Sonetas at fuga@sonetas.eu. Without valid applicationKey access will be denied.


Query


Practice independent info


https://reporting.sonetas.eu/fuga/rest/super/reporting


GET practices


RETURNS

http status 200 ok, returning a json array of practiceIds to which this user has access.


or other http status on error


Practice specific info


https://reporting.sonetas.eu/fuga/rest/super/reporting/{practiceId}


GET info


RETURNS

http status 200 ok, returning json with some info about the practice


or other http status on error


Reports


https://reporting.sonetas.eu/fuga/rest/super/reporting/{practiceId}


with {practiceId} the queried practice.


All reports can be requested in xml or json format. Below table gives an overview of the available reports and their (filter) parameters. Parameters with an (M) are mandatory. Dates are encoded as yyyyMMdd.


Report typeDescriptionParameters
Bookkeeping

TClientWithInvoiceCreditNoteListList of clients that received an invoice or creditNote in given period

startDate (M), endDate (M)

TInvoiceListAll invoices with a reference date (invoice date or creation date) and the correct payment status (Paid or not) in the requested period.

startDate (M), endDate (M), referenceDate(TFugaCreationDate/

TFinAccountDate(default)), paymentStatus (null/TPaid/

TNotPaid)

TInvoiceLineListList of invoice lines. Each line contains a 'TArticleId' column which corresponds with the 'TIdWithOffset' in the TProducts/TActs/TProtocols reports.

startDate (M), endDate (M), referenceDate(TFugaCreationDate/

TFinAccountDate(default))

TWithoutInvoiceListAll receipts with a reference date (receipt date or creation date) in the requested period.

startDate (M), endDate (M), referenceDate(TFugaCreationDate/

TFinAccountDate(default)), paymentStatus (null/TPaid/

TNotPaid)

TWithoutInvoiceLineListList of receipt lines (settlement/bill without invoice). The 'TArticleId' column corresponds with the 'TIdWithOffset' in the TProducts/TActs/TProtocols reports.

startDate (M), endDate (M), referenceDate(TFugaCreationDate/

TFinAccountDate(default))

TCreditNoteListAll credit notes with a reference date (creditNote date, last modified date or creation date) in the requested period.

startDate (M), endDate (M), 

referenceDate(TFugaLastModifiedDate/TFugaCreationDate/

TCreditNoteDate(default))

TCreditNoteLineListAll credit note details for a credit note with a reference date (creditNote date, last modified date or creation date) in the requested period.

startDate (M), endDate (M), 

referenceDate(TFugaLastModifiedDate/TFugaCreationDate/

TCreditNoteDate(default))

TInvoiceCreditNoteListList of invoices and creditnotes in a certain periodstartDate (M), endDate (M)
TPaymentListList of payments in a certain period with a certain payment

startDate (M), endDate (M), 

referenceDate(TFugaLastModifiedDate/TFugaCreationDate/

TPaymentDate(default)), paymentMethod (null/TCash/

TMoneyTransfer/….)

TOpenAccountsList of open accounts (locked billable clientInteractions for which no invoice is made yet)
TNotPaidFinAccountsList of all unpaid invoices and receipts
TNotPaidFinReminders    List of all unpaid finReminders (dossier costs)
TVatClientListList of VAT clients

startDate (M), endDate (M)

TIntraCommClientListList of IC VAT clients

startDate (M), endDate (M)

TLatePayersList of clients with invoices not paid before due date
Other

TActiveClientListList of clients that had a clientInteraction in given period

startDate (M), endDate (M)


TNewClientListList of clients that had their first clientInteraction in given period

startDate (M), endDate (M)


TActivePersonListList of persons with status 'active' (name, contact info and address)partyType (TClient/TSupplier/TColleague/TFarrier/TLab/TInsurer/TPensionHolder)
TActiveAnimalListList of animals that had a clientInteraction in given period

startDate (M), endDate (M)


TClientInteractionListList of clientInteractions in given period (based on date of the clientInteraction)

startDate (M), endDate (M), referredToUsOnly (true/false, default=false)

TTreatmentReminderListList of expected treatments in given period

startDate (M), endDate (M)


TProductsList of all productsdepotNumber
TActsList of all acts
TProtocolsList of all protocols
TCurrentStockListCurrent stock
THistoricStockListHistoric stock

thresholdDate (M)

TIncomingRegisterListList of product deliveries based on delivery date

startDate (M), endDate (M)

TOutgoingRegisterListList of outgoing products

startDate (M), endDate (M)

TExecutedActsList of executed acts

startDate (M), endDate (M)

TExecutedProtocols2List of executed protocols

startDate (M), endDate (M)

TFinancialOverviewWorkDetailed overview of all billed items. The 'TArticleId' column corresponds with the 'TIdWithOffset' in the TProducts/TActs/TProtocols reports.

referenceDate (M:TBciDate/TCheckoutDate), startDate (M), 

endDate (M)

TCarePlanSubscriptionsList of care plan subscriptionscurrentOnly (true/false, default=true)
TAppointmentsList of appointments

startDate (M), endDate (M), bciType (null/TConsultationAtPractice/TOperation/THospitalization/

THomeVisit/TOperationOnSite/TSalesAtPractice/TSalesOnSite/

TExternal)

TCoworkersList of coworkers


GET report/{reportType}/?param1=value1&param2=value2


with:

- parami=valuei: the parameters and values for the specific report type

- Accept header set to 'application/json', 'application/xml' or 'text/plain' ('text/plain' will return data in csv format)


RETURNS

http status 200 ok, returning xml or json


or other http status on error