openapi: 3.0.1
info:
title: Abills user API
version: 0.0.11
servers:
- url: https://demo.abills.net.ua:9443/api.cgi
tags:
- name: user
description: Работа с пользователем
- name: internet
description: Работа с услугой Интернет
- name: msgs
description: Работа с заявками пользователя
- name: abon
description: Работа с периодическими списаниями
- name: paysys
description: Работа с платежными системами
- name: config
description: Все доступные конфигурации
paths:
/users/login:
post:
tags:
- user
summary: Авторизация пользователя
operationId: loginUser
requestBody:
content:
'*/*':
schema:
$ref: '#/components/schemas/UserLoginBody'
required: true
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/UserLogin'
/user/{UID}:
get:
tags:
- user
summary: Информация о пользователе
operationId: userInfo
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/User'
security:
- USER_SID: [ ]
/user/{UID}/pi:
get:
tags:
- user
summary: Персональная информация пользователя
operationId: userPersonalInfo
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/UserPi'
security:
- USER_SID: [ ]
/user/{UID}/credit:
get:
tags:
- user
summary: Информация об установке кредита
operationId: userCreditInfo
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/UserCreditInfo'
security:
- USER_SID: [ ]
post:
tags:
- user
summary: Установка кредита пользователю
operationId: userSetCredit
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/UserCredit'
security:
- USER_SID: [ ]
/user/{UID}/internet:
get:
tags:
- internet
summary: Информация об интернет услугах пользователя
operationId: userInternetInfo
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/UserInternet'
security:
- USER_SID: [ ]
/user/{UID}/internet/{ID}:
put:
tags:
- internet
summary: Смена ТП
operationId: userChangeInternetTP
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
- name: ID
in: path
description: ID услуги Интернет
required: true
schema:
type: string
requestBody:
content:
'*/*':
schema:
$ref: '#/components/schemas/body'
required: true
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/InternetChangeTPSuccess'
400:
description: Ошибка
content:
application/json:
schema:
$ref: '#/components/schemas/InternetChangeTPError'
security:
- USER_SID: [ ]
x-codegen-request-body-name: body
/user/{UID}/internet/{ID}/speed:
get:
tags:
- internet
summary: Скорость ТП
operationId: userTpSpeed
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
- name: ID
in: path
description: ID услуги Интернет
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/InternetSpeed'
security:
- USER_SID: [ ]
/user/{UID}/internet/{ID}/holdup:
post:
tags:
- internet
summary: Приостановление услуги Интернет
operationId: userInternetHoldup
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
- name: ID
in: path
description: ID услуги Интернет
required: true
schema:
type: string
requestBody:
content:
'*/*':
schema:
$ref: '#/components/schemas/body_1'
required: true
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/HoldupReply'
security:
- USER_SID: [ ]
x-codegen-request-body-name: body
delete:
tags:
- internet
summary: Удаление рассписания на приостановление услуги Интернет
operationId: userDeleteInternetHoldup
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
- name: ID
in: path
description: ID услуги Интернет
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/HoldupReply'
security:
- USER_SID: [ ]
/user/{UID}/internet/tariffs:
get:
tags:
- internet
summary: Доступные для изменения ТП, на которые хватает денег
operationId: userInternetAvailableToChangeTariffs
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/UserAvailableTariffs'
security:
- USER_SID: [ ]
/user/{UID}/internet/tariffs/all:
get:
tags:
- internet
summary: Все доступные для изменения ТП
operationId: userInternetAvailableToChangeTariffsAll
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/UserAvailableTariffs'
security:
- USER_SID: [ ]
/user/{UID}/internet/{ID}/warnings:
get:
tags:
- internet
summary: Информация о списаниях
operationId: userInternetWarnings
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
- name: ID
in: path
description: ID услуги
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/InternetWarnings'
security:
- USER_SID: [ ]
/user/{UID}/abon:
get:
tags:
- abon
summary: Информация об периодических списаниях пользователя
operationId: userAbonInfo
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/UserAbon'
security:
- USER_SID: [ ]
/user/{UID}/msgs:
get:
tags:
- msgs
summary: Список заявок пользователя
operationId: userMsgsList
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/MsgsArray'
security:
- USER_SID: [ ]
post:
tags:
- msgs
summary: Создание заявки
operationId: userAddMessage
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
requestBody:
content:
'*/*':
schema:
$ref: '#/components/schemas/MsgsAdd'
required: true
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/MsgsAdded'
security:
- USER_SID: [ ]
x-codegen-request-body-name: body
/user/{UID}/msgs/{ID}:
get:
tags:
- msgs
summary: Информация о заявке пользователя
operationId: userMsgs
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
- name: ID
in: path
description: ID заявки
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/MsgsInfo'
security:
- USER_SID: [ ]
/user/{UID}/msgs/{ID}/reply:
get:
tags:
- msgs
summary: Список заявок пользователя
operationId: userMsgReplyList
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
- name: ID
in: path
description: ID заявки
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/MsgsReplyArray'
security:
- USER_SID: [ ]
post:
tags:
- msgs
summary: Создание заявки
operationId: userAddReply
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
- name: ID
in: path
description: ID заявки
required: true
schema:
type: string
requestBody:
content:
'*/*':
schema:
$ref: '#/components/schemas/MsgsReplyAdd'
required: true
responses:
200:
description: Успешное выполнение
content: { }
security:
- USER_SID: [ ]
x-codegen-request-body-name: body
/user/{UID}/msgs/chapters:
get:
tags:
- msgs
summary: Список разделов заявок пользователя
operationId: userMsgsChapters
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/MsgsArrayChapters'
security:
- USER_SID: [ ]
/user/{UID}/paysys/systems:
get:
tags:
- paysys
summary: Список платежных систем доступных пользователю
operationId: userPaysysList
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/PaysysArray'
security:
- USER_SID: [ ]
/user/{UID}/config:
get:
tags:
- config
summary: Список доступных конфигураций пользователя
operationId: userConfig
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/UserConfig'
security:
- USER_SID: [ ]
/user/{UID}/paysys/pay:
post:
tags:
- paysys
summary: Формирование ссылки на быструю оплату
operationId: userPaysysPay
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
requestBody:
content:
'*/*':
schema:
$ref: '#/components/schemas/PaysysPayBody'
required: true
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/PaysysPay'
security:
- USER_SID: [ ]
/user/{UID}/paysys/transaction/status:
post:
tags:
- paysys
summary: Проверка статуса платежа
operationId: userPaysysTransactionStatus
parameters:
- name: UID
in: path
description: UID пользователя
required: true
schema:
type: string
requestBody:
content:
'*/*':
schema:
$ref: '#/components/schemas/PaysysTransactionStatusBody'
required: true
responses:
200:
description: Успешное выполнение
content:
application/json:
schema:
$ref: '#/components/schemas/PaysysTransactionStatus'
security:
- USER_SID: [ ]
components:
schemas:
User:
type: object
properties:
login:
type: string
example: "3433"
deposit:
type: integer
example: 1600
credit:
type: integer
example: 100
creditDate:
type: string
example: 2021-08-13
billId:
type: integer
example: 12
gid:
type: integer
example: 57
disable:
type: integer
example: 0
deleted:
type: integer
example: 0
UserPi:
type: object
properties:
fio:
type: string
example: Иванов Иван Иванович
addressFull:
type: string
example: ул.Адамца, 121, 3
age:
type: integer
example: 33
locationId:
type: integer
example: 1444
contractId:
type: string
example: "575493"
email:
type: array
items:
type: string
example: test@gmail.com
phone:
type: array
items:
type: string
example: "380976574568"
UserInternet:
type: array
items:
$ref: '#/components/schemas/UserInternet_inner'
InternetSpeed:
type: array
items:
$ref: '#/components/schemas/InternetSpeed_inner'
UserAbon:
type: array
items:
$ref: '#/components/schemas/UserAbon_inner'
UserCredit:
type: object
properties:
creditSum:
type: integer
example: 500
creditChangePrice:
type: integer
example: 100
uid:
type: integer
example: 11135
creditDays:
type: string
example: "3"
creditMonthChanges:
type: string
example: "1"
UserCreditInfo:
type: object
properties:
creditChgPrice:
type: string
example: "500"
creditMonthChanges:
type: string
example: "1"
creditSum:
type: string
example: "800"
creditDays:
type: string
example: "3"
UserAvailableTariffs:
type: array
items:
$ref: '#/components/schemas/UserAvailableTariffs_inner'
HoldupReply:
type: object
properties:
success:
type: integer
example: 1
msg:
type: string
InternetWarnings:
type: object
properties:
messageType:
type: string
example: success
warning:
type: string
example: следующее списание через 7 дней
daysToFee:
type: string
example: "2"
sum:
type: integer
example: 150
abonDate:
type: string
example: 2021-10-01
InternetChangeTPSuccess:
type: object
properties:
success:
type: integer
example: 1
uid:
type: integer
InternetChangeTPError:
type: object
properties:
error:
type: integer
example: 145
message:
type: string
messageType:
type: string
messageTitle:
type: string
MsgsAdd:
type: object
properties:
chapter:
type: integer
example: 3
message:
type: string
example: Some message
subject:
type: string
example: Message subject
priority:
type: integer
example: 2
MsgsAdded:
type: object
properties:
insertId:
type: integer
example: 43
msgId:
type: integer
example: 43
affected:
type: integer
example: 1
MsgsInfo:
type: object
properties:
subject:
type: string
example: Message user api subject
message:
type: string
example: Test message from user api
chapterName:
type: string
example: Второй раздел
chapter:
type: integer
example: 3
priority:
type: integer
example: 2
state:
type: integer
example: 0
date:
type: string
example: 2021-09-02 13:20:37:37
MsgsArray:
type: array
items:
$ref: '#/components/schemas/MsgsInfo'
MsgsArrayMsgsArrayChapters:
type: array
items:
$ref: '#/components/schemas/MsgsInfoMsgsChapter'
MsgsReply:
type: object
properties:
uid:
type: integer
example: 0
aid:
type: integer
example: 2
id:
type: integer
example: 54
text:
type: string
example: some reply text
datetime:
type: string
example: 2021-09-02 12:50:47
MsgsReplyAdd:
type: object
properties:
reply_text:
type: string
example: Some reply text
reply_subject:
type: string
example: Subject
MsgsReplyArray:
type: array
items:
$ref: '#/components/schemas/MsgsReply'
body:
type: object
properties:
tp_id:
type: integer
example: 4
date:
type: string
example: 2021-09-17
period:
type: integer
body_1:
type: object
properties:
from_date:
type: string
example: 2021-08-14
to_date:
type: string
example: 2021-08-17
UserInternet_inner:
type: object
properties:
id:
type: integer
example: 2
tpName:
type: string
example: Премиум до 100м
tpId:
type: integer
example: 41
internetStatus:
type: integer
example: 0
cid:
type: string
example: 14:11:11:11:11:c1
monthFee:
type: integer
example: 250
dayFee:
type: integer
example: 0
InternetSpeed_inner:
type: object
properties:
inSpeed:
type: integer
example: 2999
outSpeed:
type: integer
example: 3000
tpNum:
type: integer
example: 155
UserAbon_inner:
type: object
properties:
id:
type: integer
example: 2
name:
type: string
example: Test abon TP
price:
type: integer
example: 100
period:
type: integer
example: 1
nextAbon:
type: string
example: 2021-09-01
comments:
type: string
description:
type: string
example: Test description
UserAvailableTariffs_inner:
type: object
properties:
id:
type: integer
example: 2
name:
type: string
example: Премиум до 100м
tpId:
type: integer
example: 41
monthFee:
type: integer
example: 250
dayFee:
type: integer
example: 0
comments:
type: string
PaysysArray:
type: array
items:
$ref: '#/components/schemas/PaymentSystem'
PaymentSystem:
type: object
properties:
id:
type: integer
example: 1
name:
type: string
example: LiqPay
module:
type: string
example: Liqpay.pm
PaysysPayBody:
type: object
properties:
systemId:
type: integer
example: 1
sum:
type: integer
example: 100
operationId:
type: string
example: 123456789
PaysysPay:
type: object
properties:
operationId:
type: string
example: 123456789
transactionId:
type: string
example: Liqpay:123456789
url:
type: string
example: https://www.liqpay.ua/api/3/checkout?data=123456789&signature=123456789
PaysysTransactionStatus:
type: object
properties:
id:
type: integer
example: 1
datetime:
type: string
example: "2022-01-01 01:01:01"
login:
type: string
example: test
status:
type: integer
example: 1
systemId:
type: integer
example: 1
sum:
type: integer
example: 100
uid:
type: integer
example: 1
transactionId:
type: string
example: Liqpay:123456789
PaysysTransactionStatusBody:
type: object
properties:
transactionId:
type: string
example: Liqpay:123456789
UserLoginBody:
type: object
properties:
login:
type: string
example: testuser
password:
type: string
example: testuser
UserLogin:
type: object
properties:
login:
type: string
example: testuser
sid:
type: string
example: sW44EJZLyWDMeXAV
uid:
type: integer
example: 1
UserConfig:
type: object
properties:
cardsUserPayment:
type: integer
example: 6
docsActsList:
type: integer
example: 9
docsInvoicesList:
type: integer
example: 8
docsReceiptList:
type: integer
example: 5
internetUserInfo:
type: integer
example: 3
internetUserStats:
type: integer
example: 10
msgsUser:
type: integer
example: 1
paysysPayment:
type: integer
example: 4
paysysSubscribe:
type: integer
example: 7
paysysUserLog:
type: integer
example: 2
MsgsChapter:
type: object
properties:
id:
type: integer
example: 1
name:
type: string
example: Example chapter
securitySchemes:
USER_SID:
type: apiKey
name: USERSID
in: header
|