How to Send and Manage Device Broadcasts via OMS API

Audience: Third-party platform integrators / developers
Objective: Manage signage content and send text or media broadcasts to Optoma-managed devices via OMS API.
Scope: Text-only broadcast -> media broadcast -> stop broadcast -> optional cleanup.

Prerequisites

·         OMS Account & API Key (OMS Portal → System Settings → API).

·         Target Device(s) already paired to your OMS tenant.

·         Base URL: Your OMS API gateway base (e.g., https://oms-apiservice.optoma.com/)

·         Auth: API key via header x-api-key: <your_key>.

·         DeviceId: Device UUID used in path: {deviceId}.

·         Mocking (optional): Use x-mock: true to validate request/response without touching real devices.

High-level Flow

  1. Prepare or reuse broadcast content

  2. Send a broadcast payload (for example text-only, image, YouTube, or Canva).

  3. Optional: stop the broadcast and delete unused content after playback.

API Details & Examples

Summary

Recommended way to use these APIs

  1. If you only need a message on screen: call POST /signage/devices/{deviceId}/send-broadcast directly with isText=true. No content upload is required.

  2. If you want to show an image: follow this order - request upload URL, upload file, create content, get the contentId, then send the broadcast.

  3. If you want to show YouTube or Canva content: skip file upload, create the content with sourceUrl, get the contentId, then call send-broadcast.

  4. Before sending to production devices: confirm the payload is valid. Broadcast media supports image, youtube, and canva; colors must be valid hex values, and displayTime must be between 0 and 86400.

  5. For safer operations: use POST /signage/devices/{deviceId}/stop-broadcast to stop playback, delete unused content when finished, retry with backoff if you receive 409, and use x-mock: true during integration testing.