UBTech subscriptions API

Receive data from remote device.

Operations 11

PUT /subscriptions/motions Get the motion's status, which is pushed from the remote device. #
PUT /subscriptions/sensors/gyro Get the gyroscope sensor's data, which is pushed from the remote device. #
PUT /subscriptions/sensors/ultrasonic Get ultrasonic sensor's data, which is pushed from the remote device. #
PUT /subscriptions/sensors/infrared Get infrared sensor's data, which is pushed from the remote device. #
PUT /subscriptions/sensors/environment Get environment sensor's data, which is pushed from the remote device. #
PUT /subscriptions/sensors/touch Get touch sensor's data, which is pushed from the remote device. #
PUT /subscriptions/sensors/pressure Get pressure sensor's data, which is pushed from the remote device. #
PUT /subscriptions/visions Get compute vision's result, which is pushed from the remote device. #
PUT /subscriptions/voice/iat Get auto transform's result, which is pushed from the remote device. #
PUT /subscriptions/voice/asr Get automatic speech recognition's result, which is pushed from the remote device. #
PUT /subscriptions/voice/tts Get text to speech's result, which is pushed from the remote device. #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/ubtech-subscriptions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

ubtech-subscriptions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: " ## Overview\nOpen ADK is designed for the users that they can build their own application very quickly. Open ADK provided two features:\n- Easy way to call API\n- Easy way to receive the data from remote device\n\n## Requirements.\nPython 2.7 or 3.4+\n\n## Installation & Usage\nYou can install Open ADK from github.\n```\npip install git+https://github.com/UBTEDU/Yanshee_OpenADK.git\n```\n(you may need to run pip with root permission: sudo pip install git+https://github.com/UBTEDU/Yanshee_OpenADK.git)\nThen import the package:\n```\nimport openadk\n```\n\n## Setuptools\nInstall via [Setuptools](https://pypi.org/project/setuptools/).\n```\npython setup.py install --user\n```\n(or sudo python setup.py install to install the package for all users)\nThen import the package:\n```\nimport openadk\n```\n\n## Getting Started\nPlease follow the installation procedure and then run the following:\n```\nfrom __future__ import print_function\nimport time\nimport openadk\nfrom openadk.rest import ApiException\nfrom pprint import pprint\n\n# create an instance of the API class\nconfiguration = openadk.Configuration()\nconfiguration.host = 'http://<ip>:9090/v1'\napi_instance = openadk.DevicesApi(openadk.ApiClient(configuration))\n\ntry:\n\t# Get system's battery information\n\tapi_response = api_instance.get_devices_battery()\n\tpprint(api_response)\nexcept ApiException as e:\n\tprint(\"Exception when calling DevicesApi->get_devices_battery: %s\" % e)\n```\n"
  version: 1.0.0
  title: Yanshee Open ADK Subscriptions API
  termsOfService: https://account.ubtrobot.com/gdpr/ukit/v1.0.3/TermsOfUse_en.html
  contact:
    email: swenggroup@ubtrobot.com
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
servers:
- url: http://127.0.0.1:10101/v1
tags:
- name: subscriptions
  description: Receive data from remote device.
paths:
  /subscriptions/motions:
    put:
      tags:
      - subscriptions
      summary: Get the motion's status, which is pushed from the remote device.
      description: ' Get motions'' status. The possible values:

        - idle

        - run

        - pause '
      operationId: putMotions
      responses:
        200:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCommonResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionMotionsStatusResponse'
        description: ' The motion''s status. '
        required: true
  /subscriptions/sensors/gyro:
    put:
      tags:
      - subscriptions
      summary: Get the gyroscope sensor's data, which is pushed from the remote device.
      description: ''
      operationId: putSensorsSubscription
      responses:
        200:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCommonResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionSensorsGyroValueResponse'
        required: true
  /subscriptions/sensors/ultrasonic:
    put:
      tags:
      - subscriptions
      summary: Get ultrasonic sensor's data, which is pushed from the remote device.
      description: ''
      operationId: putSensorsSubscriptionSensorsUltrasonic
      responses:
        200:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCommonResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionSensorsUltrasonicValueResponse'
        required: true
  /subscriptions/sensors/infrared:
    put:
      tags:
      - subscriptions
      summary: Get infrared sensor's data, which is pushed from the remote device.
      description: ''
      operationId: putSensorsSubscriptionSensorsInfrared
      responses:
        200:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCommonResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionSensorsInfraredValueResponse'
        required: true
  /subscriptions/sensors/environment:
    put:
      tags:
      - subscriptions
      summary: Get environment sensor's data, which is pushed from the remote device.
      description: ''
      operationId: putSensorsSubscriptionSensorsEnvironment
      responses:
        200:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCommonResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionSensorsEnvironmentValueResponse'
        required: true
  /subscriptions/sensors/touch:
    put:
      tags:
      - subscriptions
      summary: Get touch sensor's data, which is pushed from the remote device.
      description: ''
      operationId: putSensorsSubscriptionSensorsTouch
      responses:
        200:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCommonResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionSensorsTouchValueResponse'
        required: true
  /subscriptions/sensors/pressure:
    put:
      tags:
      - subscriptions
      summary: Get pressure sensor's data, which is pushed from the remote device.
      description: ''
      operationId: putSensorsSubscriptionSensorsPressure
      responses:
        200:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCommonResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionSensorsPressureValueResponse'
        required: true
  /subscriptions/visions:
    put:
      tags:
      - subscriptions
      summary: Get compute vision's result, which is pushed from the remote device.
      description: 'URL example: http://10.10.1.30:80/subscriptions/visions'
      operationId: putVisionSubscriptionVisions
      responses:
        200:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCommonResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionVisionsGetResponse'
        required: true
  /subscriptions/voice/iat:
    put:
      tags:
      - subscriptions
      summary: Get auto transform's result, which is pushed from the remote device.
      description: 'URL example: http://10.10.1.30:80/subscriptions/voice/iat'
      operationId: putVoiceIatSubscriptionVoiceIAT
      responses:
        200:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCommonResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionVoiceResponse'
        required: true
  /subscriptions/voice/asr:
    put:
      tags:
      - subscriptions
      summary: Get automatic speech recognition's result, which is pushed from the remote device.
      description: 'URL example: http://10.10.1.30:80/subscriptions/voice/asr'
      operationId: putVoiceAsrSubscriptionsVoiceASR
      responses:
        200:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCommonResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionVoiceResponse'
        required: true
  /subscriptions/voice/tts:
    put:
      tags:
      - subscriptions
      summary: Get text to speech's result, which is pushed from the remote device.
      description: 'Example URL : http://10.10.1.30:80/tts'
      operationId: putTTSSubscriptionsVoiceTTS
      responses:
        200:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCommonResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionVoiceResponse'
        required: true
components:
  schemas:
    SubscriptionSensorsEnvironmentValue:
      type: object
      required:
      - environment
      properties:
        environment:
          type: array
          items:
            $ref: '#/components/schemas/SubscriptionSensorsEnvironmentInfo'
      xml:
        name: SubscriptionSensorsEnvironmentValue
    SubscriptionMotionsStatus:
      type: object
      required:
      - status
      properties:
        status:
          type: string
          description: The motions' status.
          enum:
          - idle
          - run
          - pause
        name:
          type: string
          description: Motion name
          default: None
        timestamp:
          type: integer
          format: int64
          description: Timestamp, Unix standard time.
          example: 1551838515
    SubscriptionSensorsUltrasonicValue:
      type: object
      required:
      - ultrasonic
      properties:
        ultrasonic:
          type: array
          items:
            $ref: '#/components/schemas/SubscriptionSensorsUltrasonicInfo'
      xml:
        name: SubscriptionSensorsUltrasonicValue
    SubscriptionName:
      type: object
      required:
      - name
      properties:
        name:
          type: string
      xml:
        name: SubscriptionName
    SubscriptionSensorsUltrasonicInfo:
      type: object
      required:
      - id
      - value
      properties:
        id:
          description: Sensor's I2C address.
          type: integer
          format: int32
          minimum: 1
          maximum: 127
          example: 17
        slot:
          type: integer
          description: Sensor's slot number.
          format: int32
          minimum: 1
          maximum: 6
          example: 1
        value:
          description: ' The ultrasonic sensor''s value. (mm) '
          type: integer
          format: int32
          example: 25
      xml:
        name: SubscriptionSensorsUltrasonicInfo
    SubscriptionSensorsEnvironmentValueResponse:
      type: object
      required:
      - code
      - data
      - msg
      properties:
        code:
          type: integer
          description: Return code. 0 means success.
          format: int32
        data:
          $ref: '#/components/schemas/SubscriptionSensorsEnvironmentValue'
        msg:
          type: string
          description: Return code's details.
          example: Success
      xml:
        name: SubscriptionSensorsEnvironmentValueResponse
    SubscriptionSensorsInfraredInfo:
      type: object
      required:
      - id
      - value
      properties:
        id:
          description: Sensor's I2C address.
          type: integer
          format: int32
          minimum: 1
          maximum: 127
          example: 23
        slot:
          type: integer
          description: Sensor's slot number.
          format: int32
          minimum: 1
          maximum: 6
          example: 1
        value:
          description: Distance value. (mm)
          type: integer
          format: int32
          example: 25
      xml:
        name: SubscriptionSensorsInfraredInfo
    SubscriptionVisionsAge:
      type: object
      properties:
        age:
          type: integer
          description: Age.
          example: 5
          minimum: 0
        group:
          type: string
          description: ' The age group value. The possible values:

            - baby

            - children

            - juvenile

            - youth

            - middle_age

            - old_age

            - none '
          example: baby
      xml:
        name: SubscriptionVisionsAge
    SubscriptionSensorsPressureValue:
      type: object
      required:
      - pressure
      properties:
        pressure:
          type: array
          items:
            $ref: '#/components/schemas/SubscriptionSensorsPressureInfo'
      xml:
        name: SubscriptionSensorsUltrasonicValue
    SubscriptionVisionsResults:
      type: object
      properties:
        analysis:
          $ref: '#/components/schemas/SubscriptionVisionsAnalysis'
        recognition:
          $ref: '#/components/schemas/SubscriptionName'
        quantity:
          type: integer
          description: Quantity.
          minimum: 0
          example: 1
        color:
          type: array
          description: ' The color results. The possible values:

            - none

            - black

            - gray

            - white

            - red

            - orange

            - yellow

            - green

            - cyan

            - blue

            - purple '
          items:
            $ref: '#/components/schemas/SubscriptionName'
          example:
          - name: black
          - name: gray
          - name: red
          - name: blue
      xml:
        name: SubscriptionVisionsResults
    SubscriptionSensorsPressureInfo:
      type: object
      required:
      - id
      - value
      properties:
        id:
          description: Sensor's I2C address.
          type: integer
          format: int32
          minimum: 1
          maximum: 127
          example: 35
        slot:
          type: integer
          description: Sensor's slot number.
          format: int32
          minimum: 1
          maximum: 6
          example: 1
        value:
          description: The pressure sensor's value. (N)
          type: integer
          format: int32
          example: 25
      xml:
        name: SubscriptionSensorsPressureInfo
    SubscriptionSensorsInfraredValue:
      type: object
      required:
      - infrared
      properties:
        infrared:
          type: array
          items:
            $ref: '#/components/schemas/SubscriptionSensorsInfraredInfo'
      xml:
        name: SubscriptionSensorsInfraredValue
    SubscriptionSensorsTouchValue:
      type: object
      required:
      - touch
      properties:
        touch:
          type: array
          items:
            $ref: '#/components/schemas/SubscriptionSensorsTouchInfo'
      xml:
        name: SubscriptionSensorsTouchValue
    SubscriptionSensorsPressureValueResponse:
      type: object
      required:
      - code
      - data
      - msg
      properties:
        code:
          type: integer
          description: Return code. 0 means success.
          format: int32
        data:
          $ref: '#/components/schemas/SubscriptionSensorsPressureValue'
        msg:
          type: string
          description: Return code's details.
          example: Success
      xml:
        name: SubscriptionSensorsPressureValueResponse
    SubscriptionSensorsEnvironmentInfo:
      type: object
      required:
      - id
      - temperature
      - humidity
      properties:
        id:
          type: integer
          format: int32
          minimum: 1
          maximum: 127
          example: 54
        slot:
          type: integer
          description: The sensor's slot number.
          format: int32
          minimum: 1
          maximum: 6
          example: 1
        temperature:
          description: The temperature sensor's value.
          type: integer
          format: int32
          example: 25
        humidity:
          description: The humidity sensor's value.
          type: integer
          format: int32
          example: 75
        pressure:
          description: The pressure sensor's value.
          type: integer
          format: int32
          example: 1003
      xml:
        name: SubscriptionSensorsEnvironmentInfo
    SubscriptionSensorsGyroValue:
      type: object
      required:
      - gyro
      properties:
        gyro:
          type: array
          items:
            $ref: '#/components/schemas/SubscriptionSensorsGyroInfo'
      xml:
        name: SubscriptionSensorsGyroValue
    SubscriptionCommonResponse:
      type: object
      required:
      - code
      - data
      - msg
      properties:
        code:
          type: integer
          description: Return code. 0 means success.
          format: int32
        data:
          type: object
          example: {}
        msg:
          description: Return code's details.
          type: string
          example: Success
      xml:
        name: SubscriptionCommonResponse
    SubscriptionSensorsTouchValueResponse:
      type: object
      required:
      - code
      - data
      - msg
      properties:
        code:
          type: integer
          description: Return code. 0 means success.
          format: int32
        data:
          $ref: '#/components/schemas/SubscriptionSensorsTouchValue'
        msg:
          type: string
          description: Return code's details.
          example: Success
      xml:
        name: SubscriptionSensorsTouchValueResponse
    SubscriptionSensorsGyroValueResponse:
      type: object
      required:
      - code
      - data
      - msg
      properties:
        code:
          type: integer
          description: Return code. 0 means success.
          format: int32
        data:
          $ref: '#/components/schemas/SubscriptionSensorsGyroValue'
        msg:
          type: string
          description: Return code's details.
          example: Success
      xml:
        name: SubscriptionSensorsGyroValueResponse
    SubscriptionSensorsGyroInfo:
      type: object
      required:
      - id
      - euler-x
      - euler-y
      - euler-z
      properties:
        id:
          type: integer
          format: int32
          minimum: 1
          maximum: 127
          example: 52
        gyro-x:
          type: number
          format: float
          example: 0.1021
        gyro-y:
          type: number
          format: float
          example: 0.602
        gyro-z:
          type: number
          format: float
          example: 0.0213
        accel-x:
          type: number
          format: float
          example: 0.147949
        accel-y:
          type: number
          format: float
          example: 0.116699
        accel-z:
          type: number
          example: 0.813477
        compass-x:
          type: number
          format: float
          example: 0.1021
        compass-y:
          type: number
          format: float
          example: 0.602
        compass-z:
          type: number
          format: float
          example: 0.01232
        euler-x:
          type: number
          format: float
          example: 8.073578
        euler-y:
          type: number
          format: float
          example: -10.11795
        euler-z:
          type: number
          format: float
          example: 0.72052
      xml:
        name: SubscriptionSensorsGyroInfo
    SubscriptionSensorsUltrasonicValueResponse:
      type: object
      required:
      - code
      - data
      - msg
      properties:
        code:
          type: integer
          description: Return code. 0 means success.
          format: int32
        data:
          $ref: '#/components/schemas/SubscriptionSensorsUltrasonicValue'
        msg:
          type: string
          description: Return code's details.
          example: Success
      xml:
        name: SubscriptionSensorsUltrasonicValueResponse
    SubscriptionVisionsGetResponse:
      type: object
      required:
      - code
      - type
      - msg
      properties:
        code:
          type: integer
          description: Return code. 0 means success.
          example: 0
        type:
          type: string
          enum:
          - recognition
          - tracking
          - gender
          - age_group
          - quantity
          - color_detect
          description: ' The compute vision''s result. The possible "type" values:

            - recognition

            - tracking

            - gender

            - age_group

            - quantity

            - color_detect '
        data:
          $ref: '#/components/schemas/SubscriptionVisionsResults'
        timestamp:
          type: integer
          format: int64
          description: Timestamp, Unix standard time.
          example: 1551838515
        status:
          type: string
          description: Compute vision's status
          example: idle
        msg:
          type: string
          description: Return code details.
          example: Success
      xml:
        name: SubscriptionVisionsGetResponse
    SubscriptionVisionsAnalysis:
      type: object
      properties:
        age:
          $ref: '#/components/schemas/SubscriptionVisionsAge'
        gender:
          $ref: '#/components/schemas/SubscriptionVisionsGender'
      xml:
        name: SubscriptionVisionsAnalysis
    SubscriptionVoiceResponse:
      type: object
      description: ' Automatic speech recognition or auto transform''s result. '
      required:
      - code
      - type
      - msg
      properties:
        code:
          type: integer
          description: Return code. 0 means success.
          example: 0
        type:
          type: string
          enum:
          - asr
          - iat
          - tts
          description: ' The possible values:

            - asr

            - iat

            - tts '
          example: asr
        data:
          description: ' Automatic speech recognition or auto transform''s result. '
          type: object
          example: {}
        status:
          type: string
          description: ' Status value

            - build

            - run

            - idle

            '
          example: idle
        timestamp:
          description: Timestamp, Unix standard time.
          type: integer
          format: int64
          example: 1000789666
        msg:
          description: Return code's details.
          type: string
      xml:
        name: SubscriptionVoiceResponse
    SubscriptionSensorsInfraredValueResponse:
      type: object
      required:
      - code
      - data
      - msg
      properties:
        code:
          type: integer
          description: Return code. 0 means success.
          format: int32
        data:
          $ref: '#/components/schemas/SubscriptionSensorsInfraredValue'
        msg:
          type: string
          description: Return code's details.
          example: Success
      xml:
        name: SubscriptionSensorsInfraredValueResponse
    SubscriptionSensorsTouchInfo:
      type: object
      required:
      - id
      - value
      properties:
        id:
          description: Sensor's I2C address.
          type: integer
          format: int32
          minimum: 1
          maximum: 127
          example: 29
        slot:
          type: integer
          description: Sensor's slot number.
          format: int32
          minimum: 1
          maximum: 6
          example: 1
        value:
          description: ' The touch sensor''s value. The possible values:

            - 0   Not touched

            - 1   Button 1 is touched

            - 2   Button 2 is touched

            - 3   Button 1 and 2 are touched

            '
          type: integer
          format: int32
          example: 25
      xml:
        name: SubscriptionSensorsTouchInfo
    SubscriptionVisionsGender:
      type: object
      required:
      - gender
      properties:
        gender:
          type: string
          enum:
          - male
          - female
          - none
          description: ' The compute vision''s result. The possible values:

            - male

            - female

            - none    default value '
      xml:
        name: SubscriptionVisionsGender
    SubscriptionMotionsStatusResponse:
      type: object
      required:
      - code
      - data
      - msg
      properties:
        code:
          type: integer
          description: Return code. 0 means success.
          format: int32
        data:
          $ref: '#/components/schemas/SubscriptionMotionsStatus'
        msg:
          description: Return code's details.
          type: string
          example: Success
      xml:
        name: SubscriptionMotionsStatusResponse
externalDocs:
  description: Find out more about Swagger
  url: http://swagger.io