openapi: 3.0.3
info:
  title: 'Netboom API Documentation'
  description: ''
  version: 1.0.0
servers:
  -
    url: 'https://apidev.netboom.com'
tags:
  -
    name: Account
    description: ''
  -
    name: 'Account Management'
    description: ''
  -
    name: 'Activity Resource'
    description: ''
  -
    name: 'Activity Task'
    description: ''
  -
    name: Adsense
    description: ''
  -
    name: 'App Review'
    description: ''
  -
    name: 'App Review Management'
    description: ''
  -
    name: 'App Update'
    description: ''
  -
    name: Endpoints
    description: ''
  -
    name: 'Featured Game Management'
    description: ''
  -
    name: 'Featured Games'
    description: ''
  -
    name: Feedback
    description: ''
  -
    name: 'Feedback Management'
    description: ''
  -
    name: Game
    description: ''
  -
    name: 'Game Management'
    description: ''
  -
    name: Goods
    description: ''
  -
    name: 'Goods Management'
    description: ''
  -
    name: 'Invite Activity Management'
    description: ''
  -
    name: Menu
    description: ''
  -
    name: 'Order Management'
    description: ''
  -
    name: 'Payment Method'
    description: ''
  -
    name: 'Payment Method Management'
    description: ''
  -
    name: Promoter
    description: ''
  -
    name: 'Quick Login'
    description: ''
  -
    name: 'Recharge & Subscription'
    description: ''
  -
    name: 'Redeem Code Management'
    description: ''
  -
    name: Report
    description: ''
  -
    name: Schedule
    description: ''
  -
    name: Setting
    description: ''
  -
    name: Statistics
    description: ''
  -
    name: User
    description: ''
  -
    name: 'User Management'
    description: ''
components:
  securitySchemes:
    default:
      type: http
      scheme: bearer
      description: 'You can retrieve your token by visiting your dashboard and clicking <b>Generate API token</b>.'
security:
  -
    default: []
paths:
  /api/account:
    get:
      summary: 'get account balance'
      operationId: getAccountBalance
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        401:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example:
                  message: ''
                properties:
                  message:
                    type: string
                    example: ''
      tags:
        - Account
  /admin/accounts/vip_type:
    get:
      summary: 'get account vip type'
      operationId: getAccountVipType
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Account Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                user_id:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
              required:
                - user_id
    put:
      summary: 'update account vip type'
      operationId: updateAccountVipType
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - 'Account Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                user_id:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                vip_type:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
              required:
                - user_id
                - vip_type
  /admin/accounts/gold:
    put:
      summary: 'update account gold coins'
      operationId: updateAccountGoldCoins
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - 'Account Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                user_id:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                gold:
                  type: integer
                  description: 'Must be at least 0.'
                  example: 39
                  nullable: false
              required:
                - user_id
                - gold
  /admin/accounts/cancel-subscription:
    post:
      summary: 'cancel subscription'
      operationId: cancelSubscription
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - 'Account Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                user_id:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
              required:
                - user_id
  /admin/accounts/expiring_gold:
    post:
      summary: 'add expiring gold'
      operationId: addExpiringGold
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - 'Account Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                user_id:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                gold:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                expire_days:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
              required:
                - user_id
                - gold
                - expire_days
    delete:
      summary: 'delete expiring gold'
      operationId: deleteExpiringGold
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - 'Account Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                user_id:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                expiring_gold_id:
                  type: integer
                  description: ''
                  example: 16
                  nullable: true
              required:
                - user_id
  '/admin/activity_resource/{id}':
    get:
      summary: 'Get Activity Resource'
      operationId: getActivityResource
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Activity Resource'
    put:
      summary: 'Update Activity Resource'
      operationId: updateActivityResource
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Activity Resource'
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the activity resource.'
        example: architecto
        required: true
        schema:
          type: string
  /admin/activity_resource:
    post:
      summary: 'Create Activity Resource'
      operationId: createActivityResource
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        201:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Activity Resource'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                sort:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                pid:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                desc:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                tag:
                  type: string
                  description: ''
                  example: null
                  nullable: false
                url:
                  type: string
                  description: ''
                  example: 'http://www.bailey.biz/quos-velit-et-fugiat-sunt-nihil-accusantium-harum.html'
                  nullable: false
                link_game:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                btn_link:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                google_link:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                ad_source:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                status:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
              required:
                - sort
                - pid
  /admin/activity_resource/import:
    post:
      summary: 'Import Activity Resource'
      operationId: importActivityResource
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Activity Resource'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                pid:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                data:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
              required:
                - pid
                - data
  /admin/activity_resource/export:
    post:
      summary: 'Export Activity Resource'
      operationId: exportActivityResource
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Activity Resource'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                pid:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                keyword:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                status:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
              required:
                - pid
  /api/activity-tasks:
    get:
      summary: 'Get Tasks'
      operationId: getTasks
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
        -
          in: header
          name: Version
          description: ''
          example: '1750'
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Activity Task'
  /api/activity-task-records:
    post:
      summary: 'Start Task'
      operationId: startTask
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
        -
          in: header
          name: Version
          description: ''
          example: '1750'
          schema:
            type: string
        -
          in: header
          name: Device-Id
          description: ''
          example: QWERTY
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Activity Task'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                task_id:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
              required:
                - task_id
  '/api/activity-task-records/{id}/completed':
    put:
      summary: 'Complete Task'
      operationId: completeTask
      description: ''
      parameters:
        -
          in: header
          name: Timestamp
          description: ''
          example: '2023-09-12 12:00:00(UTC 0)'
          schema:
            type: string
        -
          in: header
          name: Nonce
          description: ''
          example: 'random string'
          schema:
            type: string
        -
          in: header
          name: Sign
          description: ''
          example: md5(secret+timestamp+nonce)
          schema:
            type: string
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - 'Activity Task'
      security: []
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the activity task record.'
        example: architecto
        required: true
        schema:
          type: string
  '/api/activity-task-records/{id}/claim-rewards':
    put:
      summary: 'Claim Rewards'
      operationId: claimRewards
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses: {  }
      tags:
        - 'Activity Task'
      security: []
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the activity task record.'
        example: architecto
        required: true
        schema:
          type: string
  /admin/activity_tasks:
    get:
      summary: 'Get Activity Tasks'
      operationId: getActivityTasks
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Activity Task'
    post:
      summary: 'Create Activity Task'
      operationId: createActivityTask
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        201:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Activity Task'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                description:
                  type: string
                  description: ''
                  example: 'Eius et animi quos velit et.'
                  nullable: false
                admob_id:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                remark:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                gold:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                expiry_days:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                limit:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                interval:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                region_type:
                  type: string
                  description: ''
                  example: null
                  nullable: false
                region_code:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                status:
                  type: boolean
                  description: ''
                  example: true
                  nullable: false
                rank:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
              required:
                - name
                - description
                - admob_id
  '/admin/activity_tasks/{id}':
    put:
      summary: 'Update Activity  Task'
      operationId: updateActivityTask
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Activity Task'
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the activity task.'
        example: architecto
        required: true
        schema:
          type: string
  /api/adsense:
    get:
      summary: 'Get Adsense'
      operationId: getAdsense
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Adsense
      security: []
    parameters:
      -
        in: path
        name: slot
        description: 'Adsense Slot.'
        example: search
        required: true
        schema:
          type: string
      -
        in: path
        name: type
        description: 'Adsense Type.'
        example: google
        required: true
        schema:
          type: string
  /admin/adsense:
    get:
      summary: 'Get Adsense'
      operationId: getAdsense
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Adsense
    post:
      summary: 'Create Adsense'
      operationId: createAdsense
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        201:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Adsense
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                slot:
                  type: string
                  description: 'Adsense Slot.'
                  example: search
                  nullable: false
                type:
                  type: string
                  description: 'Adsense Type.'
                  example: google
                  nullable: false
                app_keys:
                  type: json
                  description: 'App Keys.'
                  example: '["b131213a82f1dd05a5a9f2bd8c5aeb42"]'
                  nullable: false
                settings:
                  type: json
                  description: Settings.
                  example: '{"b131213a82f1dd05a5a9f2bd8c5aeb42": {"advert_id": "ca-app-pub-6278596840594032/7787681050", "region_code": ["US"], "region_type": "all"}}'
                  nullable: false
              required:
                - slot
                - type
                - app_keys
                - settings
  '/admin/adsense/{id}':
    put:
      summary: 'Update Adsense'
      operationId: updateAdsense
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Adsense
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                slot:
                  type: string
                  description: 'Adsense Slot.'
                  example: search
                  nullable: false
                type:
                  type: string
                  description: 'Adsense Type.'
                  example: google
                  nullable: false
                app_keys:
                  type: json
                  description: 'App Keys.'
                  example: '["b131213a82f1dd05a5a9f2bd8c5aeb42"]'
                  nullable: false
                settings:
                  type: json
                  description: Settings.
                  example: '{"b131213a82f1dd05a5a9f2bd8c5aeb42": {"advert_id": "ca-app-pub-6278596840594032/7787681050", "region_code": ["US"], "region_type": "all"}}'
                  nullable: false
                status:
                  type: integer
                  description: Status.
                  example: 1
                  nullable: false
              required:
                - slot
                - type
                - app_keys
                - settings
                - status
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the adsense.'
        example: architecto
        required: true
        schema:
          type: string
  /api/app-review:
    get:
      summary: 'Get App Review Status'
      operationId: getAppReviewStatus
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
        -
          in: header
          name: Version
          description: ''
          example: '115'
          schema:
            type: string
        -
          in: header
          name: Device-Id
          description: ''
          example: architecto
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'App Review'
  /api/app-review-visit-records:
    post:
      summary: 'Submit Visit Record'
      operationId: submitVisitRecord
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
        -
          in: header
          name: Version
          description: ''
          example: '115'
          schema:
            type: string
        -
          in: header
          name: Device-Id
          description: ''
          example: architecto
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - 'App Review'
  /admin/app-review:
    get:
      summary: 'Get Apps'
      operationId: getApps
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'App Review Management'
    post:
      summary: 'Create App'
      operationId: createApp
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        201:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'App Review Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                app_id:
                  type: string
                  description: 'App Key / Package Name.'
                  example: b131213a82f1dd05a5a9f2bd8c5aeb42
                  nullable: false
                app_name:
                  type: string
                  description: 'App Name.'
                  example: architecto
                  nullable: false
                version:
                  type: string
                  description: Version.
                  example: architecto
                  nullable: false
                status:
                  type: string
                  description: Status.
                  example: '0'
                  nullable: false
                goods_type:
                  type: integer
                  description: 'Goods Type.'
                  example: 2
                  nullable: false
                charge_text:
                  type: string
                  description: 'Charge Text.'
                  example: architecto
                  nullable: false
                charge_url:
                  type: string
                  description: 'Charge Url.'
                  example: 'http://www.bailey.biz/quos-velit-et-fugiat-sunt-nihil-accusantium-harum.html'
                  nullable: false
                subscription_text:
                  type: string
                  description: 'Subscription Text.'
                  example: architecto
                  nullable: false
                subscription_url:
                  type: string
                  description: 'Subscription Url.'
                  example: 'http://www.bailey.biz/quos-velit-et-fugiat-sunt-nihil-accusantium-harum.html'
                  nullable: false
                black_list_countries:
                  type: string
                  description: 'Countries in black list.'
                  example: architecto
                  nullable: false
                white_list_countries:
                  type: integer
                  description: 'Countries in white list.'
                  example: 16
                  nullable: false
                download_link:
                  type: string
                  description: 'Download Link.'
                  example: architecto
                  nullable: false
                remark:
                  type: string
                  description: Remark.
                  example: architecto
                  nullable: false
                rank:
                  type: integer
                  description: Rank.
                  example: 1
                  nullable: false
              required:
                - app_id
                - app_name
                - version
                - status
                - goods_type
                - black_list_countries
                - white_list_countries
  '/admin/app-review/{id}':
    put:
      summary: 'Update App'
      operationId: updateApp
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'App Review Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                goods_type:
                  type: integer
                  description: 'Goods Type.'
                  example: 2
                  nullable: false
                app_id:
                  type: string
                  description: 'App Key / Package Name.'
                  example: b131213a82f1dd05a5a9f2bd8c5aeb42
                  nullable: false
                app_name:
                  type: string
                  description: 'App Name.'
                  example: architecto
                  nullable: false
                version:
                  type: string
                  description: Version.
                  example: architecto
                  nullable: false
                status:
                  type: string
                  description: Status.
                  example: '0'
                  nullable: false
                charge_text:
                  type: string
                  description: 'Charge Text.'
                  example: architecto
                  nullable: false
                charge_url:
                  type: string
                  description: 'Charge Url.'
                  example: 'http://www.bailey.biz/quos-velit-et-fugiat-sunt-nihil-accusantium-harum.html'
                  nullable: false
                black_list_countries:
                  type: string
                  description: 'Countries in black list.'
                  example: architecto
                  nullable: false
                white_list_countries:
                  type: integer
                  description: 'Countries in white list.'
                  example: 16
                  nullable: false
                download_link:
                  type: string
                  description: 'Download Link.'
                  example: architecto
                  nullable: false
                remark:
                  type: string
                  description: Remark.
                  example: architecto
                  nullable: false
                rank:
                  type: integer
                  description: Rank.
                  example: 1
                  nullable: false
              required:
                - goods_type
                - app_id
                - app_name
                - version
                - status
                - black_list_countries
                - white_list_countries
    parameters:
      -
        in: path
        name: id
        description: 'Goods ID.'
        example: 1
        required: true
        schema:
          type: integer
  /admin/app-review-records:
    get:
      summary: 'Get Visit Records / WhiteList / BlackList'
      operationId: getVisitRecordsWhiteListBlackList
      description: ''
      parameters:
        -
          in: query
          name: start_time
          description: 'Start Time.'
          example: architecto
          required: false
          schema:
            type: string
            description: 'Start Time.'
            example: architecto
            nullable: false
        -
          in: query
          name: end_time
          description: 'End Time.'
          example: architecto
          required: false
          schema:
            type: string
            description: 'End Time.'
            example: architecto
            nullable: false
        -
          in: query
          name: app_id
          description: 'App Id.'
          example: architecto
          required: false
          schema:
            type: string
            description: 'App Id.'
            example: architecto
            nullable: false
        -
          in: query
          name: version
          description: Version.
          example: architecto
          required: false
          schema:
            type: string
            description: Version.
            example: architecto
            nullable: false
        -
          in: query
          name: type
          description: Type.
          example: architecto
          required: false
          schema:
            type: string
            description: Type.
            example: architecto
            nullable: false
        -
          in: query
          name: status
          description: '0 for visit records 1 for whitelist 2 for blacklist.'
          example: 0
          required: true
          schema:
            type: integer
            description: '0 for visit records 1 for whitelist 2 for blacklist.'
            example: 0
            nullable: false
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'App Review Management'
    post:
      summary: 'Create WhitList / BlackList'
      operationId: createWhitListBlackList
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        201:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'App Review Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                type:
                  type: string
                  description: required.
                  example: ip
                  nullable: false
                value:
                  type: string
                  description: required.
                  example: 127.0.0.1
                  nullable: false
                status:
                  type: integer
                  description: '0 for visit records 1 for whitelist 2 for blacklist.'
                  example: 0
                  nullable: false
              required:
                - status
    put:
      summary: 'Batch Update WhitList / BlackList'
      operationId: batchUpdateWhitListBlackList
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - 'App Review Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                id:
                  type: integer
                  description: required.
                  example: 1
                  nullable: false
                status:
                  type: integer
                  description: '0 for visit records 1 for whitelist 2 for blacklist.'
                  example: 0
                  nullable: false
              required:
                - status
  '/admin/app-review-records/{id}':
    put:
      summary: 'Update WhitList / BlackList'
      operationId: updateWhitListBlackList
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'App Review Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                status:
                  type: integer
                  description: '0 for visit records 1 for whitelist 2 for blacklist.'
                  example: 0
                  nullable: false
              required:
                - status
    parameters:
      -
        in: path
        name: id
        description: 'Optional parameter. required.'
        required: true
        schema:
          type: integer
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: 1
  /api/app-updates:
    get:
      summary: 'Get Updates'
      operationId: getUpdates
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'App Update'
      security: []
  /admin/app-updates:
    get:
      summary: 'Get Updates'
      operationId: getUpdates
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'App Update'
    post:
      summary: 'Submit Updates'
      operationId: submitUpdates
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - 'App Update'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                app_keys:
                  type: object
                  description: ''
                  example: []
                  nullable: false
                  properties: {  }
                settings:
                  type: object
                  description: ''
                  example: []
                  nullable: false
                  properties: {  }
              required:
                - app_keys
                - settings
  /api/iap/google-notify:
    post:
      summary: 'Receive Google Notifications'
      operationId: receiveGoogleNotifications
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Endpoints
      security: []
  /api/iap/google-notify-v2:
    post:
      summary: 'Receive Google Notifications'
      operationId: receiveGoogleNotifications
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Endpoints
      security: []
  /api/iap/apple-notify:
    post:
      summary: 'Receive Apple Notifications'
      operationId: receiveAppleNotifications
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Endpoints
      security: []
  /api/iap/google-receipt:
    post:
      summary: 'Validate Google Play Store Receipt'
      operationId: validateGooglePlayStoreReceipt
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Endpoints
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                order_id:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                package_name:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                purchase_token:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
              required:
                - order_id
                - package_name
                - purchase_token
  /api/iap/google-receipt-v2:
    post:
      summary: 'Validate Google Play Store Receipt'
      operationId: validateGooglePlayStoreReceipt
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Endpoints
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                google_product_id:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                package_name:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                purchase_token:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
              required:
                - google_product_id
                - package_name
                - purchase_token
  /api/iap/apple-receipt:
    post:
      summary: 'Validate Apple Store Receipt'
      operationId: validateAppleStoreReceipt
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Endpoints
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                orderId:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                receiptData:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
              required:
                - orderId
                - receiptData
  /api/ai/talk:
    post:
      summary: ''
      operationId: postApiAiTalk
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses: {  }
      tags:
        - Endpoints
      security: []
  /api/ai/parameters:
    get:
      summary: ''
      operationId: getApiAiParameters
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example:
                  opening_statement: "Welcome to Netboom!  \n\nI'm your virtual assistant, here to help you get the best out of your cloud gaming experience.\n\nIf you have any questions about subscriptions, gameplay, connection issues, or anything else—just ask!\n\nYou can describe your issue in a few words or choose from the common topics. I'm here 24/7 to support you."
                  suggested_questions: []
                  suggested_questions_after_answer:
                    enabled: false
                  speech_to_text:
                    enabled: false
                  text_to_speech:
                    enabled: false
                    language: ''
                    voice: ''
                  retriever_resource:
                    enabled: true
                  annotation_reply:
                    enabled: false
                  more_like_this:
                    enabled: false
                  user_input_form: []
                  sensitive_word_avoidance:
                    enabled: false
                  file_upload:
                    image:
                      enabled: false
                      number_limits: 3
                      transfer_methods:
                        - local_file
                        - remote_url
                    enabled: false
                    allowed_file_types:
                      - image
                    allowed_file_extensions:
                      - .JPG
                      - .JPEG
                      - .PNG
                      - .GIF
                      - .WEBP
                      - .SVG
                    allowed_file_upload_methods:
                      - local_file
                      - remote_url
                    number_limits: 3
                    fileUploadConfig:
                      file_size_limit: 15
                      batch_count_limit: 5
                      image_file_size_limit: 10
                      video_file_size_limit: 100
                      audio_file_size_limit: 50
                      workflow_file_upload_limit: 10
                  system_parameters:
                    image_file_size_limit: 10
                    video_file_size_limit: 100
                    audio_file_size_limit: 50
                    file_size_limit: 15
                    workflow_file_upload_limit: 10
                properties:
                  opening_statement:
                    type: string
                    example: "Welcome to Netboom!  \n\nI'm your virtual assistant, here to help you get the best out of your cloud gaming experience.\n\nIf you have any questions about subscriptions, gameplay, connection issues, or anything else—just ask!\n\nYou can describe your issue in a few words or choose from the common topics. I'm here 24/7 to support you."
                  suggested_questions:
                    type: array
                    example: []
                  suggested_questions_after_answer:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                        example: false
                  speech_to_text:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                        example: false
                  text_to_speech:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                        example: false
                      language:
                        type: string
                        example: ''
                      voice:
                        type: string
                        example: ''
                  retriever_resource:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                        example: true
                  annotation_reply:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                        example: false
                  more_like_this:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                        example: false
                  user_input_form:
                    type: array
                    example: []
                  sensitive_word_avoidance:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                        example: false
                  file_upload:
                    type: object
                    properties:
                      image:
                        type: object
                        properties:
                          enabled:
                            type: boolean
                            example: false
                          number_limits:
                            type: integer
                            example: 3
                          transfer_methods:
                            type: array
                            example:
                              - local_file
                              - remote_url
                            items:
                              type: string
                      enabled:
                        type: boolean
                        example: false
                      allowed_file_types:
                        type: array
                        example:
                          - image
                        items:
                          type: string
                      allowed_file_extensions:
                        type: array
                        example:
                          - .JPG
                          - .JPEG
                          - .PNG
                          - .GIF
                          - .WEBP
                          - .SVG
                        items:
                          type: string
                      allowed_file_upload_methods:
                        type: array
                        example:
                          - local_file
                          - remote_url
                        items:
                          type: string
                      number_limits:
                        type: integer
                        example: 3
                      fileUploadConfig:
                        type: object
                        properties:
                          file_size_limit:
                            type: integer
                            example: 15
                          batch_count_limit:
                            type: integer
                            example: 5
                          image_file_size_limit:
                            type: integer
                            example: 10
                          video_file_size_limit:
                            type: integer
                            example: 100
                          audio_file_size_limit:
                            type: integer
                            example: 50
                          workflow_file_upload_limit:
                            type: integer
                            example: 10
                  system_parameters:
                    type: object
                    properties:
                      image_file_size_limit:
                        type: integer
                        example: 10
                      video_file_size_limit:
                        type: integer
                        example: 100
                      audio_file_size_limit:
                        type: integer
                        example: 50
                      file_size_limit:
                        type: integer
                        example: 15
                      workflow_file_upload_limit:
                        type: integer
                        example: 10
      tags:
        - Endpoints
      security: []
  /admin/audit-black-white-list-version:
    get:
      summary: ''
      operationId: getAdminAuditBlackWhiteListVersion
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Endpoints
    parameters:
      -
        in: path
        name: channel
        description: Channel.
        example: 2
        required: true
        schema:
          type: integer
      -
        in: path
        name: pkg_type
        description: 'Package Type.'
        example: 1
        required: true
        schema:
          type: integer
  '/admin/audit-black-white-list-version/{id}':
    put:
      summary: ''
      operationId: putAdminAuditBlackWhiteListVersionId
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - Endpoints
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                payment_url:
                  type: required
                  description: 支付地址.
                  example: 'http://www.bailey.biz/quos-velit-et-fugiat-sunt-nihil-accusantium-harum.html'
                  nullable: false
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the audit black white list version.'
        example: architecto
        required: true
        schema:
          type: string
  /admin/settings:
    get:
      summary: ''
      operationId: getAdminSettings
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example:
                  ai_support:
                    value: true
                    extra:
                      app_keys:
                        - 8de2eba1c04cd41b7425707948b722df
                        - b131213a82f1dd05a5a9f2bd8c5aeb42
                        - 6908907985b0978014553feb17a332db
                  wss_url:
                    value: 'wss://vsrwssessus.netboom.com'
                    extra: null
                properties:
                  ai_support:
                    type: object
                    properties:
                      value:
                        type: boolean
                        example: true
                      extra:
                        type: object
                        properties:
                          app_keys:
                            type: array
                            example:
                              - 8de2eba1c04cd41b7425707948b722df
                              - b131213a82f1dd05a5a9f2bd8c5aeb42
                              - 6908907985b0978014553feb17a332db
                            items:
                              type: string
                  wss_url:
                    type: object
                    properties:
                      value:
                        type: string
                        example: 'wss://vsrwssessus.netboom.com'
                      extra:
                        type: string
                        example: null
      tags:
        - Endpoints
      security: []
    put:
      summary: ''
      operationId: putAdminSettings
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses: {  }
      tags:
        - Endpoints
      security: []
  /admin/featured-games:
    get:
      summary: 'Get Featured Games'
      operationId: getFeaturedGames
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Featured Game Management'
    post:
      summary: 'Create Feature Games'
      operationId: createFeatureGames
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - 'Featured Game Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                game_ids:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
              required:
                - game_ids
    parameters:
      -
        in: path
        name: game_id
        description: 'Optional parameter. Game Id.'
        required: true
        schema:
          type: integer
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: 16
      -
        in: path
        name: game_name
        description: 'Optional parameter. Game Name.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
      -
        in: path
        name: top
        description: 'Optional parameter. integer.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: '0'
      -
        in: path
        name: status
        description: 'Optional parameter. integer.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: '0'
  '/admin/featured-games/{id}':
    put:
      summary: 'Update Featured Games'
      operationId: updateFeaturedGames
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Featured Game Management'
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                rank:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                top:
                  type: boolean
                  description: ''
                  example: false
                  nullable: false
                status:
                  type: boolean
                  description: ''
                  example: false
                  nullable: false
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the featured game.'
        example: architecto
        required: true
        schema:
          type: string
  /api/featured-games:
    get:
      summary: 'Get Featured Games'
      operationId: getFeaturedGames
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
        -
          in: header
          name: Version
          description: ''
          example: '1750'
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Featured Games'
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                refresh:
                  type: boolean
                  description: ''
                  example: false
                  nullable: false
  /api/feedback-type:
    get:
      summary: 'Get Feedback Type'
      operationId: getFeedbackType
      description: ''
      parameters:
        -
          in: query
          name: category
          description: Category.
          example: 1
          required: true
          schema:
            type: integer
            description: Category.
            example: 1
            nullable: false
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Feedback
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                category:
                  type: integer
                  description: ''
                  example: '1'
                  nullable: false
                  enum:
                    - '1'
                    - '2'
  /api/feedback/v2:
    get:
      summary: 'Feedback V2'
      operationId: feedbackV2
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Feedback
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                schedule_id:
                  type: integer
                  description: 'The <code>id</code> of an existing record in the \App\Models\Gear\Schedule table.'
                  example: 16
                  nullable: false
              required:
                - schedule_id
    post:
      summary: 'Feedback V2'
      operationId: feedbackV2
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Feedback
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                type_id:
                  type: integer
                  description: 'The <code>id</code> of an existing record in the \App\Models\Assess\FeedbackType table.'
                  example: 16
                  nullable: false
                schedule_id:
                  type: integer
                  description: 'The <code>id</code> of an existing record in the \App\Models\Gear\Schedule table.'
                  example: 16
                  nullable: false
              required:
                - type_id
                - schedule_id
  /admin/feedback/v2:
    get:
      summary: 'Get Feedback V2'
      operationId: getFeedbackV2
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Feedback Management'
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                user_id:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                game_name:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                type_id:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                idc_id:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                start_time:
                  type: string
                  description: 'Must be a valid date.'
                  example: '2025-09-19T08:08:32'
                  nullable: false
                end_time:
                  type: string
                  description: 'Must be a valid date.'
                  example: '2025-09-19T08:08:32'
                  nullable: false
  /admin/feedback-type:
    get:
      summary: 'Get Feedback Type'
      operationId: getFeedbackType
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Feedback Management'
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                category:
                  type: integer
                  description: ''
                  example: '2'
                  nullable: false
                  enum:
                    - '1'
                    - '2'
    post:
      summary: 'Create Feedback Type'
      operationId: createFeedbackType
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        201:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Feedback Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                category:
                  type: integer
                  description: ''
                  example: '2'
                  nullable: false
                  enum:
                    - '1'
                    - '2'
                name:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                status:
                  type: boolean
                  description: ''
                  example: true
                  nullable: false
              required:
                - category
                - name
  '/admin/feedback-type/{id}':
    put:
      summary: 'Update Feedback Type'
      operationId: updateFeedbackType
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Feedback Management'
    delete:
      summary: 'Delete Feedback Type'
      operationId: deleteFeedbackType
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Feedback Management'
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the feedback type.'
        example: architecto
        required: true
        schema:
          type: string
  /api/games/search:
    get:
      summary: 'Search Games'
      operationId: searchGames
      description: ''
      parameters:
        -
          in: query
          name: keyword
          description: 'Search Keyword.'
          example: 'GTA 5'
          required: true
          schema:
            type: string
            description: 'Search Keyword.'
            example: 'GTA 5'
            nullable: false
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Game
      security: []
  '/admin/games/{id}':
    get:
      summary: 'Get Games'
      operationId: getGames
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Game Management'
    put:
      summary: 'Update Games'
      operationId: updateGames
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - 'Game Management'
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                feature_tags:
                  type: string
                  description: ''
                  example: null
                  nullable: true
                archive_id:
                  type: integer
                  description: ''
                  example: 16
                  nullable: true
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the game.'
        example: architecto
        required: true
        schema:
          type: string
  /api/goods:
    get:
      summary: 'Get Goods'
      operationId: getGoods
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Goods
    parameters:
      -
        in: path
        name: goods_type
        description: 'Goods Type.'
        example: 2
        required: true
        schema:
          type: integer
  /admin/subscription-products:
    get:
      summary: 'Get Subscription Products'
      operationId: getSubscriptionProducts
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Goods Management'
    post:
      summary: 'Create Subscription Products'
      operationId: createSubscriptionProducts
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        201:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Goods Management'
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                goods_id:
                  type: '10159'
                  description: ''
                  example: architecto
                  nullable: false
  /admin/goods:
    get:
      summary: 'Get Goods'
      operationId: getGoods
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Goods Management'
    post:
      summary: 'Create Goods'
      operationId: createGoods
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        201:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Goods Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                goods_type:
                  type: integer
                  description: 'Goods Type.'
                  example: 2
                  nullable: false
                app_key:
                  type: string
                  description: 'App Key.'
                  example: b131213a82f1dd05a5a9f2bd8c5aeb42
                  nullable: false
                apple_product_id:
                  type: string
                  description: 'Apple Product ID.'
                  example: architecto
                  nullable: false
                google_product_id:
                  type: string
                  description: 'Google Product ID.'
                  example: architecto
                  nullable: false
                name:
                  type: string
                  description: 'Goods Name.'
                  example: Basic
                  nullable: false
                content:
                  type: string
                  description: 'Goods Description.'
                  example: '80 hours per month'
                  nullable: false
                usd_price:
                  type: number
                  description: 'Price in USD.'
                  example: 9.99
                  nullable: false
                subscription_time_type:
                  type: integer
                  description: 'Subscription Time Type.'
                  example: 2
                  nullable: false
                subscription_time:
                  type: integer
                  description: 'Subscription Time (seconds).'
                  example: 288000
                  nullable: false
                time_type:
                  type: integer
                  description: 'Time Type.'
                  example: 2
                  nullable: false
                time_number:
                  type: integer
                  description: 'Time Number.'
                  example: 1
                  nullable: false
                msorts:
                  type: integer
                  description: Sort.
                  example: 1
                  nullable: false
              required:
                - goods_type
                - app_key
                - name
                - content
                - usd_price
                - subscription_time_type
                - subscription_time
                - time_type
                - time_number
                - msorts
    parameters:
      -
        in: path
        name: goods_id
        description: 'Optional parameter. Goods ID.'
        required: true
        schema:
          type: integer
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: 16
      -
        in: path
        name: name
        description: 'Optional parameter. Goods Name.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
      -
        in: path
        name: goods_type
        description: 'Goods Type.'
        example: 2
        required: true
        schema:
          type: integer
      -
        in: path
        name: app_key
        description: 'Optional parameter. App Key.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: b131213a82f1dd05a5a9f2bd8c5aeb42
  '/admin/goods/{id}':
    put:
      summary: 'Update Goods'
      operationId: updateGoods
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Goods Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                goods_type:
                  type: integer
                  description: 'Goods Type.'
                  example: 2
                  nullable: false
                app_key:
                  type: string
                  description: 'App Key.'
                  example: b131213a82f1dd05a5a9f2bd8c5aeb42
                  nullable: false
                apple_product_id:
                  type: string
                  description: 'Apple Product ID.'
                  example: architecto
                  nullable: false
                google_product_id:
                  type: string
                  description: 'Google Product ID.'
                  example: architecto
                  nullable: false
                name:
                  type: string
                  description: 'Goods Name.'
                  example: Basic
                  nullable: false
                content:
                  type: string
                  description: 'Goods Description.'
                  example: '80 hours per month'
                  nullable: false
                usd_price:
                  type: number
                  description: 'Price in USD.'
                  example: 9.99
                  nullable: false
                subscription_time_type:
                  type: integer
                  description: 'Subscription Time Type.'
                  example: 2
                  nullable: false
                subscription_time:
                  type: integer
                  description: 'Subscription Time (seconds).'
                  example: 288000
                  nullable: false
                time_type:
                  type: integer
                  description: 'Time Type.'
                  example: 2
                  nullable: false
                time_number:
                  type: integer
                  description: 'Time Number.'
                  example: 1
                  nullable: false
                msorts:
                  type: integer
                  description: Sort.
                  example: 1
                  nullable: false
                status:
                  type: integer
                  description: Status.
                  example: 1
                  nullable: false
              required:
                - goods_type
                - app_key
                - name
                - content
                - usd_price
                - subscription_time_type
                - subscription_time
                - time_type
                - time_number
                - msorts
                - status
    parameters:
      -
        in: path
        name: id
        description: 'Goods ID.'
        example: 10159
        required: true
        schema:
          type: integer
  /admin/invite-activity:
    get:
      summary: 'Get Invite Activities'
      operationId: getInviteActivities
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Invite Activity Management'
    post:
      summary: 'Create Invite Activity'
      operationId: createInviteActivity
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Invite Activity Management'
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                activity_name:
                  type: string
                  description: 'Must not be greater than 64 characters.'
                  example: b
                  nullable: false
                activity_status:
                  type: integer
                  description: ''
                  example: '2'
                  nullable: false
                  enum:
                    - '1'
                    - '2'
                generate_mode:
                  type: integer
                  description: ''
                  example: '2'
                  nullable: false
                  enum:
                    - '1'
                    - '2'
                invite_code:
                  type: string
                  description: 'Must not be greater than 64 characters.'
                  example: 'n'
                  nullable: false
                start_used_time:
                  type: string
                  description: 'Must be a valid date. Must be a valid date in the format <code>Y-m-d H:i:s</code>.'
                  example: '2025-09-19 08:08:32'
                  nullable: false
                end_used_time:
                  type: string
                  description: 'Must be a valid date. Must be a valid date in the format <code>Y-m-d H:i:s</code>.'
                  example: '2025-09-19 08:08:32'
                  nullable: false
                promoter_id:
                  type: integer
                  description: 'The <code>user_id</code> of an existing record in the \App\Models\User\UserBasic table.'
                  example: 16
                  nullable: false
                registration_time_limit:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                recharge_limit:
                  type: integer
                  description: ''
                  example: '1'
                  nullable: false
                  enum:
                    - '0'
                    - '1'
                    - '2'
                remark:
                  type: string
                  description: ''
                  example: architecto
                  nullable: true
  '/admin/invite-activity/{id}':
    get:
      summary: 'Get Invite Activity'
      operationId: getInviteActivity
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Invite Activity Management'
    put:
      summary: 'Update Invite Activity'
      operationId: updateInviteActivity
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Invite Activity Management'
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                activity_name:
                  type: string
                  description: 'Must not be greater than 64 characters.'
                  example: b
                  nullable: false
                activity_status:
                  type: integer
                  description: ''
                  example: '1'
                  nullable: false
                  enum:
                    - '1'
                    - '2'
                start_used_time:
                  type: string
                  description: "'generate_mode'    => 'integer|in:1,2',\n'invite_code'      => 'string|max:64',. Must be a valid date. Must be a valid date in the format <code>Y-m-d H:i:s</code>."
                  example: '2025-09-19 08:08:32'
                  nullable: false
                end_used_time:
                  type: string
                  description: 'Must be a valid date. Must be a valid date in the format <code>Y-m-d H:i:s</code>.'
                  example: '2025-09-19 08:08:32'
                  nullable: false
                registration_time_limit:
                  type: integer
                  description: '''promoter_id''      => ''integer|exists:\App\Models\User\UserBasic,user_id'',.'
                  example: 16
                  nullable: false
                recharge_limit:
                  type: integer
                  description: ''
                  example: '2'
                  nullable: false
                  enum:
                    - '0'
                    - '1'
                    - '2'
                remark:
                  type: string
                  description: ''
                  example: architecto
                  nullable: true
    delete:
      summary: 'Delete Invite Activity'
      operationId: deleteInviteActivity
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Invite Activity Management'
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the invite activity.'
        example: '564'
        required: true
        schema:
          type: string
  /admin/invite-activity/statistics:
    get:
      summary: 'Get Invite Activity Statistics'
      operationId: getInviteActivityStatistics
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Invite Activity Management'
  /api/menus:
    get:
      summary: 'Get Menus'
      operationId: getMenus
      description: ''
      parameters:
        -
          in: query
          name: position
          description: 'Menu Position.'
          example: bottom
          required: true
          schema:
            type: string
            description: 'Menu Position.'
            example: bottom
            nullable: false
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
        -
          in: header
          name: Version
          description: ''
          example: '1750'
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Menu
      security: []
  /admin/menus:
    get:
      summary: 'Get Menus'
      operationId: getMenus
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Menu
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                position:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                app_key:
                  type: string
                  description: ''
                  example: null
                  nullable: true
                status:
                  type: string
                  description: ''
                  example: null
                  nullable: true
              required:
                - position
    post:
      summary: 'Create Menu'
      operationId: createMenu
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        201:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Menu
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                position:
                  type: string
                  description: 'Menu Position.'
                  example: bottom
                  nullable: false
                name:
                  type: string
                  description: 'Menu Name.'
                  example: Recommend
                  nullable: false
                icon:
                  type: string
                  description: 'Menu Icon.'
                  example: architecto
                  nullable: false
                focus_icon:
                  type: string
                  description: 'Menu Icon (focus).'
                  example: architecto
                  nullable: false
                app_keys:
                  type: json
                  description: 'App Keys.'
                  example: '["b131213a82f1dd05a5a9f2bd8c5aeb42"]'
                  nullable: false
                settings:
                  type: json
                  description: Settings.
                  example: '{"b131213a82f1dd05a5a9f2bd8c5aeb42": {"redirect_type": "h5", "redirect_url": "/", "region_code": ["US"], "region_type": "all", "version": []}}'
                  nullable: false
                rank:
                  type: integer
                  description: Rank.
                  example: 0
                  nullable: false
                status:
                  type: integer
                  description: Status.
                  example: 0
                  nullable: false
              required:
                - position
                - name
                - icon
                - focus_icon
                - app_keys
                - settings
                - rank
                - status
  '/admin/menus/{id}':
    put:
      summary: 'Update Menu'
      operationId: updateMenu
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        201:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Menu
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                position:
                  type: string
                  description: 'Menu Position.'
                  example: bottom
                  nullable: false
                name:
                  type: string
                  description: 'Menu Name.'
                  example: Recommend
                  nullable: false
                icon:
                  type: string
                  description: 'Menu Icon.'
                  example: architecto
                  nullable: false
                focus_icon:
                  type: string
                  description: 'Menu Icon (focus).'
                  example: architecto
                  nullable: false
                app_keys:
                  type: json
                  description: 'App Keys.'
                  example: '["b131213a82f1dd05a5a9f2bd8c5aeb42"]'
                  nullable: false
                settings:
                  type: json
                  description: Settings.
                  example: '{"b131213a82f1dd05a5a9f2bd8c5aeb42": {"redirect_type": "h5", "redirect_url": "/", "region_code": ["US"], "region_type": "all", "version": []}}'
                  nullable: false
                rank:
                  type: integer
                  description: Rank.
                  example: 0
                  nullable: false
                status:
                  type: integer
                  description: Status.
                  example: 0
                  nullable: false
              required:
                - position
                - name
                - icon
                - focus_icon
                - app_keys
                - settings
                - rank
                - status
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the menu.'
        example: architecto
        required: true
        schema:
          type: string
  /admin/orders:
    get:
      summary: 'Get Orders'
      operationId: getOrders
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Order Management'
  /api/country-payments:
    get:
      summary: 'Get country payments list.'
      operationId: getCountryPaymentsList
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example:
                  payment_methods:
                    -
                      img:
                        - 'https://cdn.bifrost.com/dev/web/2023/July/17/2f254bd20a8f6757a0ff651cf9033c84.png'
                        - 'https://cdn.bifrost.com/dev/web/2023/July/17/2827efc12bcc635a85276d783cec6332.png'
                        - 'https://cdn.bifrost.com/dev/web/2023/July/17/b260fc2da45d35275720b930957bd104.png'
                        - 'https://cdn.bifrost.com/dev/web/2023/July/17/7b8e8437c0b05ad73088f26100679c45.png'
                      text: E-Wallet
                      type: null
                      method: payermax
                    -
                      img:
                        - 'https://cdn.bifrost.com/dev/web/2023/June/30/09141c8f61ca0646aa60a602ce2db159.png'
                      text: PayPal
                      type: 0
                      method: paypal
                    -
                      img:
                        - 'https://cdn.bifrost.com/dev/web/2023/August/1/7f8b2b7845ae46cb110a88fc4679a9bd.png'
                        - 'https://cdn.bifrost.com/dev/web/2023/August/1/2de0c345bbf316c57c3b4f70e84078df.png'
                        - 'https://cdn.bifrost.com/dev/web/2023/August/1/3bb3a06187c2f150952112d1d0609520.png'
                      text: 'Bank Card'
                      type: 1
                      method: airwallex
                properties:
                  payment_methods:
                    type: array
                    example:
                      -
                        img:
                          - 'https://cdn.bifrost.com/dev/web/2023/July/17/2f254bd20a8f6757a0ff651cf9033c84.png'
                          - 'https://cdn.bifrost.com/dev/web/2023/July/17/2827efc12bcc635a85276d783cec6332.png'
                          - 'https://cdn.bifrost.com/dev/web/2023/July/17/b260fc2da45d35275720b930957bd104.png'
                          - 'https://cdn.bifrost.com/dev/web/2023/July/17/7b8e8437c0b05ad73088f26100679c45.png'
                        text: E-Wallet
                        type: null
                        method: payermax
                      -
                        img:
                          - 'https://cdn.bifrost.com/dev/web/2023/June/30/09141c8f61ca0646aa60a602ce2db159.png'
                        text: PayPal
                        type: 0
                        method: paypal
                      -
                        img:
                          - 'https://cdn.bifrost.com/dev/web/2023/August/1/7f8b2b7845ae46cb110a88fc4679a9bd.png'
                          - 'https://cdn.bifrost.com/dev/web/2023/August/1/2de0c345bbf316c57c3b4f70e84078df.png'
                          - 'https://cdn.bifrost.com/dev/web/2023/August/1/3bb3a06187c2f150952112d1d0609520.png'
                        text: 'Bank Card'
                        type: 1
                        method: airwallex
                    items:
                      type: object
                      properties:
                        img:
                          type: array
                          example:
                            - 'https://cdn.bifrost.com/dev/web/2023/July/17/2f254bd20a8f6757a0ff651cf9033c84.png'
                            - 'https://cdn.bifrost.com/dev/web/2023/July/17/2827efc12bcc635a85276d783cec6332.png'
                            - 'https://cdn.bifrost.com/dev/web/2023/July/17/b260fc2da45d35275720b930957bd104.png'
                            - 'https://cdn.bifrost.com/dev/web/2023/July/17/7b8e8437c0b05ad73088f26100679c45.png'
                          items:
                            type: string
                        text:
                          type: string
                          example: E-Wallet
                        type:
                          type: string
                          example: null
                        method:
                          type: string
                          example: payermax
      tags:
        - 'Payment Method'
      security: []
  /admin/country-payments:
    get:
      summary: 'Get country payments list.'
      operationId: getCountryPaymentsList
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                example:
                  -
                    id: 1
                    region_code: DEFAULT
                    payment_methods:
                      - payermax
                      - paypal
                      - airwallex
                    status: 1
                  -
                    id: 2
                    region_code: AF
                    payment_methods:
                      - 'stripe,payermax'
                    status: 0
                  -
                    id: 3
                    region_code: JP
                    payment_methods:
                      - stripe
                      - payermax
                    status: 0
                  -
                    id: 4
                    region_code: US
                    payment_methods:
                      - paypal
                      - airwallex
                      - payermax
                      - stripe
                    status: 0
                  -
                    id: 5
                    region_code: CN
                    payment_methods:
                      - payermax
                      - paypal
                      - airwallex
                    status: 0
                  -
                    id: 6
                    region_code: HK
                    payment_methods:
                      - payermax
                      - paypal
                      - airwallex
                    status: 0
                  -
                    id: 7
                    region_code: MX
                    payment_methods:
                      - paypal
                      - airwallex
                    status: 0
                  -
                    id: 8
                    region_code: PH
                    payment_methods:
                      - stripe
                      - paypal
                    status: 0
                  -
                    id: 10
                    region_code: RU
                    payment_methods:
                      - payermax
                    status: 0
                  -
                    id: 11
                    region_code: BS
                    payment_methods:
                      - Paypal
                    status: 0
                  -
                    id: 12
                    region_code: BZ
                    payment_methods:
                      - payermax
                    status: 0
                  -
                    id: 13
                    region_code: BY
                    payment_methods:
                      - payermax
                    status: 0
                  -
                    id: 14
                    region_code: BM
                    payment_methods:
                      - paypal
                    status: 0
                  -
                    id: 15
                    region_code: BO
                    payment_methods:
                      - stripe
                      - paypal
                    status: 0
                  -
                    id: 16
                    region_code: BV
                    payment_methods:
                      - 'payermax,stripe'
                    status: 0
                  -
                    id: 17
                    region_code: BW
                    payment_methods:
                      - stripe
                    status: 0
                  -
                    id: 18
                    region_code: AQ
                    payment_methods:
                      - stripe
                    status: 0
                  -
                    id: 19
                    region_code: AR
                    payment_methods:
                      - stripe
                      - stripe
                    status: 0
                  -
                    id: 20
                    region_code: AT
                    payment_methods:
                      - payermax
                    status: 0
                  -
                    id: 21
                    region_code: AG
                    payment_methods:
                      - payermax
                    status: 0
                  -
                    id: 22
                    region_code: DO
                    payment_methods:
                      - stripe
                    status: 0
                  -
                    id: 23
                    region_code: FO
                    payment_methods:
                      - payermax
                    status: 0
                  -
                    id: 24
                    region_code: GU
                    payment_methods:
                      - paypal
                    status: 0
                  -
                    id: 25
                    region_code: GP
                    payment_methods:
                      - payermax
                    status: 0
                  -
                    id: 26
                    region_code: GI
                    payment_methods:
                      - stripe
                    status: 0
                  -
                    id: 27
                    region_code: GT
                    payment_methods:
                      - stripe
                    status: 0
                  -
                    id: 28
                    region_code: GR
                    payment_methods:
                      - stripe
                    status: 0
                  -
                    id: 29
                    region_code: GD
                    payment_methods:
                      - stripe
                    status: 0
                  -
                    id: 30
                    region_code: KI
                    payment_methods:
                      - payermax
                    status: 0
                  -
                    id: 31
                    region_code: JO
                    payment_methods:
                      - paypal
                    status: 0
                  -
                    id: 32
                    region_code: KZ
                    payment_methods:
                      - payermax
                    status: 0
                  -
                    id: 33
                    region_code: GB
                    payment_methods:
                      - payermax
                      - paypal
                    status: 0
                  -
                    id: 34
                    region_code: SG
                    payment_methods:
                      - stripe
                    status: 0
                  -
                    id: 35
                    region_code: BH
                    payment_methods:
                      - payermax
                    status: 1
                  -
                    id: 36
                    region_code: CL
                    payment_methods:
                      - paypal
                    status: 1
                  -
                    id: 37
                    region_code: CC
                    payment_methods:
                      - paypal
                    status: 1
                  -
                    id: 38
                    region_code: LK
                    payment_methods:
                      - payermax
                    status: 1
                  -
                    id: 39
                    region_code: LY
                    payment_methods:
                      - paypal
                    status: 1
                  -
                    id: 40
                    region_code: BR
                    payment_methods:
                      - payermax
                      - paypal
                    status: 1
      tags:
        - 'Payment Method Management'
      security: []
    post:
      summary: 'Create country payments.'
      operationId: createCountryPayments
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses: {  }
      tags:
        - 'Payment Method Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                region_code:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                payments:
                  type: object
                  description: ''
                  example: []
                  nullable: false
                  properties: {  }
                status:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
              required:
                - region_code
                - payments
                - status
      security: []
  '/admin/country-payments/{id}':
    put:
      summary: 'update country payments.'
      operationId: updateCountryPayments
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses: {  }
      tags:
        - 'Payment Method Management'
      security: []
    get:
      summary: 'Get country payments By id.'
      operationId: getCountryPaymentsById
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                example: []
      tags:
        - 'Payment Method Management'
      security: []
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the country payment.'
        example: architecto
        required: true
        schema:
          type: string
  '/admin/country-payments/open/{id}':
    put:
      summary: 'set country payment status.'
      operationId: setCountryPaymentStatus
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses: {  }
      tags:
        - 'Payment Method Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                status:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
              required:
                - status
      security: []
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the open.'
        example: architecto
        required: true
        schema:
          type: string
  /api/promoters/invite-code:
    get:
      summary: 'Get Invite Code'
      operationId: getInviteCode
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Promoter
    post:
      summary: 'Create Invite Code'
      operationId: createInviteCode
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Promoter
  /api/promoters/bind-invite-code:
    post:
      summary: 'Bind Invite Code'
      operationId: bindInviteCode
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        201:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
        400:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
        500:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Promoter
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                invite_code:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
              required:
                - invite_code
  /api/quick-login:
    get:
      summary: 'First Step: Get Quick Login Url'
      operationId: firstStepGetQuickLoginUrl
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Quick Login'
      security: []
  '/api/quick-login/{id}':
    put:
      summary: 'Next Step: Scan Qrcode in App and Allow Quick Login'
      operationId: nextStepScanQrcodeInAppAndAllowQuickLogin
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
        410:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Quick Login'
    get:
      summary: 'Third Step: Get Access Token and Compete the Login.'
      operationId: thirdStepGetAccessTokenAndCompeteTheLogin
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
        410:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Quick Login'
      security: []
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the quick login.'
        example: architecto
        required: true
        schema:
          type: string
  /api/subscription/settings:
    get:
      summary: 'Get Payment Url'
      operationId: getPaymentUrl
      description: ''
      parameters:
        -
          in: header
          name: Version
          description: ''
          example: '115'
          schema:
            type: string
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Recharge & Subscription'
      security: []
  /api/subscription:
    post:
      summary: 'Create Order'
      operationId: createOrder
      description: ''
      parameters:
        -
          in: header
          name: Version
          description: ''
          example: '115'
          schema:
            type: string
        -
          in: header
          name: Version-Name
          description: ''
          example: 1.1.5
          schema:
            type: string
        -
          in: header
          name: Device-Id
          description: ''
          example: XXXXXXXXXXXXXXXXXXXX
          schema:
            type: string
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses: {  }
      tags:
        - 'Recharge & Subscription'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                goods_id:
                  type: integer
                  description: 'Goods ID.'
                  example: 10159
                  nullable: false
                payment_method:
                  type: string
                  description: 'Payment Method.'
                  example: airwallex
                  nullable: false
                return_url:
                  type: string
                  description: 'Return Url.'
                  example: 'https://mdev.netboom.com/user'
                  nullable: false
                charge_scene:
                  type: string
                  description: 'Charge Scene.'
                  example: profile
                  nullable: false
                game_id:
                  type: string
                  description: 'Game ID.'
                  example: '0'
                  nullable: false
              required:
                - goods_id
                - payment_method
    get:
      summary: 'Get my subscription'
      operationId: getMySubscription
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Recharge & Subscription'
  /api/charge/order:
    post:
      summary: 'Create Order'
      operationId: createOrder
      description: ''
      parameters:
        -
          in: header
          name: Version
          description: ''
          example: '115'
          schema:
            type: string
        -
          in: header
          name: Version-Name
          description: ''
          example: 1.1.5
          schema:
            type: string
        -
          in: header
          name: Device-Id
          description: ''
          example: XXXXXXXXXXXXXXXXXXXX
          schema:
            type: string
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses: {  }
      tags:
        - 'Recharge & Subscription'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                goods_id:
                  type: integer
                  description: 'Goods ID.'
                  example: 10159
                  nullable: false
                payment_method:
                  type: string
                  description: 'Payment Method.'
                  example: airwallex
                  nullable: false
                return_url:
                  type: string
                  description: 'Return Url.'
                  example: 'https://mdev.netboom.com/user'
                  nullable: false
                charge_scene:
                  type: string
                  description: 'Charge Scene.'
                  example: profile
                  nullable: false
                game_id:
                  type: string
                  description: 'Game ID.'
                  example: '0'
                  nullable: false
              required:
                - goods_id
                - payment_method
  /api/charge/notify:
    post:
      summary: 'Receive pay center notifications'
      operationId: receivePayCenterNotifications
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses: {  }
      tags:
        - 'Recharge & Subscription'
      security: []
  /api/subscription/cancel:
    post:
      summary: 'Cancel my subscription'
      operationId: cancelMySubscription
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - 'Recharge & Subscription'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                order_id:
                  type: integer
                  description: 'Order ID.'
                  example: 16
                  nullable: false
              required:
                - order_id
  /admin/redeem-code/validate-custom-code:
    post:
      summary: 'Validate Custom Code'
      operationId: validateCustomCode
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'Redeem Code Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                activity_id:
                  type: integer
                  description: ''
                  example: 16
                  nullable: true
                generate_mode:
                  type: integer
                  description: ''
                  example: '1'
                  nullable: false
                  enum:
                    - '1'
                    - '2'
                custom_code:
                  type: string
                  description: 'This field is required when <code>generate_mode</code> is <code>2</code>. Must be at least 4 characters. Must not be greater than 20 characters.'
                  example: ngzmiyvdljnikhwa
                  nullable: false
              required:
                - generate_mode
  /api/report/errors:
    post:
      summary: 'Report errors'
      operationId: reportErrors
      description: ''
      parameters:
        -
          in: header
          name: Version
          description: ''
          example: '115'
          schema:
            type: string
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - Report
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                code:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                message:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
              required:
                - code
                - message
      security: []
  '/api/schedule/{id}':
    get:
      summary: 'get schedule info'
      operationId: getScheduleInfo
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
        404:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Schedule
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the schedule.'
        example: '564'
        required: true
        schema:
          type: string
  /api/schedule/speed_test:
    post:
      summary: 'speed test'
      operationId: speedTest
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Schedule
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                game_id:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                idc_list:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
              required:
                - game_id
                - idc_list
  /api/schedule/virtual_queue:
    get:
      summary: 'get virtual queuing info'
      operationId: getVirtualQueuingInfo
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Schedule
  /api/settings:
    get:
      summary: 'get settings'
      operationId: getSettings
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Setting
      security: []
  /admin/statistics/user-payment-conversion-rate:
    get:
      summary: 'Get User Payment Conversion Rate'
      operationId: getUserPaymentConversionRate
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Statistics
    parameters:
      -
        in: path
        name: start_time
        description: 'Optional parameter. Start Time.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
      -
        in: path
        name: end_time
        description: 'Optional parameter. End Time.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
      -
        in: path
        name: app_key
        description: 'Optional parameter. App Key.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
      -
        in: path
        name: version
        description: 'Optional parameter. Nation Code.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
  /admin/statistics/active-payment-conversion-rate:
    get:
      summary: 'Get Active Payment Conversion Rate'
      operationId: getActivePaymentConversionRate
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Statistics
    parameters:
      -
        in: path
        name: start_time
        description: 'Start Time.'
        example: architecto
        required: true
        schema:
          type: string
      -
        in: path
        name: end_time
        description: 'End Time.'
        example: architecto
        required: true
        schema:
          type: string
      -
        in: path
        name: app_key
        description: 'Optional parameter. App Key.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
      -
        in: path
        name: version
        description: 'Optional parameter. Nation Code.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
  /admin/statistics/payment-method-conversion-rate:
    get:
      summary: 'Get Payment Method Conversion Rate'
      operationId: getPaymentMethodConversionRate
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Statistics
    parameters:
      -
        in: path
        name: start_time
        description: 'Optional parameter. Start Time.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
      -
        in: path
        name: end_time
        description: 'Optional parameter. End Time.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
      -
        in: path
        name: app_key
        description: 'Optional parameter. App Key.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
      -
        in: path
        name: version
        description: 'Optional parameter. Nation Code.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
      -
        in: path
        name: pay_type
        description: 'Optional parameter. Pay Type.'
        required: true
        schema:
          type: integer
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: 16
  /admin/statistics/subscription-renewal-rate:
    get:
      summary: 'Get Subscription Renewal Rate'
      operationId: getSubscriptionRenewalRate
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - Statistics
    parameters:
      -
        in: path
        name: start_time
        description: 'Optional parameter. Start Time.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
      -
        in: path
        name: end_time
        description: 'Optional parameter. End Time.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
      -
        in: path
        name: app_key
        description: 'Optional parameter. App Key.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
      -
        in: path
        name: pay_type
        description: 'Optional parameter. Pay Type.'
        required: true
        schema:
          type: integer
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: 16
      -
        in: path
        name: goods_name
        description: 'Optional parameter. Goods Name.'
        required: true
        schema:
          type: string
        examples:
          omitted:
            summary: 'When the value is omitted'
            value: ''
          present:
            summary: 'When the value is present'
            value: architecto
  /api/user/kochava:
    put:
      summary: 'Update Kochava Device Id'
      operationId: updateKochavaDeviceId
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
        201:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - User
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                kochava_device_id:
                  type: string
                  description: 'Kochava Device Id.'
                  example: architecto
                  nullable: false
              required:
                - kochava_device_id
  /api/profile:
    get:
      summary: 'Get user profile.'
      operationId: getUserProfile
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - User
  /api/login:
    post:
      summary: 'Login user with password.'
      operationId: loginUserWithPassword
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses: {  }
      tags:
        - User
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                email:
                  type: string
                  description: 'Must be a valid email address.'
                  example: gbailey@example.net
                  nullable: false
                password:
                  type: string
                  description: 'Must be at least 6 characters.'
                  example: '+-0pBNvYgxwmi/#iw'
                  nullable: false
              required:
                - email
                - password
      security: []
  /api/login/facebook:
    post:
      summary: 'Login with facebook.'
      operationId: loginWithFacebook
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses: {  }
      tags:
        - User
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                token:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                firebase_user_id:
                  type: string
                  description: ''
                  example: architecto
                  nullable: true
              required:
                - token
      security: []
  /api/login/google:
    post:
      summary: 'Login with Google.'
      operationId: loginWithGoogle
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses: {  }
      tags:
        - User
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                client_id:
                  type: string
                  description: ''
                  example: architecto
                  nullable: true
                id_token:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
              required:
                - id_token
      security: []
  /api/login/apple:
    post:
      summary: 'Login with Apple.'
      operationId: loginWithApple
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses: {  }
      tags:
        - User
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                client_id:
                  type: string
                  description: ''
                  example: architecto
                  nullable: true
                id_token:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
              required:
                - id_token
      security: []
  /api/refresh:
    post:
      summary: 'Refresh Token.'
      operationId: refreshToken
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - User
  /api/user:
    delete:
      summary: 'Delete User Account'
      operationId: deleteUserAccount
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
        409:
          description: ''
          content:
            text/plain:
              schema:
                type: string
                example: 'Active subscription found.'
      tags:
        - User
  '/admin/users/{id}':
    get:
      summary: 'get user info'
      operationId: getUserInfo
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        200:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'User Management'
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the user.'
        example: architecto
        required: true
        schema:
          type: string
  '/admin/users/{id}/blacklist':
    post:
      summary: 'add user to backlist'
      operationId: addUserToBacklist
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        201:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example: {  }
                properties: {  }
      tags:
        - 'User Management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                ban_type:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
                ban_days:
                  type: integer
                  description: ''
                  example: 16
                  nullable: false
                reason:
                  type: string
                  description: ''
                  example: architecto
                  nullable: false
              required:
                - ban_type
                - ban_days
                - reason
    delete:
      summary: 'release user from backlist'
      operationId: releaseUserFromBacklist
      description: ''
      parameters:
        -
          in: header
          name: App-Key
          description: ''
          example: 6908907985b0978014553feb17a332db
          schema:
            type: string
      responses:
        204:
          description: ''
      tags:
        - 'User Management'
    parameters:
      -
        in: path
        name: id
        description: 'The ID of the user.'
        example: architecto
        required: true
        schema:
          type: string
