Get started
  • English
  • 简体中文
Official Site
Get started
  • English
  • 简体中文
Official Site
  • Get started
  • Concepts
  • Guides
    • Account and authorization
    • Device access
      • Integrate a camera
      • Integrate in a SaaS
      • Integrate on the web
      • Multi-camera dashboard
      • Bind a device via API
      • Device lifecycle
      • Troubleshoot bind and offline
    • Audio and video
    • Device capability integration
    • Receive device messages
    • Manage cloud storage
    • Release and operations
  • Device capabilities & events
  • API reference
  • SDK and tools
  • Solutions
  • Platform and support
On this page
Scope and prerequisites
Steps
Client implementations
Related reference

Integrate in a SaaS

Integrate in a SaaS

Scope and prerequisites

Show cameras inside your SaaS by tenant, site, and role. The platform supplies the device list and play credentials. Your service decides who can see which camera. Do not replace the integration with a deep link into the consumer app.

Steps

  1. Register and create an app. Store the AppSecret separately per environment.
  2. Bind cameras to the developer account. Visibility in the consumer app does not mean OpenAPI can list them.
  3. Call accessToken on the BFF and cache it. Do not return that token to the browser.
  4. Call Paged device detail and store deviceId and channel in your site data. pageSize is 1–50.
  5. When a user opens one camera, check tenant, site, and role first. If the check fails, return a generic denial. Do not reveal whether that camera exists for another tenant, and do not call a play API. After the check passes, mint credentials: getKitToken for the web, bindDeviceLive or createDeviceRtmpLive for a live address, or OpenSDK for a native app. Record who watched which camera in your own audit log. Open Platform only answers whether this developer app may operate the bound cameras.

Client implementations

Web playback is in Integrate on the web. Live addresses are in Cloud live from an AppId. Packages are in Downloads.

Do not open every HD stream at login. Start a stream when a cell is visible, and default to SD (streamId 1).

Related reference

  • Integrate a camera
  • Sub-accounts and policies
Integrate a camera
Integrate on the web