APIs

Channels

Channel endpoints expose live stream state, channel analytics, audience lists, activity feeds, and editable channel metadata for the authorized user. Every https://api.blaze.stream/v1 request on this page must include client-id: YOUR_CLIENT_ID.

List channels

GEThttps://api.blaze.stream/v1/channels

Returns channels with cursor pagination. This endpoint accepts either a User Access Token or an App Access Token. Filter by slug[] and categoryId[] array query parameters, and use type=live or type=all to control whether offline channels are included.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Query parameters

cursorstringoptional

Pagination cursor returned from the previous response.

limitinteger · maxLimit: 20optional

Maximum number of channels to return. Default and maxLimit: 20.

slugstring[]optional

Channel slug array used to narrow results. Use array query syntax, for example slug[]=lasvegasape&slug[]=creator.

categoryIdinteger[]optional

Category id array used to narrow results. Use array query syntax, for example categoryId[]=36018&categoryId[]=12.

typestring · live | alloptional

Use live to return only live channels, or all to include live and offline channels.

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels
GET /v1/channels?limit=20&type=live&slug[]=lasvegasape&categoryId[]=36018 HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": {
    "count": 1,
    "rows": [
      {
        "id": "219b844b-8ab1-439c-9195-2798858ff1a7",
        "title": "Giveaway Raffle-Grumpy Old Gamers-Time to Roll It Up-Backstage pass giveaways-Wax Streamer",
        "displayName": "lasvegasape",
        "bio": "",
        "slug": "lasvegasape",
        "avatarUrl": "https://cdn.blaze.stream/uploads/avatar/9c1332f5-aa57-4111-b95f-e0682fb58ba1.png",
        "lang": "en",
        "isLive": false,
        "followerCount": 499,
        "category": {
          "id": 36018,
          "name": "Fortnite",
          "slug": "Fortnite",
          "imageUrl": "https://cdn.blaze.stream/uploads/category/f1c4fe45-45a3-4671-9a12-fcdd75f14f37.jpg"
        }
      }
    ],
    "pagination": {
      "cursor": "NEXT_CURSOR"
    }
  }
}

Get stream info

Deprecated
Deprecated: This endpoint is deprecated and will be removed in a future release.
GEThttps://api.blaze.stream/v1/channels/stream-info

Checks whether the authorized channel is live, or the channelId query target when using an App Access Token. Live responses include title, preview image, start time, and category metadata.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels/stream-info
GET /v1/channels/stream-info HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": {
    "isLive": true,
    "title": "Building with Blaze",
    "previewImgUrl": "https://cdn.blaze.stream/previews/channel.jpg",
    "startedAt": "2026-05-04T12:00:00.000Z",
    "category": {
      "id": 12,
      "title": "Just Chatting"
    }
  }
}

Get channel stats

GEThttps://api.blaze.stream/v1/channels/stats

Returns high-level counters for the authorized channel, or for the channelId query target when using an App Access Token.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels/stats
GET /v1/channels/stats HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": {
    "followerCount": 1204,
    "subscriberCount": 84,
    "viewerCount": 312
  }
}

List followers

GEThttps://api.blaze.stream/v1/channels/followers

Returns a cursor-paginated list of users following the authorized channel, including subscription context for each row. If userId is provided, the response is limited to that user only when they are among the channel's followers.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Query parameters

cursorstringoptional

Pagination cursor returned from the previous response.

limitintegeroptional

Maximum number of rows to return.

userIdstring · UUIDoptional

Filter rows to a specific follower user UUID. When provided, only that follower row is returned if the user follows the authorized channel.

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels/followers
GET /v1/channels/followers?limit=20&userId=2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": {
    "rows": [
      {
        "id": "2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f",
        "displayName": "Viewer",
        "slug": "viewer",
        "avatarUrl": "https://cdn.blaze.stream/avatar.png",
        "isFollower": true,
        "followedAt": "2026-05-04T12:00:00.000Z",
        "subscriptionInfo": {
          "isSubscriber": false,
          "hadSubscriptionBefore": false,
          "renewCount": null,
          "streakCount": null,
          "expiresAt": null,
          "subscribedAt": null
        }
      }
    ],
    "pagination": {
      "cursor": "NEXT_CURSOR"
    }
  }
}

List followed channels

GEThttps://api.blaze.stream/v1/channels/followed

Returns channels followed by the authorized user, including notification state and subscription context.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Query parameters

cursorstringoptional

Pagination cursor returned from the previous response.

limitintegeroptional

Maximum number of rows to return.

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels/followed
GET /v1/channels/followed?limit=20 HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": {
    "rows": [
      {
        "id": "9b7f3c2a-2f41-4f5e-9f54-6c1d8a2b7e90",
        "displayName": "Creator",
        "slug": "creator",
        "avatarUrl": "https://cdn.blaze.stream/channel.png",
        "isFollower": true,
        "followedAt": "2026-05-04T12:00:00.000Z",
        "isNotificationEnabled": true,
        "subscriptionInfo": {
          "isSubscriber": true,
          "hadSubscriptionBefore": true,
          "renewCount": 3,
          "streakCount": 2,
          "expiresAt": true,
          "subscribedAt": "2026-03-04T12:00:00.000Z"
        }
      }
    ],
    "pagination": {
      "cursor": "NEXT_CURSOR"
    }
  }
}

List banned users

GEThttps://api.blaze.stream/v1/channels/banned-users

Returns users banned from the authorized channel and the moderator account that applied each ban.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Query parameters

cursorstringoptional

Pagination cursor returned from the previous response.

limitintegeroptional

Maximum number of rows to return.

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels/banned-users
GET /v1/channels/banned-users?limit=20 HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": {
    "rows": [
      {
        "id": "2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f",
        "displayName": "Viewer",
        "slug": "viewer",
        "bannedAt": "2026-05-04T12:00:00.000Z",
        "bannedBy": {
          "id": "0f3d8a67-4d25-48f1-a3c5-1f7a9b2c6d30",
          "displayName": "Moderator",
          "slug": "moderator"
        }
      }
    ],
    "pagination": {
      "cursor": "NEXT_CURSOR"
    }
  }
}

List channel VIP users

GEThttps://api.blaze.stream/v1/channels/roles/vips

Returns users assigned to the VIP role for the authorized channel, or for the channelId query target when using an App Access Token.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels/roles/vips
GET /v1/channels/roles/vips HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": [
    {
      "id": "2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f",
      "displayName": "VIP Viewer",
      "slug": "vip-viewer",
      "avatarUrl": "https://cdn.blaze.stream/avatar.png"
    }
  ]
}

Add VIP user

POSThttps://api.blaze.stream/v1/channels/vips

Adds userId to the channel VIP role. Only User Access Token is accepted. channelId and userId must both be UUID values, and the token user's UUID must match the body channelId.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Only User Access Token is accepted. The token user's UUID must match channelId in the request body.

Scopes

channel.moderate

The token user must be the channel owner: token user UUID and body channelId must be the same UUID.

Request body

channelIdstring · UUIDrequired

Target channel UUID. This must match the UUID of the user from the User Access Token.

userIdstring · UUIDrequired

User UUID to add to the channel role.

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
POST/v1/channels/vips
POST /v1/channels/vips HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
content-type: application/json

{
  "channelId": "9b7f3c2a-2f41-4f5e-9f54-6c1d8a2b7e90",
  "userId": "2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f"
}
200OK
{
  "success": true,
  "message": "success",
  "data": {
    "channelId": "9b7f3c2a-2f41-4f5e-9f54-6c1d8a2b7e90",
    "userId": "2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f",
    "role": "vip"
  }
}

Remove VIP user

DELETEhttps://api.blaze.stream/v1/channels/vips

Removes userId from the channel VIP role. Only User Access Token is accepted. channelId and userId must both be UUID values, and the token user's UUID must match the body channelId.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Only User Access Token is accepted. The token user's UUID must match channelId in the request body.

Scopes

channel.moderate

The token user must be the channel owner: token user UUID and body channelId must be the same UUID.

Request body

channelIdstring · UUIDrequired

Target channel UUID. This must match the UUID of the user from the User Access Token.

userIdstring · UUIDrequired

User UUID to add to the channel role.

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
DELETE/v1/channels/vips
DELETE /v1/channels/vips HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
content-type: application/json

{
  "channelId": "9b7f3c2a-2f41-4f5e-9f54-6c1d8a2b7e90",
  "userId": "2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f"
}
200OK
{
  "success": true,
  "message": "success"
}

List channel mod users

GEThttps://api.blaze.stream/v1/channels/roles/mods

Returns users assigned to the moderator role for the authorized channel, or for the channelId query target when using an App Access Token.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels/roles/mods
GET /v1/channels/roles/mods HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": [
    {
      "id": "0f3d8a67-4d25-48f1-a3c5-1f7a9b2c6d30",
      "displayName": "Moderator",
      "slug": "moderator",
      "avatarUrl": "https://cdn.blaze.stream/avatar.png"
    }
  ]
}

List channel OG users

GEThttps://api.blaze.stream/v1/channels/roles/ogs

Returns users assigned to the OG role for the authorized channel, or for the channelId query target when using an App Access Token.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels/roles/ogs
GET /v1/channels/roles/ogs HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": [
    {
      "id": "6c7e0b4d-3a21-4a7f-8c91-25d4f9b8e0a1",
      "displayName": "OG Viewer",
      "slug": "og-viewer",
      "avatarUrl": "https://cdn.blaze.stream/avatar.png"
    }
  ]
}

Add OG user

POSThttps://api.blaze.stream/v1/channels/ogs

Adds userId to the channel OG role. Only User Access Token is accepted. channelId and userId must both be UUID values, and the token user's UUID must match the body channelId.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Only User Access Token is accepted. The token user's UUID must match channelId in the request body.

Scopes

channel.moderate

The token user must be the channel owner: token user UUID and body channelId must be the same UUID.

Request body

channelIdstring · UUIDrequired

Target channel UUID. This must match the UUID of the user from the User Access Token.

userIdstring · UUIDrequired

User UUID to add to the channel role.

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
POST/v1/channels/ogs
POST /v1/channels/ogs HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
content-type: application/json

{
  "channelId": "9b7f3c2a-2f41-4f5e-9f54-6c1d8a2b7e90",
  "userId": "2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f"
}
200OK
{
  "success": true,
  "message": "success",
  "data": {
    "channelId": "9b7f3c2a-2f41-4f5e-9f54-6c1d8a2b7e90",
    "userId": "2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f",
    "role": "og"
  }
}

Remove OG user

DELETEhttps://api.blaze.stream/v1/channels/ogs

Removes userId from the channel OG role. Only User Access Token is accepted. channelId and userId must both be UUID values, and the token user's UUID must match the body channelId.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Only User Access Token is accepted. The token user's UUID must match channelId in the request body.

Scopes

channel.moderate

The token user must be the channel owner: token user UUID and body channelId must be the same UUID.

Request body

channelIdstring · UUIDrequired

Target channel UUID. This must match the UUID of the user from the User Access Token.

userIdstring · UUIDrequired

User UUID to add to the channel role.

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
DELETE/v1/channels/ogs
DELETE /v1/channels/ogs HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
content-type: application/json

{
  "channelId": "9b7f3c2a-2f41-4f5e-9f54-6c1d8a2b7e90",
  "userId": "2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f"
}
200OK
{
  "success": true,
  "message": "success"
}

List subscribers

GEThttps://api.blaze.stream/v1/channels/subscribers

Returns active subscribers for the authorized channel with follower and subscription details. If userId is provided, the response is limited to that user only when they are among the channel's subscribers.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Query parameters

cursorstringoptional

Pagination cursor returned from the previous response.

limitintegeroptional

Maximum number of rows to return.

userIdstring · UUIDoptional

Filter rows to a specific subscriber user UUID. When provided, only that subscriber row is returned if the user subscribes to the authorized channel.

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels/subscribers
GET /v1/channels/subscribers?limit=20&userId=2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": {
    "rows": [
      {
        "id": "2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f",
        "displayName": "Subscriber",
        "slug": "subscriber",
        "avatarUrl": "https://cdn.blaze.stream/avatar.png",
        "isFollower": true,
        "followedAt": "2026-05-04T12:00:00.000Z",
        "subscriptionInfo": {
          "isSubscriber": true,
          "hadSubscriptionBefore": true,
          "renewCount": 3,
          "streakCount": 2,
          "expiresAt": "2026-06-04T12:00:00.000Z",
          "subscribedAt": "2026-03-04T12:00:00.000Z"
        }
      }
    ],
    "pagination": {
      "cursor": "NEXT_CURSOR"
    }
  }
}

List recent activities

GEThttps://api.blaze.stream/v1/channels/activities

Returns recent activity notifications such as followers, subscribers, gifts, thanks, and votes.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Query parameters

cursorstringoptional

Pagination cursor returned from the previous response.

limitintegeroptional

Maximum number of rows to return.

typestringoptional

Filter the activity feed by a supported activity type.

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels/activities
GET /v1/channels/activities?limit=20&type=follow HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": {
    "rows": [
      {
        "id": 12345,
        "type": "new_follower",
        "createdAt": "2026-05-04T12:00:00.000Z",
        "info": {
          "userId": "2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f",
          "displayName": "Viewer",
          "slug": "viewer"
        },
        "action": {}
      }
    ],
    "pagination": {
      "cursor": "NEXT_CURSOR"
    }
  }
}

List channel votes

GEThttps://api.blaze.stream/v1/channels/votes

Returns votes for the target channel and epoch. epoch accepts an integer week number or the string "all" to list every epoch; channelId is the channel UUID. Both query parameters are required.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Query parameters

epochinteger | "all"required

Week number to fetch votes for, or "all" to list votes across every epoch.

channelIdstring · UUIDrequired

Target channel UUID.

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels/votes
GET /v1/channels/votes?epoch=all&channelId=9b7f3c2a-2f41-4f5e-9f54-6c1d8a2b7e90 HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": [
    {
      "id": "2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f",
      "address": "0x8f3a2c4d5e6f7890a1b2c3d4e5f60718293a4b5c",
      "amount": 123,
      "votedAt": "2026-05-04T12:00:00.000Z"
    }
  ]
}

List channel clips

GEThttps://api.blaze.stream/v1/channels/clips

Returns cursor-paginated clips for the target channel. User Access Token requests require users.read; App Access Token requests are also accepted. Results default to orderBy=most_viewed.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Query parameters

channelIdstring · UUIDrequired

Target channel UUID.

cursorstringoptional

Pagination cursor returned from the previous response.

limitinteger · maxLimit: 20optional

Maximum number of rows to return. maxLimit: 20.

orderBystring · most_recent | most_viewedoptional

Sort rows by recency or views. Default: most_viewed.

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels/clips
GET /v1/channels/clips?channelId=9b7f3c2a-2f41-4f5e-9f54-6c1d8a2b7e90&limit=20&orderBy=most_viewed HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": {
    "count": 1,
    "rows": [
      {
        "clipId": "81e7fb93-7815-46ff-9c67-7dbe70eddbd4",
        "title": "Best moment from the stream",
        "viewCount": 1240,
        "duration": 42,
        "previewImgUrl": "https://cdn.blaze.stream/previews/clip.jpg",
        "clipUrl": "https://cdn.blaze.stream/clips/clip.mp4",
        "creator": {
          "id": "2f4c6d9a-8e2b-4d77-9f0d-3a1b2c4d5e6f",
          "username": "viewer",
          "avatarUrl": "https://cdn.blaze.stream/avatar.png"
        },
        "channel": {
          "id": "9b7f3c2a-2f41-4f5e-9f54-6c1d8a2b7e90",
          "username": "creator",
          "avatarUrl": "https://cdn.blaze.stream/avatar.png"
        },
        "category": {
          "id": 12,
          "parentId": null,
          "name": "Just Chatting",
          "slug": "just-chatting",
          "imageUrl": "https://cdn.blaze.stream/uploads/category.jpg"
        }
      }
    ],
    "pagination": {
      "cursor": "NEXT_CURSOR"
    }
  }
}

List channel VODs

GEThttps://api.blaze.stream/v1/channels/vods

Returns cursor-paginated VODs for the target channel. User Access Token requests require users.read; App Access Token requests are also accepted. Results default to orderBy=most_recent.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Query parameters

channelIdstring · UUIDrequired

Target channel UUID.

cursorstringoptional

Pagination cursor returned from the previous response.

limitinteger · maxLimit: 20optional

Maximum number of rows to return. maxLimit: 20.

orderBystring · most_recent | most_viewedoptional

Sort rows by recency or views. Default: most_recent.

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels/vods
GET /v1/channels/vods?channelId=9b7f3c2a-2f41-4f5e-9f54-6c1d8a2b7e90&limit=20&orderBy=most_recent HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": {
    "count": 1,
    "rows": [
      {
        "id": "b6e2d6f5-65a3-4e23-a8b5-6a6fb4e65df4",
        "previewImgUrl": "https://cdn.blaze.stream/previews/vod.jpg",
        "title": "Building with Blaze",
        "viewCount": 4312,
        "duration": 7260,
        "startedAt": "2026-05-04T12:00:00.000Z",
        "endedAt": "2026-05-04T14:01:00.000Z",
        "category": {
          "id": 12,
          "parentId": null,
          "name": "Just Chatting",
          "slug": "just-chatting",
          "imageUrl": "https://cdn.blaze.stream/uploads/category.jpg"
        },
        "channel": {
          "id": "9b7f3c2a-2f41-4f5e-9f54-6c1d8a2b7e90",
          "username": "creator",
          "avatarUrl": "https://cdn.blaze.stream/avatar.png"
        }
      }
    ],
    "pagination": {
      "cursor": "NEXT_CURSOR"
    }
  }
}

Get live stats

GEThttps://api.blaze.stream/v1/channels/live-stats

Returns live-session counters for the authorized channel, or for the channelId query target when using an App Access Token.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

users.read

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
GET/v1/channels/live-stats
GET /v1/channels/live-stats HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
200OK
{
  "success": true,
  "message": "success",
  "data": {
    "startedAt": "2026-05-04T12:00:00.000Z",
    "isLive": true,
    "newFollowerCount": 42,
    "newSubscriberCount": 8,
    "viewerCount": 312
  }
}

Update channel info

POSThttps://api.blaze.stream/v1/channels/info

Updates channel title, language, and optional category. When a live stream is active, matching stream fields are updated too.

Required header for every https://api.blaze.stream/v1 request: client-id: YOUR_CLIENT_ID.

Authorizations

Scopes

channel.moderate

Request body

titlestringrequired

Channel or live stream title.

langstringrequired

Channel language code.

categoryIdintegeroptional

Category id to assign to the channel.

Responses

  • 200OKapplication/json
  • 400Bad Requestapplication/json
  • 401Unauthorizedapplication/json
  • 403Forbiddenapplication/json
  • 500Internal Server Errorapplication/json
POST/v1/channels/info
POST /v1/channels/info HTTP/1.1
Host: api.blaze.stream
Authorization: Bearer YOUR_ACCESS_TOKEN
client-id: YOUR_CLIENT_ID
Accept: application/json
content-type: application/json

{
  "title": "Building with Blaze",
  "lang": "en",
  "categoryId": 12
}
200OK
{
  "success": true,
  "message": "success",
  "data": {
    "title": "Building with Blaze",
    "lang": "en",
    "categoryId": 12,
    "categoryTitle": "Just Chatting"
  }
}