Smartshell API - программный интерфейс ERP-системы для индустрии компьютерных клубов, интернет-кафе и кибер-арен.
ПО SmartShell предназначено для оптимизации операционной деятельности, управления персоналом, предоставления бизнес-аналитик, снижения расходов и увеличения прибыли бизнеса.
Smartshell API используют язык запросов GraphQL, который позволяет клиентам запрашивать только те данные, которые им нужны, и получать их в одном запросе, что делает коммуникацию более эффективной.
Типы запросов GraphQL Smartshell
Основные типы запросов в GraphQL:
Query: запросы в GraphQL
C помощью Query GraphQL получает необходимые данные с сервера.
Тип Query в GraphQL аналогичен методу GET в REST.
Запрос представляет собой строку, которая отправляется в теле HTTP POST-запроса.
Пример запроса getBookings
query bookings {
getBookings(
hostIds:[49387,49388,49461]
)
{
data {
id
}
}
}
В теле запроса передаются идентификаторы хостов, по которым нужно получить данные.
В теле ответа запрашиваются идентификаторы броней указанных хостов.
Пример ответа
В ответ на этот запрос сервер присылает данные в формате JSON.
Структура ответа соответствует структуре запроса:
{
"data": {
"getBookings": {
"data": [
{
"id": 505982
},
{
"id": 509880
},
{
"id": 509881
},
{
"id": 509882
}
]
}
}
}
В ответе возвращаются идентификаторы броней указанных хостов.
Mutation: мутации в GraphQL
С помощью мутаций можно добавлять данные в базу.
Mutation аналогичен методам POST и PUT в REST.
Пример мутации createHost
Мутация создает хост и возвращает его данные.
mutation createHost {
createHost (input:{
group_id:10121
type_id:4692
position:4
alias:"forth"
coord_x:3
coord_y:0
})
{
id
group_id
type_id
position
alias
comment
mac_addr
ip_addr
coord_x
coord_y
created_at
}
}
Для создания нового хоста в теле запроса вводятся параметры HostInput
В теле ответа вводятся интересующие параметры хоста: Host
Пример ответа
{
"data": {
"createHost": {
"id": 49751,
"group_id": 10121,
"type_id": 4692,
"position": 4,
"alias": "forth",
"comment": null,
"mac_addr": null,
"ip_addr": null,
"coord_x": 3,
"coord_y": 0,
"created_at": "2024-02-17 12:01:52"
}
}
}
В ответе возвращаются запрошенные параметры хоста: Host