Да, API у системы есть.
API предоставляет следующие методы
- getClients - получение информации по всем клиентам
- getClient - получение информации по конкретному клиенту
- setClients - установление информации по списку клиентов
- setClient - установление информации по конкретному клиенту
Получение информации по всем клиентам (getClients)
curl --data "authKey=6f945db846fd" http://app.arnica.pro/primehill/primeHillApi/entryPoint/method/getClients
Пример ответа сервиса
{
"result": true,
"error": null,
"data": [
{
"card_number": "123456",
"card_balance": 0,
"lastname": "Физическое лицо",
"firstname": "Имя2",
"patronymic": "",
"sex": "",
"email": "",
"phone": "1111111111",
"balance": "0.00",
"discount": 12,
"type": "Потенциальные пациенты",
"birthdate": {
"year": "2016",
"month": "12",
"day": "09"
},
"visits": [
{
"id": 69,
"amount": "0.00",
"date": "2017-12-13T02:05:00+0500",
"items": []
},
{
"id": 70,
"amount": "0.00",
"date": "2017-12-14T01:10:00+0500",
"items": []
},
{
"id": 71,
"amount": "3700.00",
"date": "2017-12-14T01:10:00+0500",
"items": [
{
"name": "Установка фотополимерных виниров",
"employee": "Боярский Михаил",
"amount": 3700
}
]
}
]
},
{
"card_number": "123456",
"card_balance": 0,
"lastname": "",
"firstname": "Светлана1",
"patronymic": "",
"sex": "",
"email": "",
"phone": "9992131218",
"balance": "0.00",
"discount": 1,
"type": "Потенциальные пациенты",
"birthdate": {
"year": "",
"month": "",
"day": ""
}
},
{
"card_number": "123456",
"card_balance": 0,
"lastname": "",
"firstname": "Светлана1",
"patronymic": "",
"sex": "",
"email": "",
"phone": "9992131218",
"balance": "0.00",
"discount": 1,
"type": "Потенциальные пациенты",
"birthdate": {
"year": "",
"month": "",
"day": ""
}
}
]
}
Получение информации по конкретному клиенту (getClient)
curl --data "authKey=944e3b7b2dab&client[phone]=1111111111" http://app.arnica.pro/primehill/primeHillApi/entryPoint/method/getClient
Пример ответа
{
"result": true,
"error": null,
"data": {
"card_number": "123456",
"card_balance": 0,
"lastname": "Физическое лицо",
"firstname": "Имя2",
"patronymic": "",
"sex": "",
"email": "",
"phone": "1111111111",
"balance": "0.00",
"discount": 12,
"type": "Потенциальные пациенты",
"birthdate": {
"year": "2016",
"month": "12",
"day": "09"
},
"visits": [
{
"id": 69,
"amount": "0.00",
"date": "2017-12-13T02:05:00+0500",
"items": []
},
{
"id": 70,
"amount": "0.00",
"date": "2017-12-14T01:10:00+0500",
"items": []
},
{
"id": 71,
"amount": "3700.00",
"date": "2017-12-14T01:10:00+0500",
"items": [
{
"name": "Установка фотополимерных виниров",
"employee": "Боярский Михаил",
"amount": 3700
}
]
}
]
}
}
Установка информации по нескольким клиентам
curl --data "authKey=944e3b7b2dab&clients[0][phone]=9992131218&clients[0][card_number]=123456&clients[0][firstname]=Имя1&clients[1][phone]=1111111111&clients[1][card_number]=123456&clients[1][firstname]=Имя2" http://app.arnica.pro/primehill/primeHillApi/entryPoint/method/setClients
Принимаемые поля
- phone (обязательный, является индентификатором)
- card_number (обязательный)
- firstname (обязательный)
- lastname
- patronymic
- email
- sex (male, female)
- birthdate (дата в формате YYYY-MM-DD)
{
"result": true,
"error": null,
"data": [
{
"result": true,
"error": false,
"data": {
"card_number": "123456",
"card_balance": 0,
"lastname": null,
"firstname": "Имя1",
"patronymic": null,
"sex": "",
"email": null,
"phone": "9992131218",
"balance": "0",
"discount": 0,
"type": "",
"birthdate": {
"year": null,
"month": null,
"day": null
}
}
},
{
"result": true,
"error": false,
"data": {
"card_number": "123456",
"card_balance": 0,
"lastname": "Физическое лицо",
"firstname": "Имя2",
"patronymic": "",
"sex": "",
"email": "",
"phone": "1111111111",
"balance": "0.00",
"discount": 12,
"type": "Потенциальные пациенты",
"birthdate": {
"year": "2016",
"month": "12",
"day": "09"
}
}
}
]
}
Установка информации одному клиенту (один клиент - первый клиент с таким телефоном)
curl --data "authKey=944e3b7b2dab&client[phone]=9992131218&client[card_number]=123456" http://app.arnica.pro/primehill/primeHillApi/entryPoint/method/setClient
Принимаемые поля
соответствуют списку из setClients
Пример ответа
{
"result": true,
"error": null,
"data": {
"card_number": "123456",
"card_balance": 0,
"lastname": null,
"firstname": "Михаил",
"patronymic": null,
"sex": "",
"email": null,
"phone": "9992131218",
"balance": "0",
"discount": 0,
"type": "",
"birthdate": {
"year": null,
"month": null,
"day": null
}
}
}
Дополнительные пояснения
authKey - секретный ключ, полученный от тех. поддержки Арники
Свернуть