API-Dokumentation Online-Terminvereinbarung

Alternativ zum seitens 1-wtp zur Verfügung gestellten Frontend für die Online-Terminvereinbarung besteht auch die Möglichkeit, selbst eine Pberfläche zu entwickeln. Hier finden Sie die API-Beschreibung. Für Unterstützung und Testantworten kontaktieren Sie bitte den Support.

[Base URL: https://api.1-wtp-online.de/api/v1/]

On every end point call, both customer_token and api_token are required as parameters.
{
„api_token“: „(token)“,
„customer_token“: „(token)“
}

The end points are as following:
– Request interventions
– Request capacities
– Request available Times
– Request calendar options
– Request custom options
– save appointment
– check sms code
Request interventions:
Endpoint: “[POST] /interventions”
Optional parameters: search, page, and page_size

{
„search“: „(text to search for)“,
„page“: 0,
„page_size“: 10
}
Expected result is:
If the Request of interventions was successful:

{
„header“: {
„page“: 0,
„page_size“: 10,
„page_total“: 10, // „(integer)total number of pages“
„search“: „(text searched for)“,
„records_found“: 4 // „(integer)number of records found for the searched text)“
},
„results“: [
{
„id“: 0, // id of the intervention
„text“: „wartung“, // description of the intervention
„aw“: 20 // duration
}
]
}

If there were no interventions:
{
„header“: {
„page“: 0,
„page_size“: 10,
„page_total“: 0, // „(integer)total number of pages“
„search“: „(text searched for)“,
„records_found“: 0 // „(integer)number of records found for the searched text)
},
„results“: [] // empty array
}

Request Capacities:
Endpoint: “[POST] /capacities”

Optional parameters: aw

{
„aw“: 20 // „(integer)duration needed“
}
Expected result is:
If the Request of capacities was successful:
{
„header“: {
„first_month“: „09“ //“(integer)first available month“,
„first_year“: „2019“ // „(integer)first available year“
},
„result“: [
{
„date“: „2019-01-01“, // date
„free_aw“: 10 //“(integer)free_aw“
}
]
}

If the Request of capacities was unsuccessful:
{
„error_message“: „Error description“
}

Request available times:
Endpoint: “[POST] /available_times”

Required parameters: day
{
„date“: „2019-01-01″ //”(choosen date)“
}

Expected result is:
If the Request of available times was successful:
{
„header“: {
„calendar_id“: 1, // „(integer)“
„date“: „2019-01-01“ // date given
},
„result“: [„07:00“, „07:15“, „7:30“] // array of times
}

If the Request of available times was unsuccessful:
{
„error_message“: „(error message description)“
}

If the request was unsuccessful

{
„error_message“: „Error description“
}

Request calendar options:
Endpoint: “[POST] /get_calendar_options”

Expected result is:
{
„replacment_car“: 1, //“(integer)“
„ticket“: 1, // „(integer)“
„data_privacy_url“: „1-wtp.info“, // url
„pick_up“: 1, // „(integer)“
„bring“: 1, // „(integer)“
„remarks“: “ the replacment car costes 50€ per day “ // text

}

Request custom options:
Endpoint: “[POST] /custom_options”

Expected result is:

[{
„id“: 1, // „(integer)id number“
„name“: „Birthday“,// description of the custom option
„type“: „text“ // type can either be checkbox or text
„required“: // type tinyint (true/false)
„value“: // type string
}]

Save appointment:
Endpoint: “[POST] /save_appointment”

Require parameter: interventions, aw, date, time, name, phone

Optional Parameter: custom_options, license_plate, model, vin, KBA, bicycle, comment, pick_up, bring, ticket, replacement_car, E-Mail

{
„interventions“: [
{
„text“: „(description of the intervention)“ // example: wartung varchar(255)
}
],
„custom_options“: [
{
„name“: „birthday“,// option name varchar(255)“
„value“: „2019-01-01″//option value text: 2019-01-01|checkbox [0|1] varchar(255)
}
],
„aw“: 55,// „(integer)work value in total)“
„date“: „2019-01-01“,// „(date of the appointment)“
„time“: „08:00″,//“(time of the appointment)“
„name“: „John smith“,// „(name of the customer) varchar(40)“
„phone“: „011111111111“,// „(phone number of the customer) varchar(30)“
}

Expected result is:

If save appointment successful:

{
„appointment_token“: „(token)“
}

If save appointment was unsuccessful:
{
„error_message“: „(error message description)“
}

Check sms code:
Endpoint: “[POST] /check_sms_code”

Required parameter: appointment_token, sms_code

{
„sms_code“: 123456, //“(6 number code)“
„appointment_token“: „(token)“
}

Expected result is:

If check sms code was successful:

{
„success“: 1
}

If check sms code was unsuccessful:
{
„success“: 0
}