Files
device-voice-h5/docs/产品迭代8月份/11.md
2026-09-16 16:32:08 +08:00

50 KiB
Raw Blame History

资产验证

OpenAPI Specification

openapi: 3.0.1
info:
  title: ''
  description: ''
  version: 1.0.0
paths:
  /api/c/v1/auth/verify-asset:
    post:
      summary: 资产验证
      deprecated: false
      description: ''
      tags:
        - 个人客户 - 认证
        - 个人客户 - 认证
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DtoVerifyAssetRequest'
      responses:
        '200':
          description: 成功
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: 响应码
                    type: integer
                    examples:
                      - 0
                  data:
                    $ref: '#/components/schemas/DtoVerifyAssetResponse'
                  msg:
                    description: 响应消息
                    type: string
                    examples:
                      - success
                  timestamp:
                    description: 时间戳
                    format: date-time
                    type: string
                required:
                  - code
                  - data
                  - msg
                  - timestamp
                type: object
                x-apifox-orders:
                  - code
                  - data
                  - msg
                  - timestamp
                x-apifox-ignore-properties: []
          headers: {}
          x-apifox-name: ''
        '400':
          description: 请求参数错误
          content:
            application/json:
              schema: &ref_0
                $ref: '#/components/schemas/ErrorResponse'
          headers: {}
          x-apifox-name: ''
        '500':
          description: 服务器内部错误
          content:
            application/json:
              schema: *ref_0
          headers: {}
          x-apifox-name: ''
      security: []
      x-apifox-folder: 个人客户 - 认证
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/7591618/apis/api-430306471-run
components:
  schemas:
    DtoVerifyAssetRequest:
      properties:
        identifier:
          description: 资产标识符SN/IMEI/虚拟号/ICCID/MSISDN
          maxLength: 50
          minLength: 1
          type: string
      required:
        - identifier
      type: object
      x-apifox-orders:
        - identifier
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    DtoVerifyAssetResponse:
      properties:
        asset_token:
          description: 资产令牌5分钟有效
          type: string
        expires_in:
          description: 过期时间(秒)
          type: integer
        miniapp_app_id:
          description: 当前生效的小程序 AppID
          type: string
        oa_app_id:
          description: 当前生效的公众号 AppID
          type: string
      type: object
      x-apifox-orders:
        - asset_token
        - expires_in
        - miniapp_app_id
        - oa_app_id
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    ErrorResponse:
      properties:
        code:
          description: 错误码
          type: integer
          examples:
            - 1001
        data:
          description: 错误详情(可选)
          type: object
          x-apifox-orders: []
          properties: {}
          x-apifox-ignore-properties: []
        msg:
          description: 错误消息
          type: string
          examples:
            - 参数验证失败
        timestamp:
          description: 时间戳
          format: date-time
          type: string
      required:
        - code
        - msg
        - timestamp
      type: object
      x-apifox-orders:
        - code
        - data
        - msg
        - timestamp
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: jwt
    AgentOpenAPIAccount:
      description: 代理账号标识,填写代理登录平台使用的用户名或手机号,例如 agent001。
      in: header
      name: X-Agent-Account
      type: apikey
    AgentOpenAPINonce:
      description: 调用方每次请求自行生成的随机串,不需要平台提前分配;同一账号在 5 分钟内不可重复。
      in: header
      name: X-Agent-Nonce
      type: apikey
    AgentOpenAPIPassword:
      description: 代理账号当前登录密码,同时作为 HMAC-SHA256 签名密钥;密码变更后必须使用新密码签名。
      in: header
      name: X-Agent-Password
      type: apikey
    AgentOpenAPISign:
      description: 调用方按签名规则实时计算的 HMAC-SHA256 小写十六进制签名,不是固定值。
      in: header
      name: X-Agent-Sign
      type: apikey
    AgentOpenAPITimestamp:
      description: 调用方生成的请求发起时间,支持 Unix 秒、Unix 毫秒或 RFC3339 时间,必须与签名原文 timestamp 行一致。
      in: header
      name: X-Agent-Timestamp
      type: apikey
    Combination:
      group:
        - id: 1262265
        - id: 1262266
        - id: 1262267
        - id: 1262268
        - id: 1262269
      type: combination
servers:
  - url: https://cmp-api.boss160.cn
    description: 测试环境
security: []

公众号登录

OpenAPI Specification

openapi: 3.0.1
info:
  title: ''
  description: ''
  version: 1.0.0
paths:
  /api/c/v1/auth/wechat-login:
    post:
      summary: 公众号登录
      deprecated: false
      description: ''
      tags:
        - 个人客户 - 认证
        - 个人客户 - 认证
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DtoWechatLoginRequest'
      responses:
        '200':
          description: 成功
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: 响应码
                    type: integer
                    examples:
                      - 0
                  data:
                    $ref: '#/components/schemas/DtoWechatLoginResponse'
                  msg:
                    description: 响应消息
                    type: string
                    examples:
                      - success
                  timestamp:
                    description: 时间戳
                    format: date-time
                    type: string
                required:
                  - code
                  - data
                  - msg
                  - timestamp
                type: object
                x-apifox-orders:
                  - code
                  - data
                  - msg
                  - timestamp
                x-apifox-ignore-properties: []
          headers: {}
          x-apifox-name: ''
        '400':
          description: 请求参数错误
          content:
            application/json:
              schema: &ref_0
                $ref: '#/components/schemas/ErrorResponse'
          headers: {}
          x-apifox-name: ''
        '500':
          description: 服务器内部错误
          content:
            application/json:
              schema: *ref_0
          headers: {}
          x-apifox-name: ''
      security: []
      x-apifox-folder: 个人客户 - 认证
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/7591618/apis/api-430306472-run
components:
  schemas:
    DtoWechatLoginRequest:
      properties:
        asset_token:
          description: A1返回的资产令牌
          type: string
        code:
          description: 微信OAuth授权码
          type: string
      required:
        - asset_token
        - code
      type: object
      x-apifox-orders:
        - asset_token
        - code
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    DtoWechatLoginResponse:
      properties:
        is_new_user:
          description: 是否新创建用户
          type: boolean
        need_bind_phone:
          description: 是否需要绑定手机号
          type: boolean
        token:
          description: 登录JWT令牌
          type: string
      type: object
      x-apifox-orders:
        - is_new_user
        - need_bind_phone
        - token
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    ErrorResponse:
      properties:
        code:
          description: 错误码
          type: integer
          examples:
            - 1001
        data:
          description: 错误详情(可选)
          type: object
          x-apifox-orders: []
          properties: {}
          x-apifox-ignore-properties: []
        msg:
          description: 错误消息
          type: string
          examples:
            - 参数验证失败
        timestamp:
          description: 时间戳
          format: date-time
          type: string
      required:
        - code
        - msg
        - timestamp
      type: object
      x-apifox-orders:
        - code
        - data
        - msg
        - timestamp
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: jwt
    AgentOpenAPIAccount:
      description: 代理账号标识,填写代理登录平台使用的用户名或手机号,例如 agent001。
      in: header
      name: X-Agent-Account
      type: apikey
    AgentOpenAPINonce:
      description: 调用方每次请求自行生成的随机串,不需要平台提前分配;同一账号在 5 分钟内不可重复。
      in: header
      name: X-Agent-Nonce
      type: apikey
    AgentOpenAPIPassword:
      description: 代理账号当前登录密码,同时作为 HMAC-SHA256 签名密钥;密码变更后必须使用新密码签名。
      in: header
      name: X-Agent-Password
      type: apikey
    AgentOpenAPISign:
      description: 调用方按签名规则实时计算的 HMAC-SHA256 小写十六进制签名,不是固定值。
      in: header
      name: X-Agent-Sign
      type: apikey
    AgentOpenAPITimestamp:
      description: 调用方生成的请求发起时间,支持 Unix 秒、Unix 毫秒或 RFC3339 时间,必须与签名原文 timestamp 行一致。
      in: header
      name: X-Agent-Timestamp
      type: apikey
    Combination:
      group:
        - id: 1262265
        - id: 1262266
        - id: 1262267
        - id: 1262268
        - id: 1262269
      type: combination
servers:
  - url: https://cmp-api.boss160.cn
    description: 测试环境
security: []

发送验证码

OpenAPI Specification

openapi: 3.0.1
info:
  title: ''
  description: ''
  version: 1.0.0
paths:
  /api/c/v1/auth/send-code:
    post:
      summary: 发送验证码
      deprecated: false
      description: ''
      tags:
        - 个人客户 - 认证
        - 个人客户 - 认证
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DtoClientSendCodeRequest'
      responses:
        '200':
          description: 成功
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: 响应码
                    type: integer
                    examples:
                      - 0
                  data:
                    $ref: '#/components/schemas/DtoClientSendCodeResponse'
                  msg:
                    description: 响应消息
                    type: string
                    examples:
                      - success
                  timestamp:
                    description: 时间戳
                    format: date-time
                    type: string
                required:
                  - code
                  - data
                  - msg
                  - timestamp
                type: object
                x-apifox-orders:
                  - code
                  - data
                  - msg
                  - timestamp
                x-apifox-ignore-properties: []
          headers: {}
          x-apifox-name: ''
        '400':
          description: 请求参数错误
          content:
            application/json:
              schema: &ref_0
                $ref: '#/components/schemas/ErrorResponse'
          headers: {}
          x-apifox-name: ''
        '500':
          description: 服务器内部错误
          content:
            application/json:
              schema: *ref_0
          headers: {}
          x-apifox-name: ''
      security: []
      x-apifox-folder: 个人客户 - 认证
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/7591618/apis/api-430306470-run
components:
  schemas:
    DtoClientSendCodeRequest:
      properties:
        phone:
          description: 手机号
          maxLength: 11
          minLength: 11
          type: string
        scene:
          description: >-
            业务场景 (bind_phone:绑定手机号, change_phone_old:换绑旧手机,
            change_phone_new:换绑新手机)
          type: string
      required:
        - phone
        - scene
      type: object
      x-apifox-orders:
        - phone
        - scene
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    DtoClientSendCodeResponse:
      properties:
        cooldown_seconds:
          description: 冷却秒数
          type: integer
      type: object
      x-apifox-orders:
        - cooldown_seconds
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    ErrorResponse:
      properties:
        code:
          description: 错误码
          type: integer
          examples:
            - 1001
        data:
          description: 错误详情(可选)
          type: object
          x-apifox-orders: []
          properties: {}
          x-apifox-ignore-properties: []
        msg:
          description: 错误消息
          type: string
          examples:
            - 参数验证失败
        timestamp:
          description: 时间戳
          format: date-time
          type: string
      required:
        - code
        - msg
        - timestamp
      type: object
      x-apifox-orders:
        - code
        - data
        - msg
        - timestamp
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: jwt
    AgentOpenAPIAccount:
      description: 代理账号标识,填写代理登录平台使用的用户名或手机号,例如 agent001。
      in: header
      name: X-Agent-Account
      type: apikey
    AgentOpenAPINonce:
      description: 调用方每次请求自行生成的随机串,不需要平台提前分配;同一账号在 5 分钟内不可重复。
      in: header
      name: X-Agent-Nonce
      type: apikey
    AgentOpenAPIPassword:
      description: 代理账号当前登录密码,同时作为 HMAC-SHA256 签名密钥;密码变更后必须使用新密码签名。
      in: header
      name: X-Agent-Password
      type: apikey
    AgentOpenAPISign:
      description: 调用方按签名规则实时计算的 HMAC-SHA256 小写十六进制签名,不是固定值。
      in: header
      name: X-Agent-Sign
      type: apikey
    AgentOpenAPITimestamp:
      description: 调用方生成的请求发起时间,支持 Unix 秒、Unix 毫秒或 RFC3339 时间,必须与签名原文 timestamp 行一致。
      in: header
      name: X-Agent-Timestamp
      type: apikey
    Combination:
      group:
        - id: 1262265
        - id: 1262266
        - id: 1262267
        - id: 1262268
        - id: 1262269
      type: combination
servers:
  - url: https://cmp-api.boss160.cn
    description: 测试环境
security: []

绑定手机号

OpenAPI Specification

openapi: 3.0.1
info:
  title: ''
  description: ''
  version: 1.0.0
paths:
  /api/c/v1/auth/bind-phone:
    post:
      summary: 绑定手机号
      deprecated: false
      description: ''
      tags:
        - 个人客户 - 认证
        - 个人客户 - 认证
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DtoBindPhoneRequest'
      responses:
        '200':
          description: 成功
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: 响应码
                    type: integer
                    examples:
                      - 0
                  data:
                    $ref: '#/components/schemas/DtoBindPhoneResponse'
                  msg:
                    description: 响应消息
                    type: string
                    examples:
                      - success
                  timestamp:
                    description: 时间戳
                    format: date-time
                    type: string
                required:
                  - code
                  - data
                  - msg
                  - timestamp
                type: object
                x-apifox-orders:
                  - code
                  - data
                  - msg
                  - timestamp
                x-apifox-ignore-properties: []
          headers: {}
          x-apifox-name: ''
        '400':
          description: 请求参数错误
          content:
            application/json:
              schema: &ref_0
                $ref: '#/components/schemas/ErrorResponse'
          headers: {}
          x-apifox-name: ''
        '401':
          description: 未认证或认证已过期
          content:
            application/json:
              schema: *ref_0
          headers: {}
          x-apifox-name: ''
        '403':
          description: 无权访问
          content:
            application/json:
              schema: *ref_0
          headers: {}
          x-apifox-name: ''
        '500':
          description: 服务器内部错误
          content:
            application/json:
              schema: *ref_0
          headers: {}
          x-apifox-name: ''
      security:
        - BearerAuth: []
          x-apifox:
            schemeGroups:
              - id: QWhSmAXxQX3rSb4Ya24X5
                schemeIds:
                  - BearerAuth
            required: true
            use:
              id: QWhSmAXxQX3rSb4Ya24X5
            scopes:
              QWhSmAXxQX3rSb4Ya24X5:
                BearerAuth: []
      x-apifox-folder: 个人客户 - 认证
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/7591618/apis/api-430306466-run
components:
  schemas:
    DtoBindPhoneRequest:
      properties:
        code:
          description: 验证码
          maxLength: 6
          minLength: 6
          type: string
        phone:
          description: 手机号
          maxLength: 11
          minLength: 11
          type: string
      required:
        - code
        - phone
      type: object
      x-apifox-orders:
        - code
        - phone
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    DtoBindPhoneResponse:
      properties:
        bound_at:
          description: 绑定时间
          type: string
        phone:
          description: 已绑定手机号
          type: string
      type: object
      x-apifox-orders:
        - bound_at
        - phone
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    ErrorResponse:
      properties:
        code:
          description: 错误码
          type: integer
          examples:
            - 1001
        data:
          description: 错误详情(可选)
          type: object
          x-apifox-orders: []
          properties: {}
          x-apifox-ignore-properties: []
        msg:
          description: 错误消息
          type: string
          examples:
            - 参数验证失败
        timestamp:
          description: 时间戳
          format: date-time
          type: string
      required:
        - code
        - msg
        - timestamp
      type: object
      x-apifox-orders:
        - code
        - data
        - msg
        - timestamp
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: jwt
    AgentOpenAPIAccount:
      description: 代理账号标识,填写代理登录平台使用的用户名或手机号,例如 agent001。
      in: header
      name: X-Agent-Account
      type: apikey
    AgentOpenAPINonce:
      description: 调用方每次请求自行生成的随机串,不需要平台提前分配;同一账号在 5 分钟内不可重复。
      in: header
      name: X-Agent-Nonce
      type: apikey
    AgentOpenAPIPassword:
      description: 代理账号当前登录密码,同时作为 HMAC-SHA256 签名密钥;密码变更后必须使用新密码签名。
      in: header
      name: X-Agent-Password
      type: apikey
    AgentOpenAPISign:
      description: 调用方按签名规则实时计算的 HMAC-SHA256 小写十六进制签名,不是固定值。
      in: header
      name: X-Agent-Sign
      type: apikey
    AgentOpenAPITimestamp:
      description: 调用方生成的请求发起时间,支持 Unix 秒、Unix 毫秒或 RFC3339 时间,必须与签名原文 timestamp 行一致。
      in: header
      name: X-Agent-Timestamp
      type: apikey
    Combination:
      group:
        - id: 1262265
        - id: 1262266
        - id: 1262267
        - id: 1262268
        - id: 1262269
      type: combination
servers:
  - url: https://cmp-api.boss160.cn
    description: 测试环境
security: []

更换手机号

OpenAPI Specification

openapi: 3.0.1
info:
  title: ''
  description: ''
  version: 1.0.0
paths:
  /api/c/v1/auth/change-phone:
    post:
      summary: 更换手机号
      deprecated: false
      description: ''
      tags:
        - 个人客户 - 认证
        - 个人客户 - 认证
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DtoChangePhoneRequest'
      responses:
        '200':
          description: 成功
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: 响应码
                    type: integer
                    examples:
                      - 0
                  data:
                    $ref: '#/components/schemas/DtoChangePhoneResponse'
                  msg:
                    description: 响应消息
                    type: string
                    examples:
                      - success
                  timestamp:
                    description: 时间戳
                    format: date-time
                    type: string
                required:
                  - code
                  - data
                  - msg
                  - timestamp
                type: object
                x-apifox-orders:
                  - code
                  - data
                  - msg
                  - timestamp
                x-apifox-ignore-properties: []
          headers: {}
          x-apifox-name: ''
        '400':
          description: 请求参数错误
          content:
            application/json:
              schema: &ref_0
                $ref: '#/components/schemas/ErrorResponse'
          headers: {}
          x-apifox-name: ''
        '401':
          description: 未认证或认证已过期
          content:
            application/json:
              schema: *ref_0
          headers: {}
          x-apifox-name: ''
        '403':
          description: 无权访问
          content:
            application/json:
              schema: *ref_0
          headers: {}
          x-apifox-name: ''
        '500':
          description: 服务器内部错误
          content:
            application/json:
              schema: *ref_0
          headers: {}
          x-apifox-name: ''
      security:
        - BearerAuth: []
          x-apifox:
            schemeGroups:
              - id: '-dyyjrlq-bq-ppwJqlHKH'
                schemeIds:
                  - BearerAuth
            required: true
            use:
              id: '-dyyjrlq-bq-ppwJqlHKH'
            scopes:
              '-dyyjrlq-bq-ppwJqlHKH':
                BearerAuth: []
      x-apifox-folder: 个人客户 - 认证
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/7591618/apis/api-430306467-run
components:
  schemas:
    DtoChangePhoneRequest:
      properties:
        new_code:
          description: 新手机号验证码
          maxLength: 6
          minLength: 6
          type: string
        new_phone:
          description: 新手机号
          maxLength: 11
          minLength: 11
          type: string
        old_code:
          description: 旧手机号验证码
          maxLength: 6
          minLength: 6
          type: string
        old_phone:
          description: 旧手机号
          maxLength: 11
          minLength: 11
          type: string
      required:
        - new_code
        - new_phone
        - old_code
        - old_phone
      type: object
      x-apifox-orders:
        - new_code
        - new_phone
        - old_code
        - old_phone
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    DtoChangePhoneResponse:
      properties:
        changed_at:
          description: 换绑时间
          type: string
        phone:
          description: 换绑后手机号
          type: string
      type: object
      x-apifox-orders:
        - changed_at
        - phone
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    ErrorResponse:
      properties:
        code:
          description: 错误码
          type: integer
          examples:
            - 1001
        data:
          description: 错误详情(可选)
          type: object
          x-apifox-orders: []
          properties: {}
          x-apifox-ignore-properties: []
        msg:
          description: 错误消息
          type: string
          examples:
            - 参数验证失败
        timestamp:
          description: 时间戳
          format: date-time
          type: string
      required:
        - code
        - msg
        - timestamp
      type: object
      x-apifox-orders:
        - code
        - data
        - msg
        - timestamp
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: jwt
    AgentOpenAPIAccount:
      description: 代理账号标识,填写代理登录平台使用的用户名或手机号,例如 agent001。
      in: header
      name: X-Agent-Account
      type: apikey
    AgentOpenAPINonce:
      description: 调用方每次请求自行生成的随机串,不需要平台提前分配;同一账号在 5 分钟内不可重复。
      in: header
      name: X-Agent-Nonce
      type: apikey
    AgentOpenAPIPassword:
      description: 代理账号当前登录密码,同时作为 HMAC-SHA256 签名密钥;密码变更后必须使用新密码签名。
      in: header
      name: X-Agent-Password
      type: apikey
    AgentOpenAPISign:
      description: 调用方按签名规则实时计算的 HMAC-SHA256 小写十六进制签名,不是固定值。
      in: header
      name: X-Agent-Sign
      type: apikey
    AgentOpenAPITimestamp:
      description: 调用方生成的请求发起时间,支持 Unix 秒、Unix 毫秒或 RFC3339 时间,必须与签名原文 timestamp 行一致。
      in: header
      name: X-Agent-Timestamp
      type: apikey
    Combination:
      group:
        - id: 1262265
        - id: 1262266
        - id: 1262267
        - id: 1262268
        - id: 1262269
      type: combination
servers:
  - url: https://cmp-api.boss160.cn
    description: 测试环境
security: []

资产信息

OpenAPI Specification

openapi: 3.0.1
info:
  title: ''
  description: ''
  version: 1.0.0
paths:
  /api/c/v1/asset/info:
    get:
      summary: 资产信息
      deprecated: false
      description: ''
      tags:
        - 个人客户 - 资产
        - 个人客户 - 资产
      parameters:
        - name: identifier
          in: query
          description: 资产标识符SN/IMEI/虚拟号/ICCID/MSISDN
          required: true
          schema:
            description: 资产标识符SN/IMEI/虚拟号/ICCID/MSISDN
            maxLength: 50
            minLength: 1
            type: string
      responses:
        '200':
          description: 成功
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: 响应码
                    type: integer
                    examples:
                      - 0
                  data:
                    $ref: '#/components/schemas/DtoAssetInfoResponse'
                  msg:
                    description: 响应消息
                    type: string
                    examples:
                      - success
                  timestamp:
                    description: 时间戳
                    format: date-time
                    type: string
                required:
                  - code
                  - data
                  - msg
                  - timestamp
                type: object
                x-apifox-orders:
                  - code
                  - data
                  - msg
                  - timestamp
                x-apifox-ignore-properties: []
          headers: {}
          x-apifox-name: ''
        '400':
          description: 请求参数错误
          content:
            application/json:
              schema: &ref_0
                $ref: '#/components/schemas/ErrorResponse'
          headers: {}
          x-apifox-name: ''
        '401':
          description: 未认证或认证已过期
          content:
            application/json:
              schema: *ref_0
          headers: {}
          x-apifox-name: ''
        '403':
          description: 无权访问
          content:
            application/json:
              schema: *ref_0
          headers: {}
          x-apifox-name: ''
        '500':
          description: 服务器内部错误
          content:
            application/json:
              schema: *ref_0
          headers: {}
          x-apifox-name: ''
      security:
        - BearerAuth: []
          x-apifox:
            schemeGroups:
              - id: JiRokJdNwH5k5TeDMhlek
                schemeIds:
                  - BearerAuth
            required: true
            use:
              id: JiRokJdNwH5k5TeDMhlek
            scopes:
              JiRokJdNwH5k5TeDMhlek:
                BearerAuth: []
      x-apifox-folder: 个人客户 - 资产
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/7591618/apis/api-430306480-run
components:
  schemas:
    DtoAssetInfoResponse:
      properties:
        activated_at:
          description: 激活时间
          format: date-time
          type: string
          nullable: true
        activation_status:
          description: 激活状态0:未激活, 1:已激活;设备需有生效中主套餐且任意绑定卡已实名)
          type: integer
        activation_status_name:
          description: 激活状态名称(中文)
          type: string
        allowed_payment_methods:
          description: 当前资产允许的支付方式列表 (wallet:钱包, wechat:微信, alipay:支付宝)
          items:
            type: string
          type: array
          nullable: true
        asset_id:
          description: 资产ID
          minimum: 0
          type: integer
        asset_type:
          description: 资产类型card:卡, device:设备)
          type: string
        bound_card_count:
          description: 绑定卡数量
          type: integer
        bound_device_id:
          description: 绑定的设备ID
          minimum: 0
          type: integer
          nullable: true
        bound_device_name:
          description: 绑定的设备名称
          type: string
        bound_device_no:
          description: 绑定的设备虚拟号
          type: string
        bound_phone:
          description: 当前登录用户绑定的手机号
          type: string
        card_category:
          description: 卡业务类型normal:普通卡, industry:行业卡)
          type: string
        cards:
          description: 绑定卡列表含每张卡的ICCID/MSISDN/网络状态/实名状态/插槽位置)
          items:
            $ref: '#/components/schemas/DtoBoundCardInfo'
          type: array
        carrier_id:
          description: 运营商ID
          minimum: 0
          type: integer
        carrier_name:
          description: 运营商名称
          type: string
        carrier_type:
          description: 运营商类型CMCC/CUCC/CTCC/CBN
          type: string
        current_package:
          description: 当前套餐名称(无套餐时为空)
          type: string
        current_package_activated_at:
          description: 当前主套餐开始时间
          format: date-time
          type: string
          nullable: true
        current_package_expires_at:
          description: 当前主套餐过期时间
          format: date-time
          type: string
          nullable: true
        current_package_id:
          description: 当前主套餐ID无主套餐时为0可用于发起续费
          minimum: 0
          type: integer
        current_package_usage_id:
          description: 当前主套餐的套餐使用记录ID无主套餐时为 null
          minimum: 0
          type: integer
          nullable: true
        days_until_final_expiry:
          description: 距预计套餐到期的上海自然日天数,无法精确推算时为 null
          type: integer
          nullable: true
        device_model:
          description: 设备型号
          type: string
        device_name:
          description: 设备名称
          type: string
        device_protect_status:
          description: 设备保护期状态none:无, stop:停机保护, start:开机保护)
          type: string
        device_realtime:
          $ref: '#/components/schemas/DtoDeviceRealtimeInfo'
        device_type:
          description: 设备类型
          type: string
        effective_realname_policy:
          description: >-
            当前资产实际生效的实名认证策略 (none:无需实名, before_order:先实名后充值/购买,
            after_order:先充值/购买后实名)
          type: string
        enable_virtual_data:
          description: 当前主套餐是否启用虚流量(按套餐使用记录快照返回)
          type: boolean
        estimated_final_expires_at:
          description: 预计套餐到期时间,无法精确推算时为 null
          format: date-time
          type: string
          nullable: true
        expiry_estimate_status:
          description: >-
            预计套餐到期推算状态 (exact:可精确推算, waiting_activation:待激活后起算, none:无参与套餐,
            invalid_data:数据异常)
          type: string
        expiry_estimate_status_name:
          description: 预计套餐到期推算状态名称(中文)
          type: string
        gateway_extend:
          description: Gateway 卡状态扩展字段,原样返回上游 extend用于展示运营商侧实际停机原因
          type: string
        generation:
          description: 世代
          type: string
        iccid:
          description: 卡ICCID
          type: string
        identifier:
          description: 资产标识符
          type: string
        imei:
          description: 设备IMEI
          type: string
        is_expiring:
          description: 是否临期(仅精确推算且剩余 0 至 15 个上海自然日时为 true
          type: boolean
        manufacturer:
          description: 制造商
          type: string
        max_sim_slots:
          description: 最大插槽数
          type: integer
        msisdn:
          description: 手机号
          type: string
        network_status:
          description: 网络状态0:停机, 1:开机)
          type: integer
        network_status_name:
          description: 网络状态名称(中文)
          type: string
        real_name_status:
          description: 实名状态0:未实名, 1:已实名)
          type: integer
        real_name_status_name:
          description: 实名状态名称(中文)
          type: string
        real_total_mb:
          description: 当前主套餐真实总量(MB)
          type: integer
        real_used_mb:
          description: 当前主套餐真实已用量(MB)
          type: integer
        realname_policy:
          description: 实名认证策略 (none:无需实名, before_order:先实名后充值/购买, after_order:先充值/购买后实名)
          type: string
        realname_required:
          description: 当前资产是否要求完成实名认证
          type: boolean
        reduction_pct:
          description: 展示增幅比例,公式为(real_total_mb / virtual_total_mb) - 1
          type: number
        renewal_price:
          description: 当前主套餐续费价格(分,按当前销售渠道的生效零售价计算;无主套餐或当前渠道不可续费时为 null
          type: integer
          nullable: true
        sn:
          description: 设备序列号
          type: string
        status:
          description: 资产归属状态1:在库, 2:已分销;卡仍沿用原卡状态枚举)
          type: integer
        status_name:
          description: 状态名称(中文)
          type: string
        virtual_no:
          description: 虚拟号
          type: string
        virtual_total_mb:
          description: 当前主套餐业务停机阈值(MB)
          type: integer
        virtual_used_mb:
          description: 当前主套餐展示已用量(MB)
          type: number
        wallet_balance:
          description: 钱包余额(分)
          type: integer
      type: object
      x-apifox-orders:
        - activated_at
        - activation_status
        - activation_status_name
        - allowed_payment_methods
        - asset_id
        - asset_type
        - bound_card_count
        - bound_device_id
        - bound_device_name
        - bound_device_no
        - bound_phone
        - card_category
        - cards
        - carrier_id
        - carrier_name
        - carrier_type
        - current_package
        - current_package_activated_at
        - current_package_expires_at
        - current_package_id
        - current_package_usage_id
        - days_until_final_expiry
        - device_model
        - device_name
        - device_protect_status
        - device_realtime
        - device_type
        - effective_realname_policy
        - enable_virtual_data
        - estimated_final_expires_at
        - expiry_estimate_status
        - expiry_estimate_status_name
        - gateway_extend
        - generation
        - iccid
        - identifier
        - imei
        - is_expiring
        - manufacturer
        - max_sim_slots
        - msisdn
        - network_status
        - network_status_name
        - real_name_status
        - real_name_status_name
        - real_total_mb
        - real_used_mb
        - realname_policy
        - realname_required
        - reduction_pct
        - renewal_price
        - sn
        - status
        - status_name
        - virtual_no
        - virtual_total_mb
        - virtual_used_mb
        - wallet_balance
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    DtoDeviceRealtimeInfo:
      properties:
        battery_level:
          description: 电池电量百分比
          type: integer
          nullable: true
        client_number:
          description: 当前已连接客户端数
          type: integer
          nullable: true
        connect_time:
          description: 设备本次联网时间(秒)
          type: string
          nullable: true
        created_at:
          description: Gateway创建时间(Unix时间戳)
          type: integer
          nullable: true
        current_iccid:
          description: 当前使用的ICCID
          type: string
          nullable: true
        daily_usage:
          description: 日使用流量(字节)
          type: string
          nullable: true
        device_id:
          description: Gateway设备ID(IMEI/SN)
          type: string
          nullable: true
        device_name:
          description: Gateway返回的设备名称
          type: string
          nullable: true
        device_type:
          description: Gateway返回的设备型号
          type: string
          nullable: true
        dl_stats:
          description: 本次开机下载流量(字节)
          type: string
          nullable: true
        gateway_msg:
          description: Gateway 上游消息(成功时为 null失败时为错误信息
          type: string
          nullable: true
        imei:
          description: Gateway返回的IMEI号
          type: string
          nullable: true
        imsi:
          description: Gateway返回的IMSI
          type: string
          nullable: true
        ip_address:
          description: IP地址
          type: string
          nullable: true
        lan_ip:
          description: 局域网网关IP地址
          type: string
          nullable: true
        last_online_time:
          description: 设备最后在线时间
          type: string
          nullable: true
        last_update_time:
          description: 设备信息最后更新时间
          type: string
          nullable: true
        limit_speed:
          description: 限速速率(KB/s)
          type: integer
          nullable: true
        mac_address:
          description: MAC地址
          type: string
          nullable: true
        max_clients:
          description: 最大连接客户端数
          type: integer
          nullable: true
        online_status:
          description: 在线状态1:在线, 2:离线)
          type: integer
          nullable: true
        rsrp:
          description: 参考信号接收功率(dBm)
          type: integer
          nullable: true
        rsrq:
          description: 参考信号接收质量(dB)
          type: integer
          nullable: true
        rssi:
          description: 接收信号强度
          type: string
          nullable: true
        run_time:
          description: 设备本次开机运行时间(秒)
          type: string
          nullable: true
        signal_bad_reason:
          description: 信号较弱时的怀疑原因提示
          type: string
          nullable: true
        signal_quality:
          description: 信号综合判断(信号很好/信号正常/信号较弱/信号很差/暂无数据)
          type: string
          nullable: true
        sinr:
          description: 信噪比(dB)
          type: integer
          nullable: true
        software_version:
          description: 软件版本号
          type: string
          nullable: true
        ssid:
          description: WiFi热点名称
          type: string
          nullable: true
        status:
          description: 设备状态1:正常, 0:禁用)
          type: integer
          nullable: true
        switch_mode:
          description: 切卡模式0:自动, 1:手动)
          type: integer
          nullable: true
        sync_interval:
          description: 信息上报周期(秒)
          type: integer
          nullable: true
        ul_stats:
          description: 本次开机上传流量(字节)
          type: string
          nullable: true
        updated_at:
          description: Gateway更新时间(Unix时间戳)
          type: integer
          nullable: true
        wan_ip:
          description: 基站分配IPv4地址
          type: string
          nullable: true
        wifi_enabled:
          description: WiFi开关状态
          type: boolean
          nullable: true
        wifi_password:
          description: WiFi密码
          type: string
          nullable: true
      type: object
      x-apifox-orders:
        - battery_level
        - client_number
        - connect_time
        - created_at
        - current_iccid
        - daily_usage
        - device_id
        - device_name
        - device_type
        - dl_stats
        - gateway_msg
        - imei
        - imsi
        - ip_address
        - lan_ip
        - last_online_time
        - last_update_time
        - limit_speed
        - mac_address
        - max_clients
        - online_status
        - rsrp
        - rsrq
        - rssi
        - run_time
        - signal_bad_reason
        - signal_quality
        - sinr
        - software_version
        - ssid
        - status
        - switch_mode
        - sync_interval
        - ul_stats
        - updated_at
        - wan_ip
        - wifi_enabled
        - wifi_password
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    DtoBoundCardInfo:
      properties:
        card_id:
          description: 卡ID
          minimum: 0
          type: integer
        carrier_id:
          description: 运营商ID
          minimum: 0
          type: integer
        carrier_name:
          description: 运营商名称
          type: string
        carrier_type:
          description: 运营商类型
          type: string
        gateway_extend:
          description: Gateway 卡状态扩展字段,原样返回上游 extend用于展示运营商侧实际停机原因
          type: string
        iccid:
          description: ICCID
          type: string
        is_current:
          description: 是否为当前使用的卡
          type: boolean
        last_card_status_check_at:
          description: 最后一次卡状态检查时间
          format: date-time
          type: string
          nullable: true
        last_data_check_at:
          description: 最后一次流量检查时间
          format: date-time
          type: string
          nullable: true
        last_real_name_check_at:
          description: 最后一次实名检查时间
          format: date-time
          type: string
          nullable: true
        last_sync_time:
          description: 最后同步时间
          format: date-time
          type: string
          nullable: true
        msisdn:
          description: 手机号
          type: string
        network_status:
          description: 网络状态0停机 1开机
          type: integer
        real_name_at:
          description: 该卡最近一次完成实名的时间,未实名时为 null
          format: date-time
          type: string
          nullable: true
        real_name_status:
          description: 实名状态0未实名 1已实名
          type: integer
        realname_policy:
          description: 实名认证策略 (none:无需实名, before_order:先实名后充值/购买, after_order:先充值/购买后实名)
          type: string
        slot_position:
          description: 插槽位置
          type: integer
      type: object
      x-apifox-orders:
        - card_id
        - carrier_id
        - carrier_name
        - carrier_type
        - gateway_extend
        - iccid
        - is_current
        - last_card_status_check_at
        - last_data_check_at
        - last_real_name_check_at
        - last_sync_time
        - msisdn
        - network_status
        - real_name_at
        - real_name_status
        - realname_policy
        - slot_position
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    ErrorResponse:
      properties:
        code:
          description: 错误码
          type: integer
          examples:
            - 1001
        data:
          description: 错误详情(可选)
          type: object
          x-apifox-orders: []
          properties: {}
          x-apifox-ignore-properties: []
        msg:
          description: 错误消息
          type: string
          examples:
            - 参数验证失败
        timestamp:
          description: 时间戳
          format: date-time
          type: string
      required:
        - code
        - msg
        - timestamp
      type: object
      x-apifox-orders:
        - code
        - data
        - msg
        - timestamp
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: jwt
    AgentOpenAPIAccount:
      description: 代理账号标识,填写代理登录平台使用的用户名或手机号,例如 agent001。
      in: header
      name: X-Agent-Account
      type: apikey
    AgentOpenAPINonce:
      description: 调用方每次请求自行生成的随机串,不需要平台提前分配;同一账号在 5 分钟内不可重复。
      in: header
      name: X-Agent-Nonce
      type: apikey
    AgentOpenAPIPassword:
      description: 代理账号当前登录密码,同时作为 HMAC-SHA256 签名密钥;密码变更后必须使用新密码签名。
      in: header
      name: X-Agent-Password
      type: apikey
    AgentOpenAPISign:
      description: 调用方按签名规则实时计算的 HMAC-SHA256 小写十六进制签名,不是固定值。
      in: header
      name: X-Agent-Sign
      type: apikey
    AgentOpenAPITimestamp:
      description: 调用方生成的请求发起时间,支持 Unix 秒、Unix 毫秒或 RFC3339 时间,必须与签名原文 timestamp 行一致。
      in: header
      name: X-Agent-Timestamp
      type: apikey
    Combination:
      group:
        - id: 1262265
        - id: 1262266
        - id: 1262267
        - id: 1262268
        - id: 1262269
      type: combination
servers:
  - url: https://cmp-api.boss160.cn
    description: 测试环境
security: []