Particle Devices API

The Devices API from Particle — 5 operation(s) for devices.

OpenAPI Specification

particle-io-devices-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Particle Cloud Access Tokens Devices API
  description: 'The Particle Cloud API exposes IoT device management, product fleet

    management, OAuth client and token administration, diagnostics, SIM

    management and user account endpoints.

    '
  version: 1.0.0
  contact:
    name: Particle
    url: https://docs.particle.io/reference/cloud-apis/api/
servers:
- url: https://api.particle.io
  description: Particle Cloud production
security:
- BearerAuth: []
tags:
- name: Devices
paths:
  /v1/devices:
    get:
      summary: List the user's devices
      responses:
        '200':
          description: A list of devices.
      tags:
      - Devices
    post:
      summary: Claim a device
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                id:
                  type: string
      responses:
        '200':
          description: Device claimed.
      tags:
      - Devices
  /v1/devices/{deviceId}:
    get:
      summary: Get device information
      parameters:
      - in: path
        name: deviceId
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Device details.
      tags:
      - Devices
    put:
      summary: Update device (rename, notes, signal, OTA settings)
      parameters:
      - in: path
        name: deviceId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                name:
                  type: string
                notes:
                  type: string
                signal:
                  type: integer
      responses:
        '200':
          description: Device updated.
      tags:
      - Devices
    delete:
      summary: Unclaim a device
      parameters:
      - in: path
        name: deviceId
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Device unclaimed.
      tags:
      - Devices
  /v1/devices/{deviceId}/{varName}:
    get:
      summary: Get the value of a device variable
      parameters:
      - in: path
        name: deviceId
        required: true
        schema:
          type: string
      - in: path
        name: varName
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Variable value.
      tags:
      - Devices
  /v1/devices/{deviceId}/{functionName}:
    post:
      summary: Call a function on a device
      parameters:
      - in: path
        name: deviceId
        required: true
        schema:
          type: string
      - in: path
        name: functionName
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                arg:
                  type: string
      responses:
        '200':
          description: Function called.
      tags:
      - Devices
  /v1/devices/{deviceId}/ping:
    put:
      summary: Ping a device
      parameters:
      - in: path
        name: deviceId
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Ping result.
      tags:
      - Devices
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: OAuth2 access token
      description: 'Pass `Authorization: Bearer {access_token}`. Tokens are issued via

        `POST /oauth/token`.

        '