Doorbell identification

Hint

For each request on this page you need to add identication data. More information about this can be found in Identification / access chapter.

Introduction

Bricks Switchboard has a couple methods to create a procedure that makes it possible for patients to access the practice with an, for example, QR-code and register them as “is present” in Bricks Huisarts.

Step 1: Select agendas

To make it possible to send patients an email so that they can gain access to the practice, you must first configure in your application for which agendas and therefore appointments (patients) may have access to the practice.

Use the following request to retrieve the all practice agendas and let the practice user select the agendas that should be used:

Request

{
   "Name": "{{name}}",
   "Key": "{{key}}",
   "Target": "{{target}}",
   "Method": "GetAgendas"
}

Response

{
   "agendas": [
      {
            "Id": 10088,
            "Naam": "Assistent"
      },
      {
            "Id": 10090,
            "Naam": "Doctor"
      }
   ],
   "ReturnValue": {
      "ResponseCode": 200,
      "ResponseText": "OK",
      "Melding": "OK",
      "Gelukt": true
   }
}

Response values

  • Id: ID of the agenda

  • Naam: Name of the agenda

Step 2: Get appointments

Based on the agenda selection that is configure in your application you can retrieve the appointments for a specific period. With this selection you can send an, for example, QR-code in an email.

Request

{
   "Name": "{{name}}",
   "Key": "{{key}}",
   "Target": "{{target}}",
   "Method": "GetAfsprakenDeurToegang",
   "start": "2023-05-02T00:00:00",
   "eind": "2023-05-05T00:00:00",
   "agendaIds": [10090]
}

Request values

  • start: Start date and time of the selection

  • eind: End date and time of the selection

  • agendaIds: ID’s of the agendas

Response

{
   "afspraken": [
      {
         "Id": 115883,
         "PatientId": 157376,
         "AgendaId": 10090,
         "AgendaNaam": "Dhr. P. Patient",
         "Opmerkingen": null,
         "PortaalAfspraak": false,
         "GemaaktDoorPraktijk": false,
         "Start": "2023-05-04T12:00:00",
         "Eind": "2023-05-04T12:10:00",
         "AfspraakStatus": "",
         "wisAfspraakToken": null,
         "Metas": {},
         "BlokType": null,
         "Email": "patient@example.com",
         "Voornaam": "Piet",
         "Achternaam": "Patiënt",
         "Geslacht": "M"
      }
   ],
   "ReturnValue": {
      "ResponseCode": 200,
      "ResponseText": "OK",
      "Melding": "OK",
      "Gelukt": true
   }
}

Response values

  • AgendaId: Connected Agenda (ID)

  • AgendaNaam: Name of the agenda that contains the appointment

  • Start: Start time of the appointment

  • Eind: End time of the appointment

  • AfspraakStatus can contain the following options:
    • NietAanwezig (1): Patient is not present

    • Aanwezig (2): Patient is in waiting room

    • Gebeurd (3): Appointment finished

    • NietGekomen (4): Patient did not show up

    • Bezig (5): Appointment started/patient at the doctor

  • WisAfspraakToken: Token that can be used to cancel the appointment in combination with the cancel appointment url. For logged in users cancel the appointment using the WisAfspraakById method.

  • BlokType: Contains information of the connected blocktype for the appointment

  • Email: Patient email address

  • Voornaam: First name

  • Achternaam: Family name

  • Geslacht (gender) can contain the following options:
    • O: Unknown

    • M: Male

    • V: Female

Step 3: Send alert to users (optional)

Warning

  • Experimental feature

  • This options is only working in the webbased version of Bricks Huisarts.

Send a message/alert to all logged in users.

Request

{
   "Name": "{{name}}",
   "Key": "{{key}}",
   "Target": "{{target}}",
   "Method": "StuurAlert",
   "tekst": "Patient Jansen heeft de deur geopend"
}
  • tekst: Text that is displayed in Bricks Huisarts.

Response

{}

Step 4: Register patient as “is present”

As soon as the patient accessed the practice you can use the following request to tell Bricks Huisarts that the patient has is present in the practice/waiting room.

Request

{
   "Name": "{{name}}",
   "Key": "{{key}}",
   "Target": "{{target}}",
   "Method": "MeldPatientAan",
   "identifier": "157376"
}

Info

When setting an appointment status to “is present,” the system follows this process:

  1. Check for multiple patients with the same “identifier” for today:

    • If multiple patients are found, the API returns an error message indicating this.
      In this situation there is no 100% guarantee that the correct patient will be set to “is present”.
    • If only one patient is found, the logic proceeds to the next step.

  2. Check for multiple appointments for the patient:

    • If multiple appointments exist, the system selects the one closest to the current time and sets its status to “is present.”

    • If there is only one appointment, between now minus 30 minutes and the end of the day, it is set to “is present.”

Request values

  • identifier can contain the following options:

    • Social security number (BSN)

    • Patient ID/HIS patient number

    • Date of birth (dd-mm-yyyy or yyyymmdd)

Request values

  • identifier: Patient ID/HIS patient number

Response (success)

{
   "tijdstip": "2023-05-24T15:50:00",
   "agenda": "Doctor",
   "ReturnValue": {
      "ResponseCode": 200,
      "ResponseText": "OK",
      "Melding": "OK",
      "Gelukt": true
   }
}

Response (no patient/appointments found)

{
   "tijdstip": "0001-01-01T00:00:00",
   "agenda": "",
   "ReturnValue": {
      "ResponseCode": 500,
      "ResponseText": "Server error",
      "Melding": "0 patienten gevonden met afspraak vandaag",
      "Gelukt": false
   }
}

The Melding can contain messages like:

Message

Remark

0 afspraken gevonden die niet intern zijn

No appointments found that are not marked as “internal appointment” for the given identifier

0 patienten gevonden met afspraak vandaag

No patients found for the given identifier

Wel afspraken maar 0 afspraken gevonden zonder “Interne afspraak, niet in portaal tonen”

There are appointments found for the given identifier, but all of them are marked as internal appointments


Last update: 03-03-2025 11:26