cancelAppointment

1.1 Afspraken

Annuleert een afspraak.

N.B. om een afspraak definitief te verwijderen, gebruik je removeAppointment.

  • Request
  • Response
  • Voorbeeld
Id
integer
Id van de afspraak
verplicht
Mode
string
De manier waarop de afspraak geannuleerd wordt. 'customer' (standaardwaarde) annuleert op de manier waarop de klant het zou doen. Dit houdt bijvoorbeeld rekening met de maximale tijd voor annuleren. 'company' annuleert alsof het bedrijf het zou doen. Hierbij is meer vrijheid en zijn meer configuratiemogelijkheden.
Remarks
string
Opmerkingen bij het annuleren (alleen als Mode='company')
Confirmations
integer
Geeft aan of er een bevestiging naar de klant gestuurd wordt. Deze waarde heeft alleen invloed als Mode='company'; als Mode='customer' worden de instellingen van het systeem gevolgd.

Mogelijke waarden: 0 geen bevestigingen1 bevestiging per e-mail2 bevestiging per sms3 bevestiging per mail en sms

DryRun
integer
Als deze parameter wordt gebruikt met de waarde 1, worden alleen de voorwaarden gecontroleerd zonder de afspraak te annuleren. Dit kan nuttig zijn om te bepalen of de klant nog op tijd is voor het annuleren van de afspraak. Als de parameter niet wordt gebruikt, of de waarde 0 heeft, wordt de afspraak direct geannuleerd.
niets
Deze functie geeft geen data terug. Controleer de status in de response om te zien of het annuleren is gelukt.

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=cancelAppointment&AgendaId=123&id=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 11:55:03</Date>
    <Timestamp>1648554903</Timestamp>
    <Status>success</Status>
  </Status>
</Response>

Naar boven

confirmAppointment

1.1 Afspraken

Bevestigt een afspraak met een eerder verzonden bevestigingscode. Deze code wordt per e-mail of SMS verzonden naar de klant, afhankelijk van de configuratie. Indien de code juist is wordt de afspraakstatus gewijzigd van PENDING naar CONFIRMED.

  • Request
  • Response
  • Voorbeeld
id
integer
Id van de afspraak
verplicht
ConfirmationCode
integer
Alfa-numerieke waarde die de consument per e-mail of SMS ontvangen heeft.
verplicht
Confirmed
integer

Mogelijke waarden: 1 success0 failed

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=confirmAppointment&id=123&ConfirmationCode=abc123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 12:00:45</Date>
    <Timestamp>1648555245</Timestamp>
    <Message></Message>
    <Status>success</Status>
  </Status>
</Response>

Naar boven

getAppointment

1.1 Afspraken

Haalt de details van een specifieke afspraak op.

  • Request
  • Response
  • Voorbeeld
Id
integer
Id van de afspraak
verplicht
Id
integer
Id van de afspraak
Name
string
Naam
Description
string
Omschrijving
AgendaId
integer
Id van de agenda waarin de afspraak staat
StartTime
date
Starttijd van de afspraak
Notatie: yyyy-mm-dd hh:mm:ss
FinishTime
date
Eindtijd van de afspraak
Notatie: yyyy-mm-dd hh:mm:ss
BlockedTime
date
Eindtijd van de afspraak inclusief eventuele buffertijd
Notatie: yyyy-mm-dd hh:mm:ss
Capacity
integer
Het aantal personen bij de afspraak. In de meeste gevallen zal dit de waarde 1 hebben; alleen voor groepsafspraken heeft dit een hogere waarde
AppointmentTypeId
integer
Id van het appointmentType
CustomerId
integer
Id van de customer
CustomerName
string
De volledige naam van de customer (indien van toepassing)
Status
integer
Status van de afspraak

Mogelijke waarden: 1 enabled2 disabled4 provisional

Afspraken met Status 4 (provisional) zijn nog niet definitief en u dient deze zelf nog te bevestigen. Zie hiervoor de requiresConfirmation en confirmAppointment API.
Resources
array
Lijst met resources die zijn gekoppeld aan de afspraak. Per resource zijn er drie (sub)velden: ResourceId, StartTime en FinishTime
CreateTime
date
Datum en tijd waarop de afspraak is aangemaakt
Notatie: yyyy-mm-dd hh:mm:ss
UpdateTime
date
Datum en tijd waarop de afspraak voor het laatst is gewijzigd
Notatie: yyyy-mm-dd hh:mm:ss
[variabel]
De eventuele extra velden die gekoppeld zijn aan de afspraak. Deze velden gebruiken de Key als veldnaam (zie getFields).

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getAppointment&id=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2024-02-07 11:59:40</Date>
    <Timestamp>1707303580</Timestamp>
    <Status>success</Status>
  </Status>
  <Appointment>
    <Id>123</Id>
    <Name>Springkussen</Name>
    <Description></Description>
    <AgendaId>123</AgendaId>
    <StartTime>2022-03-31 13:05:00</StartTime>
    <FinishTime>2022-03-31 14:05:00</FinishTime>
    <BlockedTime>2022-03-31 14:05:00</BlockedTime>
    <Capacity>1</Capacity>
    <AppointmentTypeId>123</AppointmentTypeId>
    <CustomerId>123</CustomerId>
    <CustomerName>Test Persoon</CustomerName>
    <Status>2</Status>
    <Label>4</Label>
    <Resources>
      <ResourceId>123</ResourceId>
      <StartTime>2022-03-31 13:05:00</StartTime>
      <FinishTime>2022-03-31 14:05:00</FinishTime>
    </Resources>
    <CreateTime>2022-03-22 10:32:25</CreateTime>
    <UpdateTime>2022-03-29 11:55:03</UpdateTime>
  </Appointment>
</Response>

Naar boven

getAppointments

1.1 Afspraken

Haalt de afspraken op van het bedrijf. Er kan optioneel gefilterd worden op bijvoorbeeld het afspraaktype, de resource en/of de datums van een afspraak.

  • Request
  • Response
  • Voorbeeld
StartDate
yyyy-mm-dd
Startdatum
EndDate
yyyy-mm-dd
Einddatum
UpdatedAfter
[tijd]
Indien gespecificeerd worden alleen de afspraken opgehaald die na dit tijdstip zijn gewijzigd.

Notatie: yyyy-mm-dd hh:mm:ss

CreatedAfter
[tijd]
Indien gespecificeerd worden alleen de afspraken opgehaald die na dit tijdstip zijn aangemaakt.

Notatie: yyyy-mm-dd hh:mm:ss

CustomerId
integer
Indien gespecificeerd, worden alleen de afspraken van deze customer opgehaald.
AppointmentTypeId
integer
Indien gespecificeerd, worden alleen de afspraken van dit appointmentType opgehaald.
ResourceId
integer
Indien gespecificeerd, worden alleen de afspraken van deze resource opgehaald.
IncludeCancelled
integer
Als dit de waarde 1 heeft, worden ook de geannuleerde afspraken opgehaald. Standaard worden alleen de actieve afspraken opgehaald.
AgendaId
integer
Id van de agenda. Omdat er maar een agenda is per bedrijf, is deze parameter niet langer verplicht. Als deze parameter wel wordt gebruikt moet hij overeenkomen met het id van de agenda van het bedrijf.
Limit
integer
Maximaal aantal afspraken dat wordt opgehaald. Standaard worden maximaal 500 afspraken opgehaald. Dit kan worden uitgebreid tot maximaal 1000 afspraken per aanroep.
Offset
integer
Eerste afspraak die wordt opgehaald.
FilterWorkflow
string
komma-gescheiden lijst met wachtkamer statussen. Indien ingevuld komen alleen afspraken met deze wachtkamer statussen terug ( zie grid, afspraak, status toevoegen )
Include
string
komma-gescheiden lijst met sleutelwoorden om extra informatie terug te koppelen. Geldige waarden zijn: payments
Het formaat van de geretourneerde afspraken is hetzelfde als dat van getAppointment()

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getAppointments&AgendaId=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 12:04:14</Date>
    <Timestamp>1648555454</Timestamp>
    <Status>success</Status>
    <Stats>
      <Limit>500</Limit>
      <Offset>0</Offset>
      <Records>2</Records>
      <TotalRecords>2</TotalRecords>
    </Stats>
  </Status>
  <Objects>
    <Appointment>
      <Id>123</Id>
      <Name>Intro buikspieren</Name>
      <Description></Description>
      <AgendaId>133</AgendaId>
      <StartTime>2020-03-31 16:30:00</StartTime>
      <FinishTime>2020-03-31 17:30:00</FinishTime>
      <BlockedTime>2020-03-31 17:30:00</BlockedTime>
      <Capacity>1</Capacity>
      <AppointmentTypeId>274</AppointmentTypeId>
      <CustomerId>123</CustomerId>
      <CustomerName>Ien Troh</CustomerName>
      <Status>1</Status>
      <Label>2</Label>
      <Resources>
        <ResourceId>123</ResourceId>
        <StartTime>2020-03-31 16:30:00</StartTime>
        <FinishTime>2020-03-31 17:30:00</FinishTime>
      </Resources>
      <CreateTime>2020-03-31 13:29:41</CreateTime>
      <UpdateTime>2020-03-31 13:29:51</UpdateTime>
    </Appointment>
    <Appointment>
      <Id>124</Id>
      <Name>Intro buikspieren</Name>
      <Description></Description>
      <AgendaId>123</AgendaId>
      <StartTime>2020-03-31 19:00:00</StartTime>
      <FinishTime>2020-03-31 20:00:00</FinishTime>
      <BlockedTime>2020-03-31 20:00:00</BlockedTime>
      <Capacity>1</Capacity>
      <AppointmentTypeId>123</AppointmentTypeId>
      <CustomerId>123</CustomerId>
      <CustomerName>Ien Troh</CustomerName>
      <Status>1</Status>
      <Label>2</Label>
      <Resources>
        <ResourceId>123</ResourceId>
        <StartTime>2020-03-31 19:00:00</StartTime>
        <FinishTime>2020-03-31 20:00:00</FinishTime>
      </Resources>
      <CreateTime>2020-03-31 13:29:16</CreateTime>
      <UpdateTime>2020-03-31 13:29:25</UpdateTime>
    </Appointment>
  </Objects>
</Response>

Naar boven

removeAppointment

1.1 Afspraken

Verwijdert een afspraak.

  • Request
  • Response
  • Voorbeeld
Id
integer
Id van de afspraak.
verplicht

Geen

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=removeAppointment&id=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Status>
	<APIVersion>1.0</APIVersion>
	<Date>2022-03-29 12:06:47</Date>
	<Timestamp>1648555607</Timestamp>
	<Message></Message>
	<Status>success</Status>
</Status>
</Response>

Naar boven

setAppointment

1.1 Afspraken

Slaat een afspraak op voor een consument.

Indien er verplichte velden zijn geconfigureerd, te verkrijgen met de getFields API, dan moet u deze meesturen in deze request.

  • Request
  • Response
  • Voorbeeld
AgendaId
integer
Id van de agenda.
verplicht
CustomerId
integer
Id van de customer.
verplicht
AppointmentTypeId
integer
Id van het appointmentType. Bij het bewerken van een afspraak wordt deze parameter genegeerd.
verplicht
ResourceId
integer
Id van de geselecteerde resource. Als deze parameter niet wordt gebruikt, kiest het systeem zelf een beschikbare resource. Bij het bewerken van een afspraak wordt deze parameter genegeerd.
Date
yyyy-mm-dd
Datum van de afspraak
verplicht
StartTime
hh:mm
Starttijd van de afspraak
verplicht
EndTime
hh:mm
Eindtijd van de afspraak. De eindtijd wordt alleen gebruikt als BookingMode=customer.
Id
integer
Optioneel kan het id van een bestaande appointment worden meegegeven. Dan wordt deze afspraak aangepast. Indien er geen id wordt meegegeven wordt een nieuwe afspraak aangemaakt.
Name
string
Naam De weergave naam van de afspraak, NIET de naam van de klant
Description
string
Opmerking bij de afspraak. N.B. bij het bewerken van een bestaande afspraak wordt deze opmerking toegevoegd aan de al bestaande opmerking(en).
[variabel]
string
Eventuele extra velden zoals verkregen met getFields. Gebruik de Key van een veld als naam voor de parameter.
BookingMode
string
Optioneel, consumer of customer. De standaardwaarde is consumer. In consumer mode kan een afspraak alleen gemaakt of geannuleerd worden. Het wijzigen van een bestaande afspraak is alleen mogelijk in customer mode.
OverrideMode
integer
Optioneel, 1 = aan, 0 = uit. Schakelt meerdere validaties uit. Let op, indien de afspraak buiten de boekbare tijden wordt verplaatst dan krijgt de afspraak geen resource toegewezen.
RequiredFieldsCheck
integer
Optioneel, 1 = aan, 0 = uit, standaard aan. Indien 0 worden verplichte velden validaties uitgeschakeld. Let op: dit kan tot onverwachte resultaten leiden indien er aannames zijn mbt de status van een verplicht veld.
Referrer
string
Alleen beschikbaar bij nieuwe afspraken. Kan gebruikt worden om een bron identificatie aan een afspraak mee te geven ( adwords, groupon, etc )
AppStatus
integer
Hiermee kan een epxliciete status aan een afspraak worden meegegeven. 1 = ingeschakeld, 2 = uitgeschakeld, 3 = verwijderd, 4 = in afwachting, 5 = gereserveerd. Let op: bij aanpassen van een status op deze wijze worden er geen acties uitgevoerd die bij de handeling horen. Een status op 3 zetten zorgt ervoor dat de afspraak als verwijderd wordt getoond in de backend. Alle bijhorende acties zijn echter niet uitgevoerd. Gebruik hiervoor de removeAppointment API
Confirmations
integer
Optioneel, 1 = aan, 0 = uit, standaard 1: Het al dan niet versturen van bevestigingen naar de klant ( mail en SMS )
Notifications
integer
Optioneel, 1 = aan, 0 = uit, standaard 1: Het al dan niet versturen van notificaties naar de het bedrijf en/of resource ( mail en SMS )
Id
integer
Het id van de aangemaakte afspraak
Status
integer
Label van de afspraak.

Mogelijke waarden: 1 pending2 approved3 finished4 cancelled5 in progress

Indien dit label 1 is ( pending ) dan moet u de afspraak nog bevestigen. Zie hiervoor de requiresConfirmation en confirmAppointment API.

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=setAppointment&AgendaId=123&Date=2022-04-05&StartTime=13%3A00&CustomerId=123&AppointmentTypeId=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 12:10:20</Date>
    <Timestamp>1648555820</Timestamp>
    <Status>success</Status>
  </Status>
  <Objects>
    <Appointment>
      <Id>123</Id>
      <Status>2</Status>
    </Appointment>
  </Objects>
</Response>

Naar boven

getAgenda

1.1 Algemeen

Haalt de gegevens van de agenda van het bedrijf op

  • Request
  • Response
  • Voorbeeld
Id
integer
Id van de agenda
Id
integer
Het id van de agenda
Name
string
Naam van de agenda
DateFormat
string
PHP date() datumnotatie, bijv. D d/m/Y
TimeFormat
string
PHP date() tijdnotatie, bijv. H:i
AlignGrid
integer
Aantal minuten waarop het grid is uitgelijnd. Default: 15
IsDefault
integer

Mogelijke waarden: 1 indien deze agenda de hoofdagenda van het bedrijf is0 Secundaire agenda

BookingUrl
string
Url van de standaard boekingswidget

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getAgenda&id=1337&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 12:14:02</Date>
    <Timestamp>1648556042</Timestamp>
    <Status>success</Status>
  </Status>
  <Agenda>
    <Id>1337</Id>
    <Name></Name>
    <DateFormat>D d/m/Y</DateFormat>
    <TimeFormat>H:i</TimeFormat>
    <AlignGrid>5</AlignGrid>
    <IsDefault>1</IsDefault>
    <BookingUrl>https://widget.onlineafspraken.nl/consumer/booking/book/key/xxxxxx-xxxx/l/11111/ln/nl/at/0/rs/0/output/html</BookingUrl>
  </Agenda>
</Response>

Naar boven

getAgendas

1.1 Algemeen

Haalt alle agenda's van een bedrijf op.

N.B. Per bedrijf (api key) is er maar een enkele agenda.

  • Request
  • Response
  • Voorbeeld

Geen

Het formaat van de geretourneerde agenda's is hetzelfde als dat van getAgenda()

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getAgendas&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 12:13:15</Date>
    <Timestamp>1648555995</Timestamp>
    <Status>success</Status>
  </Status>
  <Objects>
    <Agenda>
      <Id>1337</Id>
      <Name></Name>
      <DateFormat>D d/m/Y</DateFormat>
      <TimeFormat>H:i</TimeFormat>
      <AlignGrid>5</AlignGrid>
      <IsDefault>1</IsDefault>      <BookingUrl>https://widget.onlineafspraken.nl/consumer/booking/book/key/xxxxxx-xxxx/l/11111/ln/nl/at/0/rs/0/output/html</BookingUrl>
    </Agenda>
  </Objects>
</Response>

Naar boven

getAppointmentType

1.1 Algemeen

Haalt een specifiek afspraaktype op.

  • Request
  • Response
  • Voorbeeld
Id
integer
Id van het afspraaktype
verplicht
Id
integer
Name
string
Naam
Description
string
Omschrijving
Status
integer
Status van de resource

Mogelijke waarden: 1 enabled2 disabled

.
PriceType
integer
Prijstype

Mogelijke waarden: 1 vaste prijs2 vanaf prijs3 niet beschikbaar

Price
float
Prijs
Duration
integer
Lengte van de afspraak, in minuten
MinTimeBeforeAppointment
integer
Minimale tijd voor de afspraaktijd, in minuten
MaxTimeBeforeAppointment
integer
Maximalen tijd voor de afspraaktijd, in minuten
Buffer
integer
Buffertijd die gereserveerd wordt achter de afspraak, in minuten. De totaal geblokte tijd bij het maken van een afspraak is de Duration plus de Buffer.
CanBeBookedByConsumer
integer
Geeft aan of dit afspraaktype geboekt kan worden door een consument.

Mogelijke waarden: 1 boekbaar0 niet boekbaar

Category
string
Naam van de category waar dit appointmentType bij hoort.
CategoryId
integer
Id van de category waar dit appointmentType bij hoort.

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getAppointmentType&id=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 12:27:04</Date>
    <Timestamp>1648556824</Timestamp>
    <Status>success</Status>
  </Status>
  <Objects>
    <AppointmentType>
      <Id>123</Id>
      <Name>Springkussen</Name>
      <Description></Description>
      <Status>1</Status>
      <SchedulingType>resource</SchedulingType>
      <PriceType>1</PriceType>
      <Price>15.00</Price>
      <Duration>60</Duration>
      <MinTimeBeforeAppointment>1</MinTimeBeforeAppointment>
      <MaxTimeBeforeAppointment>4320</MaxTimeBeforeAppointment>
      <Buffer>0</Buffer>
      <CanBeBookedByConsumer>1</CanBeBookedByConsumer>
      <ExplicitEndDate></ExplicitEndDate>
      <Category>Luilakken</Category>
      <CategoryId>112</CategoryId>
      <Capacity>1</Capacity>
      <ResourceId>187,188,189</ResourceId>
    </AppointmentType>
  </Objects>
</Response>

Naar boven

getAppointmentTypes

1.1 Algemeen

Haalt alle afspraaktypes op.

  • Request
  • Response
  • Voorbeeld

Geen

Id
integer
Name
string
Naam
Description
string
Omschrijving
Status
integer
Status van de resource

Mogelijke waarden: 1 enabled2 disabled

.
PriceType
integer
Prijstype

Mogelijke waarden: 1 vaste prijs2 vanaf prijs3 niet beschikbaar

Price
float
Prijs
Duration
integer
Lengte van de afspraak, in minuten
MinTimeBeforeAppointment
integer
Minimale tijd voor de afspraaktijd, in minuten
MaxTimeBeforeAppointment
integer
Maximalen tijd voor de afspraaktijd, in minuten
Buffer
integer
Buffertijd die gereserveerd wordt achter de afspraak, in minuten. De totaal geblokte tijd bij het maken van een afspraak is de Duration plus de Buffer.
CanBeBookedByConsumer
integer
Geeft aan of dit afspraaktype geboekt kan worden door een consument.

Mogelijke waarden: 1 boekbaar0 niet boekbaar

Category
string
Naam van de category waar dit appointmentType bij hoort.
CategoryId
integer
Id van de category waar dit appointmentType bij hoort.

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getAppointmentTypes&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 12:14:48</Date>
    <Timestamp>1648556088</Timestamp>
    <Status>success</Status>
  </Status>
  <Objects>
    <AppointmentType>
      <Id>123</Id>
      <Name>Buikspieren</Name>
      <Description></Description>
      <Status>2</Status>
      <SchedulingType>resource</SchedulingType>
      <PriceType>3</PriceType>
      <Price>0.00</Price>
      <Duration>30</Duration>
      <MinTimeBeforeAppointment>1</MinTimeBeforeAppointment>
      <MaxTimeBeforeAppointment>4320</MaxTimeBeforeAppointment>
      <Buffer>0</Buffer>
      <CanBeBookedByConsumer>1</CanBeBookedByConsumer>
      <ExplicitEndDate></ExplicitEndDate>
      <Category>Personal Training</Category>
      <CategoryId>110</CategoryId>
      <Capacity>1</Capacity>
      <ResourceId>187,188,189,197</ResourceId>
    </AppointmentType>
    <AppointmentType>
      <Id>124</Id>
      <Name>Intro buikspieren</Name>
      <Description></Description>
      <Status>1</Status>
      <SchedulingType>resource</SchedulingType>
      <PriceType>1</PriceType>
      <Price>20.00</Price>
      <Duration>60</Duration>
      <MinTimeBeforeAppointment>1</MinTimeBeforeAppointment>
      <MaxTimeBeforeAppointment>4320</MaxTimeBeforeAppointment>
      <Buffer>0</Buffer>
      <CanBeBookedByConsumer>1</CanBeBookedByConsumer>
      <ExplicitEndDate></ExplicitEndDate>
      <Category>Introductieles</Category>
      <CategoryId>111</CategoryId>
      <Capacity>1</Capacity>
      <ResourceId>187,188,189</ResourceId>
    </AppointmentType>
  </Objects>
</Response>

Naar boven

getResource

1.1 Algemeen

Haalt een specifieke resource op.

  • Request
  • Response
  • Voorbeeld
Id
integer
Id van de resource
verplicht
Id
integer
Name
string
Naam
Code
string
Code
Phone
string
Telefoon
MobilePhone
string
Mobiele telefoon
Email
string
E-mail adres
Status
integer
Status van de resource

Mogelijke waarden: 1 enabled2 disabled

.

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getResource&id=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 13:06:37</Date>
    <Timestamp>1648559197</Timestamp>
    <Status>success</Status>
  </Status>
  <Resource>
    <Id>123</Id>
    <Name>Workout room WO 1</Name>
    <Code></Code>
    <Description></Description>
    <Phone></Phone>
    <MobilePhone></MobilePhone>
    <Email></Email>
    <Status>2</Status>
    <Label>1</Label>
  </Resource>
</Response>

Naar boven

getResources

1.1 Algemeen

Haalt alle resources op.

  • Request
  • Response
  • Voorbeeld

Geen

Id
integer
Name
string
Naam
Code
string
Code
Phone
string
Telefoon
MobilePhone
string
Mobiele telefoon
Email
string
E-mail adres
Status
integer
Status van de resource

Mogelijke waarden: 1 enabled2 disabled

.
Label
integer
[Dit veld heeft geen betekenis meer].

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getResources&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 13:01:37</Date>
    <Timestamp>1648558897</Timestamp>
    <Status>success</Status>
  </Status>
  <Objects>
    <Resource>
      <Id>123</Id>
      <Name>Ies O'Latie PT</Name>
      <Code></Code>
      <Description></Description>
      <Phone></Phone>
      <MobilePhone></MobilePhone>
      <Email></Email>
      <Status>1</Status>
      <Label>1</Label>
    </Resource>
    <Resource>
      <Id>124</Id>
      <Name>Workout room WO 1</Name>
      <Code></Code>
      <Description></Description>
      <Phone></Phone>
      <MobilePhone></MobilePhone>
      <Email></Email>
      <Status>2</Status>
      <Label>1</Label>
    </Resource>
  </Objects>
</Response>

Naar boven

requiresConfirmation

1.1 Algemeen

Bepaalt of er een bevestigingscode nodig is om een afspraak te boeken. Indien dit zo is, en een afspraak wordt niet bevestigd via de API dan blijft de afspraak op PENDING staan in het systeem.

Deze instelling is een globale instelling van de agenda. U hoeft deze dus maar eenmalig op te halen, en niet bij iedere nieuwe afspraak.

  • Request
  • Response
  • Voorbeeld

Geen

Required
integer
Geeft aan of een bevestiging vereist is

Mogelijke waarden: 1 ja0 nee

.

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=requiresConfirmation&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 13:16:27</Date>
    <Timestamp>1648559787</Timestamp>
    <Status>success</Status>
  </Status>
  <Confirmation>
    <Required>0</Required>
  </Confirmation>
</Response>

Naar boven

getBookableBlocks

1.1 Beschikbaarheid

Haalt de boekbare blokken van een bepaald afspraaktype en voor een bepaalde resource zonder deze op te splitsen in boekbare tijden zoals in de widget getoond worden. Optioneel kan een start en/of einddatum opgegeven worden.

Deze API past eventuele plugins etc niet toe op de beschikbaarheid. Gebruik bij voorkeur getBookableDates en getBookableTimes.

  • Request
  • Response
  • Voorbeeld
AgendaId
integer
Id van de agenda.
verplicht
AppointmentTypeId,
integer
id van het appointmentType waar de beschikbaarheid van gecontroleerd wordt.
verplicht
ResourceId
integer
Id van de resource waar de beschikbaarheid van gecontroleerd wordt.
Date
yyyy-mm-dd
Startdatum
verplicht
EndDate
yyyy-mm-dd
Einddatum
ConsumerBookable
integer
Indien 1 komen alleen blokken terug die door consumenten te boeken zijn.
Date
integer
Datum
Notatie: yyyy-mm-dd
Month
integer
Maand, zonder voorloopnul.
Day
integer
Dag, zonder voorloopnul.

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getBookableBlocks&AgendaId=123&Date=2022-04-12&AppointmentTypeId=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 14:09:27</Date>
    <Timestamp>1648562967</Timestamp>
    <Status>success</Status>
  </Status>
  <BookableBlock>
  </BookableBlock>
</Response>

Naar boven

getBookableDays

1.1 Beschikbaarheid

Haalt de boekbare dagen op van een bepaald afspraaktype en voor een bepaalde resource. Optioneel kan een start en/of einddatum opgegeven worden.

  • Request
  • Response
  • Voorbeeld
AgendaId
integer
Id van de agenda.
verplicht
AppointmentTypeId,
integer
id van het appointmentType waar de beschikbaarheid van gecontroleerd wordt.
verplicht
ResourceId
integer
Id van de resource waar de beschikbaarheid van gecontroleerd wordt.
StartDate
yyyy-mm-dd
Startdatum. Behalve een expliciete datum in de vorm YYYY-MM-DD, kun je ook de speciale waarde 'now' gebruiken om de boekbare dagen vanaf de huidige datum op te halen.
verplicht
EndDate
yyyy-mm-dd
Einddatum. Er mag maximaal 1 jaar zitten tussen StartDate en EndDate.
verplicht
Date
integer
Datum
Notatie: yyyy-mm-dd
Month
integer
Maand, zonder voorloopnul.
Day
integer
Dag, zonder voorloopnul.

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getBookableDays&AgendaId=123&StartDate=2022-04-01&EndDate=2022-05-01&AppointmentTypeId=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 12:37:01</Date>
    <Timestamp>1648557421</Timestamp>
    <Status>success</Status>
  </Status>
  <Objects>
    <BookableDay>
      <Date>2022-04-04</Date>
      <Month>04</Month>
      <Day>4</Day>
    </BookableDay>
    <BookableDay>
      <Date>2022-04-05</Date>
      <Month>04</Month>
      <Day>5</Day>
    </BookableDay>
    <BookableDay>
      <Date>2022-04-11</Date>
      <Month>04</Month>
      <Day>11</Day>
    </BookableDay>
    <BookableDay>
      <Date>2022-04-12</Date>
      <Month>04</Month>
      <Day>12</Day>
    </BookableDay>
  </Objects>
</Response>

Naar boven

getBookableTimes

1.1 Beschikbaarheid

Haalt de boekbare tijden op van een bepaald afspraaktype en resource, voor een bepaalde datum. Optioneel kunnen de start en/of eindtijd opgegeven worden.

  • Request
  • Response
  • Voorbeeld
AgendaId
integer
Id van de agenda.
verplicht
Date
date
Datum waarvan de tijden bepaald moeten worden.
verplicht
EndDate
date
Einddatum. Als dit niet wordt meegegeven, worden de tijden opgehaald van een enkele dag. De einddatum kan maximaal 1 jaar na de startdatum liggen.
AppointmentTypeId
integer
Id van het appointmentType.
verplicht
ResourceId
integer
Id van de resource. Indien niet meegegeven worden de boekbare tijden van alle resources geretourneerd.
IncludeCapacity
integer
Als dit de waarde 1 heeft worden de boekbare tijden opgehaald inclusief het maximale aantal afspraken dat nog te boeken is. Dit hoeft alleen gebruikt te worden als de "Meerdere personen plugin" is ingeschakeld.
Date
date
Datum
Notatie: yyyy-mm-dd
StartTime
date
Starttijd
Notatie: hh:mm
EndTime
date
Eindtijd,
Notatie: hh:mm
Timestamp
integer
Timestamp van de starttijd.
AppointmentTypeId
integer
Id van het appointmentType.
ResourceId
integer
Id van de resource, of 0 indien er geen resource gekoppeld is.
Capacity
integer
Het aantal afspraken dat gelijktijdig geboekt kan worden. Dit veld wordt alleen teruggegeven als de parameter IncludeCapacity de waarde 1 heeft.

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getBookableTimes&AgendaId=123&Date=2022-04-05&AppointmentTypeId=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 12:39:47</Date>
    <Timestamp>1648557587</Timestamp>
    <Status>success</Status>
  </Status>
  <Objects>
    <BookableTime>
      <Date>2022-04-05</Date>
      <StartTime>09:00</StartTime>
      <LabelTime>09:00</LabelTime>
      <EndTime>10:00</EndTime>
      <Timestamp>1649149200</Timestamp>
      <AppointmentTypeId>123</AppointmentTypeId>
      <ResourceId>123</ResourceId>
    </BookableTime>
    <BookableTime>
      <Date>2022-04-05</Date>
      <StartTime>10:00</StartTime>
      <LabelTime>10:00</LabelTime>
      <EndTime>11:00</EndTime>
      <Timestamp>1649152800</Timestamp>
      <AppointmentTypeId>123</AppointmentTypeId>
      <ResourceId>123</ResourceId>
    </BookableTime>
    <BookableTime>
      <Date>2022-04-05</Date>
      <StartTime>11:00</StartTime>
      <LabelTime>11:00</LabelTime>
      <EndTime>12:00</EndTime>
      <Timestamp>1649156400</Timestamp>
      <AppointmentTypeId>123</AppointmentTypeId>
      <ResourceId>123</ResourceId>
    </BookableTime>
  </Objects>
</Response>

Naar boven

CHAddBlock

1.1 Geavanceerd

Voeg een beschikbaarheid blok toe.

Let op: de voorkeur is om met roosters te werken. Het aanmaken van losse blokken kan administratief erg onduidelijk worden.

  • Request
  • Response
  • Voorbeeld
AgendaId
integer
Id van de agenda.
verplicht
AppointmentType
integer
Optioneel, id van een appointmentType. Het is mogelijk om meerdere afspraaktypes mee te geven door een komma-gescheiden lijst te gebruiken.
ResourceId
integer
Optioneel, id van een resource. Het is mogelijk om meerdere resources mee te geven door een komma-gescheiden lijst te gebruiken
Date
yyyy-mm-dd
Datum van het blok
verplicht
StartTime
hh:mm
Starttijd van het blok
verplicht
EndTime
hh:mm
Eindtijd van het blok
verplicht
Id
integer
Id van het blok. Let op: dit is het enige moment waarop dit id op te halen is. Zonder dit id is het niet mogelijk om op een later tijdstip over de API het blok weer te verwijderen.

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=CHAddBlock?AgendaId=123&Date=2022-04-05&StartTime=13%3A00&EndTime=14%3A00&ResourceId=123&AppointmentType=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 14:01:10</Date>
    <Timestamp>1648562470</Timestamp>
    <Status>success</Status>
  </Status>
  <Objects>
    <Block>
      <Id>123</Id>
    </Block>
  </Objects>
</Response>

Naar boven

CHRemoveBlock

1.1 Geavanceerd

Verwijdert een blok dat eerder is aangemaakt met CHAddBlock

  • Request
  • Response
  • Voorbeeld
AgendaId
integer
Id van de agenda.
verplicht
id
integer
Id van het block.
verplicht

Geen

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=CHRemoveBlock&id=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 14:05:29</Date>
    <Timestamp>1648562729</Timestamp>
    <Message></Message>
    <Status>success</Status>
  </Status>
</Response>

Naar boven

getCalculationModelSettings

1.1 Geavanceerd

Haalt de rekenmodel instellingen op van een afspraaktype. Deze plugins zijn in te schakelen via instellingen => extra functionaliteit.

specificTimes: Specifieke tijden plugin
multiple: Meerdere personen plugin
travel: Meerdere dagen plugin
limit:Beperking aantal afspraken plugin
combination: Combinatieafspraken plugin
complex: Complexe afspraaktypen plugin
connectingApps: Aansluitende afspraken plugin

  • Request
  • Response
  • Voorbeeld
AgendaId
integer
Id van de agenda.
verplicht
AppTypeId
integer
Id van het appointmentType.
verplicht
CalculationModel
string
Naam van het rekenmodel.

Mogelijke waarden: specificTimes multiple limit combination complex travel connectingApps


verplicht
CalculationModel
string
Naam van het rekenmodel.
AppTypeId
integer
Id van het appointmentType.
Config
string
JSON-encoded string met de configuratie
Enabled
integer
Of het rekenmodel ingeschakeld is

Mogelijke waarden: 0 uit1 aan

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getCalculationModelSettings&AgendaId=123&CalculationModel=connectingApps&AppTypeId=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 13:54:34</Date>
    <Timestamp>1648562074</Timestamp>
    <Status>success</Status>
  </Status>
  <CalculationModelConfig>
    <CalculationModel>connectingApps</CalculationModel>
    <AppTypeId>123</AppTypeId>
    <Config>a:0:{}</Config>
    <Enabled>0</Enabled>
  </CalculationModelConfig>
</Response>

Naar boven

setCalculationModelSettings

1.1 Geavanceerd

Slaat de rekenmodel instellingen op van een afspraaktype. Deze plugins zijn in te schakelen via instellingen => extra functionaliteit.

specificTimes: Specifieke tijden plugin
multiple: Meerdere personen plugin
travel: Meerdere dagen plugin
limit:Beperking aantal afspraken plugin
combination: Combinatieafspraken plugin
complex: Complexe afspraaktypen plugin
connectingApps: Aansluitende afspraken plugin

  • Request
  • Response
  • Voorbeeld
AgendaId
integer
Id van de agenda.
verplicht
AppTypeId
integer
Id van het appointmentType.
verplicht
CalculationModel
string
Naam van het rekenmodel.

Mogelijke waarden: specificTimes multiple limit combination complex travel connectingApps


verplicht
Value
string
JSON-encoded string met de configuratie van het rekenmodel
verplicht
Enabled
integer
Optioneel, schakelt het rekenmodel aan of uit

Mogelijke waarden: 1 aan0 uit

CalculationModel
string
Naam van het rekenmodel.
AppTypeId
integer
Id van het appointmentType.
Config JSON-encoded string met de configuratie

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=setCalculationModelSettings&AgendaId=123&CalculationModel=connectingApps&Value=a%3A0%3A{}0&AppTypeId=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 13:58:15</Date>
    <Timestamp>1648562295</Timestamp>
    <Status>success</Status>
  </Status>
  <CalculationModelConfig>
    <CalculationModel>connectingApps</CalculationModel>
    <AppTypeId>123</AppTypeId>
    <Config></Config>
  </CalculationModelConfig>
</Response>

Naar boven

getCustomer

1.1 Klanten

Haalt een specifieke klant op.

  • Request
  • Response
  • Voorbeeld
Id
integer
Id van de customer.
verplicht
Id
integer
Type
string
Type van de klant

Mogelijke waarden: Consumer Normale klantBusiness Zakelijke klant

AccountNumber
string
Klantnummer
FirstName
string
Voornaam
LastName
string
Achternaam
Insertions
string
Tussenvoegsel
BirthDate
date
Geboortedatum
Notatie: yyyy-mm-dd
Gender
string
Geslacht

Mogelijke waarden: M manF vrouwX overigO onbekend

Street
string
Adres
HouseNr
string
Huisnummer
HouseNrAddition
string
Toevoeging, zoals A
ZipCode
string
Postcode
City
string
Plaats
Country
string
Land
Phone
string
Telefoon
MobilePhone
string
Mobiele telefoon
Email
string
E-mail adres
Status
integer
Status van de consument

Mogelijke waarden: 1 enabled2 disabled3 deleted

UpdateTime
date
Datum en tijd waarop de klantgegevens voor het laatst zijn aangepast.
Notatie: yyyy-mm-dd HH:mm:ss
CreateTime
date
Datum en tijd waarop de klant is aangemaakt:
Notatie: yyyy-mm-dd HH:mm:ss
[variabel]
De eventuele extra velden die gekoppeld zijn aan de klant. Deze velden gebruiken de Key als veldnaam (zie getFields).
SingleSignon
string
Indien ingeschakeld, de SSO hash. Zie Single Signon.
Business
array
Bedrijfsgegevens (alleen als Type=Business)

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getCustomer&id=123&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 12:47:35</Date>
    <Timestamp>1648558055</Timestamp>
    <Status>success</Status>
  </Status>
  <Customer>
    <Id>123</Id>
    <Type>Consumer</Type>
    <AccountNumber>1</AccountNumber>
    <FirstName>Gerrit</FirstName>
    <LastName>Pieterse</LastName>
    <Insertions></Insertions>
    <BirthDate></BirthDate>
    <Gender>M</Gender>
    <Street>Stationstraat</Street>
    <HouseNr>123</HouseNr>
    <HouseNrAddition>b</HouseNrAddition>
    <ZipCode>1234AA</ZipCode>
    <City>Driehuizen</City>
    <Country>Nederland</Country>
    <Phone></Phone>
    <MobilePhone>0612345678</MobilePhone>
    <Email>dev@onlineafspraken.nl</Email>
    <Status>1</Status>
    <UpdateTime>2020-03-26 15:50:13</UpdateTime>
    <CreateTime>2020-03-26 15:50:13</CreateTime>
    <SingleSignon>165329255|30860|9bd9c91b</SingleSignon>
  </Customer>
</Response>

Naar boven

getCustomers

1.1 Klanten

Haalt de gegevens van alle klanten op.

  • Request
  • Response
  • Voorbeeld
Limit
integer
Maximaal aantal klanten dat wordt opgehaald. Standaard kunnen met een aanroep maximaal 500 klanten opgehaald worden.
Offset
integer
Eerste klant die wordt opgehaald.
UpdatedAfter
date
Haal alleen de gegevens op van de klanten die na dit tijdstip zijn gewijzigd

Notatie: YYYY-MM-DD HH:mm:ss

Als deze parameter wordt gebruikt, kan het resultaat ook verwijderde klanten bevatten. Hiervan zijn alleen de velden Id en Status gevuld. Als deze parameter niet wordt gebruikt, worden de gegevens van alle klanten opgehaald.
Email
string
Als deze parameter wordt gebruikt, worden alleen de gegevens van de klanten met dit e-mailadres opgehaald.
BirthDate
date
Als deze parameter wordt gebruikt, worden alleen de gegevens van de klanten met deze geboortedatum opgehaald

Notatie: YYYY-MM-DD

AccountNumber
string
Als deze parameter wordt gebruikt, worden alleen de gegevens van de klanten met dit klantnummer opgehaald.
Id
integer
Type
string
Type van de klant

Mogelijke waarden: Consumer Normale klantBusiness Zakelijke klant

AccountNumber
string
Klantnummer
FirstName
string
Voornaam
LastName
string
Achternaam
Insertions
string
Tussenvoegsel
BirthDate
date
Geboortedatum
Notatie: yyyy-mm-dd
Gender
string
Geslacht

Mogelijke waarden: M manF vrouw

Street
string
Adres
HouseNr
string
Huisnummer
HouseNrAddition
string
Toevoeging, zoals A
ZipCode
string
Postcode
City
string
Plaats
Country
string
Land
Phone
string
Telefoon
MobilePhone
string
Mobiele telefoon
Email
string
E-mail adres
Status
integer
Status van de consument

Mogelijke waarden: 1 enabled2 disabled3 deleted

UpdateTime
date
Datum en tijd waarop de klantgegevens voor het laatst zijn aangepast.
Notatie: yyyy-mm-dd HH:mm:ss
CreateTime
date
Datum en tijd waarop de klant is aangemaakt:
Notatie: yyyy-mm-dd HH:mm:ss
[variabel]
De eventuele extra velden die gekoppeld zijn aan de klant. Deze velden gebruiken de Key als veldnaam (zie getFields).
Business
array
Bedrijfsgegevens (alleen als Type=Business)

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getCustomers&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 12:43:06</Date>
    <Timestamp>1648557786</Timestamp>
    <Status>success</Status>
    <Stats>
      <Limit>500</Limit>
      <Offset>0</Offset>
      <Records>130</Records>
      <TotalRecords>130</TotalRecords>
    </Stats>
  </Status>
  <Objects>
    <Customer>
      <Id>123</Id>
      <Type>Consumer</Type>
	<AccountNumber>1</AccountNumber>
	<FirstName>Gerrit</FirstName>
	<LastName>Pieterse</LastName>
	<Insertions></Insertions>
	<BirthDate></BirthDate>
	<Gender>M</Gender>
	<Street></Street>
	<HouseNr></HouseNr>
	<HouseNrAddition></HouseNrAddition>
	<ZipCode></ZipCode>
	<City>Driehuizen</City>
	<Country>Nederland</Country>
	<Phone></Phone>
	<MobilePhone></MobilePhone>
	<Email>dev@onlineafspraken.nl</Email>
	<Status>1</Status>
	<UpdateTime>2020-03-26 15:50:13</UpdateTime>
	<CreateTime>2020-03-26 15:50:13</CreateTime>
      </Customer>
      <Customer>
	<Id>124</Id>
	<AccountNumber>3</AccountNumber>
	<FirstName>David</FirstName>
	<LastName>Dubbel</LastName>
	<Insertions></Insertions>
	<BirthDate></BirthDate>
	<Gender>O</Gender>
	<Street></Street>
	<HouseNr></HouseNr>
	<HouseNrAddition></HouseNrAddition>
	<ZipCode></ZipCode>
	<City></City>
	<Country>Nederland</Country>
	<Phone></Phone>
	<MobilePhone></MobilePhone>
	<Email>dev@onlineafspraken.nl</Email>
	<Status>1</Status>
	<UpdateTime>2020-03-30 15:16:10</UpdateTime>
	<CreateTime>2020-03-30 15:16:10</CreateTime>
	<Foto_voor>
          <Id>196</Id>
          <Uuid>61a411a7-08db-4dfb-a512-cce37297767c</Uuid>
          <FileName>logo-conservatrix-2.png</FileName>
          <Url>/forms/upload/view/uuid/61a411a7-08db-4dfb-a512cce37297767c/logo-conservatrix.png</Url>
          <Thumbnail>/forms/upload/thumbnail/uuid/61a411a7-08db-4dfb-a512-cce37297767c/logo-conservatrix.png</Thumbnail>
          <Size>126679</Size>
          <Image>
            <Mime>image/png</Mime>
            <Orientation>0</Orientation>
          </Image>
	</Foto_voor>
	<Foto_voor>
          <Id>197</Id>
          <Uuid>e3c9fe06-67b6-43e1-9b39-c8b6636e46b4</Uuid>
          <FileName>old-40095_1280-13.png</FileName>
          <Url>/forms/upload/view/uuid/e3c9fe06-67b6-43e1-9b39-c8b6636e46b4/old-40095_1280.png</Url>
          <Thumbnail>/forms/upload/thumbnail/uuid/e3c9fe06-67b6-43e1-9b39-c8b6636e46b4/old-40095_1280.png</Thumbnail>
          <Size>252290</Size>
          <Image>
            <Mime>image/png</Mime>
            <Orientation>0</Orientation>
          </Image>
	</Foto_voor>
      </Customer>
  </Objects>
</Response>

Naar boven

getFields

1.1 Klanten

Haalt extra velden op voor de registratie en afspraak maken formulieren.

  • Request
  • Response
  • Voorbeeld
AgendaId
integer
Id van de agenda.
verplicht
AppointmentTypeId
integer
Als je hier het id van een appointmentType meegeeft, krijg je alleen de velden terug die worden getoond bij een afspraak van het betreffende afspraaktype.
GenericFields
integer
Indien 1 komen ook de standaard formuliervelden terug
Id
integer
Label
string
Label van het formulier-element
Key
string
Naam van het veld om te gebruiken in calls naar setCustomer en setAppointment. Deze naam is afgeleid van het label, maar bevat bijvoorbeeld geen spaties.
Type
string
Formuliertype, op welk formulier dit element getoond moet worden volgens de configuratie vanuit de agenda.

Mogelijke waarden: Appointment afspraak maken formulierRegistration registratie formulier

Required
integer
Geeft aan of het veld verplicht is

Mogelijke waarden: 1 verplicht0 niet verplicht

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=getFields&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 12:50:43</Date>
    <Timestamp>1648558243</Timestamp>
    <Status>success</Status>
  </Status>
  <Objects>
    <Field>
      <Id>123</Id>
      <Label>test</Label>
      <Key>test</Key>
      <Type>Registration</Type>
      <Required>0</Required>
    </Field>
  </Objects>
</Response>

Naar boven

loginCustomer

1.1 Klanten

Logt een Customer in op basis van gebruikersnaam en wachtwoord. Indien de login geslaagd is wordt de Customer geretourneerd.

Let op: deze API controleert alleen of een login geldig is en kan daardoor gebruikt worden bij een eigen widget implementatie. Deze API logt een gebruiker NIET in en heeft geen enkele relatie met de standaard boekingswidget.

Neem contact op met support voor meer informatie over onze SSO oplossing.

  • Request
  • Response
  • Voorbeeld
Username
integer
Gebruikersnaam
verplicht
Password
integer
Wachtwoord
verplicht
Id
integer
FirstName
string
Voornaam
LastName
string
Achternaam
Insertions
string
Tussenvoegsel
BirthDate
date
Geboortedatum
Notatie: yyyy-mm-dd
Gender
string
Geslacht

Mogelijke waarden: m manf vrouw

Street
string
Adres
HouseNr
string
Huisnummer
HouseNrAddition
string
Toevoeging, zoals A
ZipCode
string
Postcode
City
string
Plaats
Country
string
Land
Phone
string
Telefoon
MobilePhone
string
Mobiele telefoon
Email
string
E-mail adres
Status
integer
Status van de consument

Mogelijke waarden: 1 enabled2 disabled3 deleted

OwnCompany
integer
Binnen OnlineAfspraken kunnen klanten met hetzelfde account bij meerdere bedrijven inloggen. Indien deze waarde 1 is betekent dit dat de ingelogde klant bij dit bedrijf hoort.
SingleSignon
string
Indien ingschakeld, de SSO hash voor deze klant. Zie Single Signon voor meer informatie

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=loginCustomer&Username=test1234&Password=test1234&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 13:09:34</Date>
    <Timestamp>1648559374</Timestamp>
    <Status>success</Status>
  </Status>
  <Objects>
    <Customer>
      <Id>123</Id>
      <FirstName>Richard</FirstName>
      <LastName>Rat</LastName>
      <Insertions>de</Insertions>
      <BirthDate></BirthDate>
      <Gender></Gender>
      <Street></Street>
      <HouseNr></HouseNr>
      <HouseNrAddition></HouseNrAddition>
      <ZipCode></ZipCode>
      <City></City>
      <Country>Curaçao</Country>
      <Phone>0701234567</Phone>
      <MobilePhone>0612345678</MobilePhone>
      <Email>dev@onlineafspraken.nl</Email>
      <Status>1</Status>
      <OwnCompany>1</OwnCompany>
      <SingleSignon>165330574|30864|8aee6a00</SingleSignon>
    </Customer>
  </Objects>
</Response>

Naar boven

passwordRecovery

1.1 Klanten

Verstuurt een e-mail om het wachtwoord van een account opnieuw in te stellen naar een consument.

  • Request
  • Response
  • Voorbeeld
Email
integer
E-mail adres van de consument.
verplicht
Message
string
Bericht met de status van het verzenden.

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=passwordRecovery&Email=dev%40onlineafspraken.nl&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 13:15:06</Date>
    <Timestamp>1648559706</Timestamp>
    <Status>success</Status>
  </Status>
  <Customer>
    <Message>PasswordRecovery link sent</Message>
  </Customer>
</Response>

Naar boven

setCustomer

1.1 Klanten

Slaat een klant op.

  • Request
  • Response
  • Voorbeeld
id
integer
Indien een id wordt meegegeven wordt een bestaande consument aangepast, anders wordt een nieuwe consument aangemaakt.
AccountNumber
string
Klantnummer
Email
string
E-mail adres
verplicht
FirstName
string
Voornaam
verplicht
LastName
string
Achternaam
verplicht
Insertions
string
Tussenvoegsel
BirthDate
date
Geboortedatum

Notatie: yyyy-mm-dd

Gender
string
Geslacht

Mogelijke waarden: M manF vrouwX overigO onbekend

Street
string
Straat
HouseNr
integer
Huisnummer
HouseNrAddition
string
Toevoeging, bijv. A.
ZipCode
string
Postcode
City
string
Stad
Country
string
Land
Phone
string
Telefoonnummer. Indien dit veld niet leeg is, dient het een geldig telefoonnummer te bevatten.
MobilePhone
string
Mobiel telefoonnummer. Indien dit veld niet leeg is, dient het een geldig mobiel nummer te bevatten.
Status
integer
Status van de consument 1enabled 2disabled 3 deleted
[variabel]
string
Eventuele extra velden zoals verkregen met getFields. Gebruik de Key van een veld als naam voor de parameter
Username
string
Gebruikersnaam voor het account waarmee de klant kan inloggen om zijn/haar afspraken te beheren. Gebruikersaccounts kunnen alleen worden aangemaakt voor nieuwe klanten. Voor bestaande klanten wordt deze parameter genegeerd. Als u geen gebruikersaccount wilt aanmaken, dan laat u deze parameter weg.
Password
string
Het wachtwoord voor het gebruikersaccount. Dit wachtwoord dient te bestaan uit minimaal 6 tekens. Deze parameter is verplicht als u de parameter Username gebruikt om een gebruikersaccount aan te maken.
Id
integer
Status
integer
Status van de consument

Mogelijke waarden: 1 enabled2 disabled3 deleted

Voorbeeld request

https://agenda.onlineafspraken.nl/APIREST/?method=setCustomer&LastName=Kees&FirstName=Test&Email=dev%40onlineafspraken.nl&api_key=xxxxxxxxxxxxxx-xxxxxx&api_signature=xxx&&api_salt=xxx

Response XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Status>
    <APIVersion>1.0</APIVersion>
    <Date>2022-03-29 14:11:50</Date>
    <Timestamp>1648563110</Timestamp>
    <Status>success</Status>
  </Status>
  <Objects>
    <Customer>
      <Id>123</Id>
      <Status>1</Status>
    </Customer>
  </Objects>
</Response>

Naar boven