go-twitch/api/chat/get_user_emotes.go

107 lines
3.9 KiB
Go
Raw Normal View History

package chat
import "go.fifitido.net/twitch/api/types"
type GetUserEmotesParams struct {
// The ID of the user. This ID must match the user ID in the user access token.
UserID string `url:"user_id"`
// The cursor used to get the next page of results. The Pagination object in the response contains the cursors value.
After *types.Cursor `url:"after"`
// The User ID of a broadcaster you wish to get follower emotes of.
// Using this query parameter will guarantee inclusion of the broadcasters follower emotes in the response body.
//
// Note: If the user specified in user_id is subscribed to the broadcaster specified,
// their follower emotes will appear in the response body regardless if this query parameter is used.
BroadcasterID *string `url:"broadcaster_id"`
}
type GetUserEmotesResponse struct {
// A list that contains information about the users emotes.
Data []GetUserEmotesResponseData `json:"data"`
// A templated URL. Uses the values from the id, format, scale, and theme_mode fields
// to replace the like-named placeholder strings in the templated URL to create a
// CDN (content delivery network) URL that you use to fetch the emote.
//
// For information about what the template looks like and how to use it to fetch emotes,
// see Emote CDN URL format: https://dev.twitch.tv/docs/irc/emotes#cdn-template
Template string `json:"template"`
// Contains the information used to page through the list of results.
// The object is empty if there are no more pages left to page through.
//
// For more information about pagination support,
// see Twitch API Guide - Pagination: https://dev.twitch.tv/docs/api/guide/#pagination
Pagination types.Pagination `json:"pagination"`
}
type GetUserEmotesResponseData struct {
// An ID that uniquely identifies this emote.
ID string `json:"id"`
// The name of the emote
Name string `json:"name"`
// The type of emote. The possible values are:
//
// none — No emote type was assigned to this emote.
//
// bitstier — A Bits tier emote.
//
// follower — A follower emote.
//
// subscriptions — A subscriber emote.
//
// channelpoints — An emote granted by using channel points.
//
// rewards — An emote granted to the user through a special event.
//
// hypetrain — An emote granted for participation in a Hype Train.
//
// prime — An emote granted for linking an Amazon Prime account.
//
// turbo — An emote granted for having Twitch Turbo.
//
// smilies — Emoticons supported by Twitch.
//
// globals — An emote accessible by everyone.
//
// owl2019 — Emotes related to Overwatch League 2019.
//
// twofactor — Emotes granted by enabling two-factor authentication on an account.
//
// limitedtime — Emotes that were granted for only a limited time.
EmoteType string `json:"emote_type"`
// An ID that identifies the emote set that the emote belongs to.
EmoteSetID string `json:"emote_set_id"`
// The ID of the broadcaster who owns the emote.
OwnerID string `json:"owner_id"`
// The formats that the emote is available in.
// For example, if the emote is available only as a static PNG, the array contains only static.
// But if the emote is available as a static PNG and an animated GIF, the array contains static and animated.
//
// animated — An animated GIF is available for this emote.
//
// static — A static PNG file is available for this emote.
Format []string `json:"format"`
// The sizes that the emote is available in.
// For example, if the emote is available in small and medium sizes, the array contains 1.0 and 2.0.
//
// 1.0 — A small version (28px x 28px) is available.
//
// 2.0 — A medium version (56px x 56px) is available.
//
// 3.0 — A large version (112px x 112px) is available.
Scale []string `json:"scale"`
// The background themes that the emote is available in.
// Possible values: dark, light
ThemeMode []string `json:"theme_mode"`
}