openapi: 3.1.0 info: title: Viam Billing Arm API description: 'REST/JSON transcoding of the Viam BillingService gRPC API. Retrieve current-month usage, invoice summaries, invoice PDFs, billing tiers, and the location-level billing organization assignment used by Viam''s "build a robotics business" features. Canonical contract: https://github.com/viamrobotics/api/blob/main/proto/viam/app/v1/billing.proto ' version: '2026.05' contact: name: Viam Support url: https://www.viam.com/contact servers: - url: https://app.viam.com description: Viam production cloud. security: - ApiKeyAuth: [] tags: - name: Arm description: Robotic arms — joint and end-effector control. paths: /viam.component.arm.v1.ArmService/GetEndPosition: post: summary: Viam Arm Get End Position description: Get the pose of the arm's end effector. operationId: armGetEndPosition tags: - Arm requestBody: required: true content: application/json: schema: type: object required: - name properties: name: type: string responses: '200': description: Successful response. /viam.component.arm.v1.ArmService/MoveToPosition: post: summary: Viam Arm Move To Position description: Move the arm's end effector to a target pose. operationId: armMoveToPosition tags: - Arm requestBody: required: true content: application/json: schema: type: object required: - name - to properties: name: type: string to: type: object responses: '200': description: Successful response. /viam.component.arm.v1.ArmService/GetJointPositions: post: summary: Viam Arm Get Joint Positions description: Get the arm's current joint positions. operationId: armGetJointPositions tags: - Arm requestBody: required: true content: application/json: schema: type: object required: - name properties: name: type: string responses: '200': description: Successful response. /viam.component.arm.v1.ArmService/MoveToJointPositions: post: summary: Viam Arm Move To Joint Positions description: Move the arm to a specific joint configuration. operationId: armMoveToJointPositions tags: - Arm requestBody: required: true content: application/json: schema: type: object required: - name - positions properties: name: type: string positions: type: object responses: '200': description: Successful response. /viam.component.arm.v1.ArmService/Stop: post: summary: Viam Arm Stop description: Stop the arm. operationId: armStop tags: - Arm requestBody: required: true content: application/json: schema: type: object required: - name properties: name: type: string responses: '200': description: Successful response. components: securitySchemes: ApiKeyAuth: type: apiKey in: header name: key description: Viam API key.