Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Open API (Swagger) Integration for Confluence
openapi: 3.0.1
info:
  title: Abills user API
  version: 0.0.10
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: Работа с платежными системами
paths:
  /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
components:
  schemas/user/{UID}/paysys/systems:
    Userget:
      typetags:
 object
      properties:
 - paysys
      loginsummary:
 Список платежных систем доступных пользователю
      typeoperationId: stringuserPaysysList
      parameters:
        - examplename: "3433"UID
        deposit  in: path
          typedescription: UID integerпользователя
          examplerequired: 1600true
        credit  schema:
            type: integerstring
          example: 100responses:
        creditDate200:
          typedescription: Успешное stringвыполнение
          examplecontent: 2021-08-13

            billIdapplication/json:
          type: integer
   schema:
       example: 12
        gid$ref: '#/components/schemas/PaysysArray'
      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: integerstring
          example: 57"1"
        disablecreditSum:
          type: integerstring
          example: 0"800"
        deletedcreditDays:
          type: integerstring
          example: 0: "3"
    UserAvailableTariffs:
      type: array
      items:
        $ref: '#/components/schemas/UserAvailableTariffs_inner'
    UserPiHoldupReply:
      type: object
      properties:
        fiosuccess:
          type: stringinteger
          example: Иванов Иван Иванович1
        addressFullmsg:
          type: stringstring
    InternetWarnings:
      type: object
   example: ул.Адамца, 121, 3properties:
        agemessageType:
          type: integerstring
          example: 33success
        locationIdwarning:
          type: integerstring
          example: 1444следующее списание через 7 дней
        contractIddaysToFee:
          type: string
          example: "5754932"
        emailsum:
          type: arrayinteger
          itemsexample: 150
        abonDate:
          type: string
            example: test@gmail.com2021-10-01
    InternetChangeTPSuccess:
    phone:
  type: object
       typeproperties: array
          itemssuccess:
            type: stringinteger
            example: "380976574568"1
    UserInternet:
      type: array
      itemsuid:
        $ref  type: '#/components/schemas/UserInternet_inner'integer
    InternetSpeedInternetChangeTPError:
      type: arrayobject
      itemsproperties:
        $ref: '#/components/schemas/InternetSpeed_inner'error:
    UserAbon:
      type: arrayinteger
      items:
    example: 145
   $ref: '#/components/schemas/UserAbon_inner'
    UserCreditmessage:
      type: object
    type:  properties:string
        creditSummessageType:
          type: integerstring
        messageTitle:
  example: 500
        creditChangePricetype: string
    MsgsAdd:
      type: integerobject
          example: 100properties:
        uidchapter:
          type: integer
          example: 111353
        creditDaysmessage:
          type: string
          example: "3"Some message
        creditMonthChangessubject:
          type: string
          example: Message "1"
subject
        UserCreditInfopriority:
      type: object
   type: integer
  properties:
        creditChgPriceexample: 2
    MsgsAdded:
      type: stringobject
          example: "500"properties:
        creditMonthChangesinsertId:
          type: stringinteger
          example: "1"43
        creditSummsgId:
          type: stringinteger
          example: "800"43
        creditDaysaffected:
          type: stringinteger
          example: "3"1
    UserAvailableTariffsMsgsInfo:
      type: arrayobject
      itemsproperties:
        $ref: '#/components/schemas/UserAvailableTariffs_inner'
subject:
          HoldupReplytype: string
      type: object
   example: Message user api properties:subject
        successmessage:
          type: integerstring
          example: 1 Test message from user api
        msgchapterName:
          type: string
    InternetWarnings:
      typeexample: object
      properties:Второй раздел
        messageTypechapter:
          type: stringinteger
          example: success3
        warningpriority:
          type: stringinteger
          example: следующее списание через 7 дней2
        daysToFeestate:
          type: stringinteger
          example: "2"0
        sumdate:
          type: integerstring
          example: 150 2021-09-02 13:20:37
    MsgsArray:
    abonDate:
  type: array
       typeitems: string
          example: 2021-10-01$ref: '#/components/schemas/MsgsInfo'
    InternetChangeTPSuccessMsgsReply:
      type: object
      properties:
        successuid:
          type: integer
          example: 10
        uidaid:
          type: integer
    InternetChangeTPError:
      typeexample: object2
      properties:
        errorid:
          type: integer
          example: 14554
        messagetext:
          type: string
        messageType:
  example: some       type: stringreply text
        messageTitledatetime:
          type: string
    MsgsAdd:
      typeexample: object
      properties:2021-09-02 12:50:47
        chapterMsgsReplyAdd:
          type: integerobject
          example: 3properties:
        messagereply_text:
          type: string
          example: Some Somereply messagetext
        reply_subject:
          type: string
          example: Message subjectSubject
    MsgsReplyArray:
    priority:
   type: array
      typeitems: integer
          example$ref: 2'#/components/schemas/MsgsReply'
    MsgsAddedbody:
      type: object
      properties:
        insertIdtp_id:
          type: integer
          example: 434
        msgIddate:
          type: integerstring
          example: 432021-09-17
        affectedperiod:
          type: integer
          example: 1
    MsgsInfobody_1:
      type: object
      properties:
        subjectfrom_date:
          type: string
          example: Message user api subject2021-08-14
        message:
          type: stringto_date:
          exampletype: Teststring
 message from user api
        chapterName:example: 2021-08-17
    UserInternet_inner:
      type: stringobject
          example: Второй разделproperties:
        chapterid:
          type: integer
          example: 32
        prioritytpName:
          type: integerstring
          example: 2Премиум до 100м
        statetpId:
          type: integer
          example: 041
        dateinternetStatus:
          type: stringinteger
          example: 2021-09-02 13:20:37
 0
        MsgsArraycid:
      type: array
   type: string
  items:
        $ref: '#/components/schemas/MsgsInfo'
example: 14:11:11:11:11:c1
       MsgsReply monthFee:
          type: objectinteger
          propertiesexample: 250
        uiddayFee:
          type: integer
          example: 0
        aidInternetSpeed_inner:
          type: integerobject
          example: 2properties:
        idinSpeed:
          type: integer
          example: 542999
        textoutSpeed:
          type: stringinteger
          example: some reply text3000
        datetimetpNum:
          type: stringinteger
          example: 2021-09-02 12:50:47155
    MsgsReplyAddUserAbon_inner:
      type: object
      properties:
        reply_textid:
          type: stringinteger
          example: Some reply text2
        reply_subjectname:
          type: string
          example: SubjectTest abon TP
    MsgsReplyArray:
    price:
          type: arrayinteger
          itemsexample: 100
        $ref: '#/components/schemas/MsgsReply'period:
    body:
      type: objectinteger
        properties  example: 1
        tp_idnextAbon:
          type: integerstring
          example: 42021-09-01
        datecomments:
          type: string
         description:
 example: 2021-09-17
        periodtype: string
          typeexample: Test integerdescription
    bodyUserAvailableTariffs_1inner:
      type: object
      properties:
        from_dateid:
          type: stringinteger
          example: 2021-08-142
        to_datename:
          type: string
          example: Премиум до 100м
        example: 2021-08-17tpId:
    UserInternet_inner:
      type: objectinteger
        properties  example: 41
        idmonthFee:
          type: integer
          example: 2250
        tpNamedayFee:
          type: stringinteger
          example: Премиум до 100м0
        tpIdcomments:
          type: integerstring
    PaysysArray:
      exampletype: 41array
      items:
        internetStatus:$ref: '#/components/schemas/PaymentSystem'
    PaymentSystem:
      type: integerobject
          example: 0properties:
        cidid:
          type: stringinteger
          example: 14:11:11:11:11:c11
        monthFeename:
          type: integerstring
          example: 250LiqPay
        dayFeemodule:
          type: integerstring
          example: 0Liqpay.pm
    InternetSpeed_innerPaysysPayBody:
      type: object
      properties:
        inSpeedsystemId:
          type: integer
          example: 29991
        outSpeedsum:
          type: integer
          example: 3000100
        tpNumoperationId:
          type: integerstring
          example: 155123456789
    UserAbon_innerPaysysPay:
      type: object
      properties:
        idoperationId:
          type: integerstring
          example: 2123456789
        nametransactionId:
          type: string
          example: Test abon TPLiqpay:123456789
        priceurl:
          type: integerstring
          example: 100https://www.liqpay.ua/api/3/checkout?data=123456789&signature=123456789
    PaysysTransactionStatus:
    period:
  type: object
       typeproperties: integer
        id:
  example: 1
        nextAbontype: integer
          typeexample: string1
        datetime:
  example: 2021-09-01
        commentstype: string
          type: stringexample: "2022-01-01 01:01:01"
        descriptionlogin:
          type: string
          example: Test description
test
        UserAvailableTariffs_innerstatus:
          type: objectinteger
      properties:    example: 1
        idsystemId:
          type: integer
          example: 21
        namesum:
          type: stringinteger
          example: Премиум до 100м100
        tpIduid:
          type: integer
          example: 411
        monthFeetransactionId:
          type: integerstring
          example: 250Liqpay:123456789
    PaysysTransactionStatusBody:
    dayFee:
  type: object
       typeproperties: integer
        transactionId:
  example: 0
       type: comments:string
          typeexample: stringLiqpay:123456789
  securitySchemes:
    USER_SID:
      type: apiKey
      name: USERSID
      in: header