GraphQL API
Queries
Query | Description |
|---|---|
getIvsChannelByUuid(uuid: String!): IvsChannelsConnection | Retrieve show information by show unique ID |
getChatroomTokenWithBlock(chatroomArn: String!, userId: String!, username: String!): chatroomToken2 | Retrieves a token to enable the use of the chat given a chatroom ARN, user id and a username |
validateUserName(showId: Int!, userName: String!): userNameValidationResult | Checks if a given username is already registered in the chat of a given show |
getLiveIvsChatLogs(channelArn: String!, chatroomArn: String!, showId: String!): [ChatLogData] | Retrieves a JSON with latest chat messages for a show given channel ARN, chatroom ARN and show ID |
getPlaylistByMediaLibraryId(mediaLibraryId: String!): PlaylistUrl | Returns JSON URL for a MediaLibrary unique ID |
getClipById(id: String!): ClipData | Retrieve clip information by clip unique ID |
Mutations
createUserData(input: CreateUserDataInput!): UserData | Log user statistics on a Live show |
createVodUserData(input: CreateVodUserDataInput!): VodUserData | Used to log user statistics on a VOD show |
updateVodUserData(input: UpdateVodUserDataInput!): VodUserData | Used to update user statistics on a VOD show |
Types
IvsChannelsConnection
Field | Description |
|---|---|
items: [IvsChannels] | Found channels |
nextToken: String | Pagination token (optional) |
IvsChannels
Field | Description |
|---|---|
id: Int! | Show ID |
uuid: String! | Show unique ID |
channelArn: String! | Show IVS Channel ARN |
chatroomArn: String! | Show IVS Chatroom ARN |
companyId: Int! | Client unique ID that the show belongs to |
companyUuid: String | Client unique ID that the show belongs to |
playbackUrl: String! | Url of the show video stream |
title: String! | Public title of the show |
description: String! | Public description of the show |
status: String! | Show status |
products: String | Legacy deprecated field (to be removed in the future) |
vodUrls: String | Legacy deprecated field (to be removed in the future) |
showtime: String | Scheduled show starting time |
termsUrl: String | URL of HTML file containing terms and conditions text |
enduserLocales: String | Client available locales to display content |
showEvents: String | JSON containing the items highlight events |
beforeShowImageUrl: String | Image URL to display before show begins |
pausedShowImageUrl: String | Image URL to display during a show streaming pause |
afterShowImageUrl: String | Image URL to display after show ends |
showPublishedItems: String | JSON containing Show products and non-products information |
chatLogsUrl: String | URL of a JSON containing finished show chat log |
vodManifestUrl: String | URL of a JSON containing recorded video streams data for VOD |
highlightedItems: String | JSON with current highlighted items for a Live show |
displayEndShowCta: Boolean! | Indicates where CTA should be shown after show ends |
endShowCtaUrl: String | CTA target URL |
endShowCtaText: String | CTA display text |
chatroomToken2
Field | Description |
|---|---|
token: String! | Chatroom token value |
sessionExpirationTime: String! | Session expiration time in ISO8601 format in UTC timezone |
tokenExpirationTime: String! | Token expiration time in ISO8601 format in UTC timezone |
isBlocked: String! | Indicates if the user (by unique ID) has been blocked in the chat |
clientIp: String | User IP |
userNameValidationResult
Field | Description |
|---|---|
showId: Int | Show ID |
userName: String | Queried username |
isValid: Boolean | Indicates if username is available or not |
ChatLogData
Field | Description |
|---|---|
Type: String | Type of chat log entry |
Id: String | Unique ID of chat log entry |
RequestId: String | Unique request ID of chat log entry |
Attributes: ChatLogAttributesData | Extra attributes |
Content: String | Text of the chat message (optional) |
SendTime: String | Date of the chat log entry in ISO8601 format in UTC timezone |
Sender: ChatLogSenderData | Data of the message author (optional) |
EventName: String | Name of the event (optional) |
ChatLogAttributesData
Field | Description |
|---|---|
userId: String | User ID author of the message (optional) |
isModerator: String | Indicates if the message is from a moderator user (optional) |
toBeRepliedMessage: String | If message is a reply, text of the replied message (optional) |
toBeRepliedUser: String | If message is a reply, author username of the replied message (optional) |
messageType: String | Type of the message (optional) |
message: String | Text of the message (optional) |
username: String | Username of the message (optional) |
companyName: String | Client name (optional) |
toBeRepliedUserId: String | ID of the author of a replied message (optional) |
MessageID: String | Message Unique ID (optional) |
Reason: String | Reason (optional) |
avatarUrl: String | URL of the user avatar image (optional) |
ChatLogSenderData
Field | Description |
|---|---|
UserId: String | Author user ID |
Attributes: ChatLogSenderAttributesData | Extra user attributes |
ChatLogSenderAttributesData
Field | Description |
|---|---|
username: String | Author user username |
PlaylistUrl
Field | Description |
|---|---|
mediaLibraryId: String! | Media Library unique ID |
playlistUrl: String | URL of JSON with Media Library information |
ClipData
Field | Description |
|---|---|
id: String! | Clip unique ID |
companyId: Int! | Clip client unique ID |
title: String! | Clip title |
thumbnailUrl: String | Clip thumnbail image URL |
publishedItems: String | JSON containing clip products and non-products information |
vodManifestUrl: String | URL of a JSON containing clip video streams data |
UserData
Field | Description |
|---|---|
id: String | Event unique ID |
userId: String | User unique ID |
type: String | Event type |
time: String | Event time in ISO8601 format in UTC timezone (optional) |
showId: Int | Show ID the event belongs to (optional) |
payload: String | JSON payload with extra information (optional) |
clientIp: String | User IP (optional) |
userName: String | User username (optional) |
searchName: String | User username in lowercase (optional) |
deleteTime: Int | Deprecated |
VodUserData
Field | Description |
|---|---|
id: ID! | Event unique ID |
startTime: String | Initial time in ISO8601 format in UTC timezone (optional) |
updateTime: String | Updated time in ISO8601 format in UTC timezone (optional) |
showId: Int | Show ID the event belongs to (optional) |
userId: String | User unique ID (optional) |
userName: String | User username (optional) |
deleteTime: Int | Deprecated |
clientIp: String | User IP (optional) |
CreateUserDataInput
Arguments | Description |
|---|---|
userId: String! | User unique ID |
type: String! | Event type |
time: String | Event time in ISO8601 format in UTC timezone |
showId: Int! | Show ID the event belongs to |
payload: String | JSON payload with extra information |
clientIp: String | User IP |
userName: String! | User username |
searchName: String! | User username in lowercase |
deleteTime: Int | Deprecated |
videoType: String | Type of the video stream (L or V) |
CreateVodUserDataInput
Arguments | Description |
|---|---|
showId: Int! | Show ID the event belongs to |
userId: String! | User unique ID |
userName: String! | User username |
clientIp: String | User IP |
UpdateVodUserDataInput
Arguments | Description |
|---|---|
id: ID! | User unique ID |