Channel Points
| Function | Returns |
|---|---|
getCustomRewards | Promise<Array<CustomReward>> |
getCustomRewardsByIds | Promise<Array<CustomReward>> |
getCustomRewardById | Promise<CustomReward | null> |
createCustomReward | Promise<CustomReward> |
updateCustomReward | Promise<CustomReward> |
deleteCustomReward | Promise<void> |
getRedemptionsByIds | Promise<Array<CustomRewardRedemption>> |
getRedemptionById | Promise<CustomRewardRedemption | null> |
getRedemptionsForBroadcaster | Promise<PaginatedResult<CustomRewardRedemption>> |
updateRedemptionStatusByIds | Promise<Array<CustomRewardRedemption>> |
Functions
getCustomRewards
twitch.channelPoint.getCustomRewards(onlyManageable?: boolean): Promise<Array<CustomReward>>
getCustomRewardsByIds
twitch.channelPoint.getCustomRewardsByIds(rewardIds: Array<string>): Promise<Array<CustomReward>>
getCustomRewardById
twitch.channelPoint.getCustomRewardById(rewardId: string): Promise<CustomReward | null>
createCustomReward
twitch.channelPoint.createCustomReward(data: CreateCustomReward): Promise<CustomReward>
updateCustomReward
twitch.channelPoint.updateCustomReward(rewardId: string, data: UpdateCustomReward): Promise<CustomReward>
deleteCustomReward
twitch.channelPoint.deleteCustomReward(rewardId: string): Promise<void>
getRedemptionsByIds
twitch.channelPoint.getRedemptionsByIds(rewardId: string, redemptionIds: Array<string>): Promise<Array<CustomRewardRedemption>>
getRedemptionById
twitch.channelPoint.getRedemptionById(rewardId: string, redemptionId: string): Promise<CustomRewardRedemption | null>
getRedemptionsForBroadcaster
twitch.channelPoint.getRedemptionsForBroadcaster(broadcasterId: UserIdResolvable, rewardId: string, status: CustomRewardRedemptionStatus, filter: PaginatedCustomRewardRedemptionFilter): Promise<PaginatedResult<CustomRewardRedemption>>
updateRedemptionStatusByIds
twitch.channelPoint.updateRedemptionStatusByIds(id: string, redemptionIds: Array<string>, status: CustomRewardRedemptionTargetStatus): Promise<Array<CustomRewardRedemption>>
Types
CreateCustomReward
type CreateCustomReward = {
title: string
cost: number
prompt?: string
isEnabled?: boolean
backgroundColor?: string
userInputRequired?: boolean
maxRedemptionsPerStream?: number
maxRedemptionsPerUserPerStream?: number
globalCooldown?: number
autoFulfill?: boolean
}
CustomReward
type CustomReward = {
broadcasterId: string
broadcasterLogin: string
broadcasterName: string
id: string
image: CustomRewardImage | null
backgroundColor: string
isEnabled: boolean
cost: number
title: string
prompt: string
isUserInputRequired: boolean
maxPerStreamSetting: CustomRewardMaxPerStreamSetting
maxPerUserPerStreamSetting: CustomRewardMaxPerUserPerStreamSetting
globalCooldownSetting: CustomRewardGlobalCooldownSetting
isPaused: boolean
isInStock: boolean
defaultImage: CustomRewardImage
shouldRedemptionsSkipRequestQueue: boolean
redemptionsRedeemedCurrentStream: number | null
cooldownExpiresAt: string
}
CustomRewardGlobalCooldownSetting
type CustomRewardGlobalCooldownSetting = {
isEnabled: boolean
globalCooldownSeconds: number
}
CustomRewardImage
type CustomRewardImage = {
url1X: string
url2X: string
url4X: string
}
CustomRewardMaxPerStreamSetting
type CustomRewardMaxPerStreamSetting = {
isEnabled: boolean
maxPerStream: number
}
CustomRewardMaxPerUserPerStreamSetting
type CustomRewardMaxPerUserPerStreamSetting = {
isEnabled: boolean
maxPerUserPerStream: number
}
CustomRewardRedemption
type CustomRewardRedemption = {
broadcasterId: string
broadcasterLogin: string
broadcasterName: string
id: string
userId: string
userLogin: string
userName: string
userInput: string
status: CustomRewardRedemptionStatus
redeemedAt: string
reward: CustomRewardRedemptionReward
}
CustomRewardRedemptionReward
type CustomRewardRedemptionReward = {
id: string
title: string
prompt: string
cost: number
}
CustomRewardRedemptionStatus
type CustomRewardRedemptionStatus = "UNFULFILLED" | "FULFILLED" | "CANCELED"
CustomRewardRedemptionTargetStatus
type CustomRewardRedemptionTargetStatus = "FULFILLED" | "CANCELED"
PaginatedCustomRewardRedemptionFilter
type PaginatedCustomRewardRedemptionFilter = {
newestFirst?: boolean
limit?: number
after?: string
}
PaginatedResult
type PaginatedResult<T> = {
data: Array<T>
cursor?: string
}
UpdateCustomReward
type UpdateCustomReward = {
isPaused?: boolean
title?: string
cost?: number
prompt?: string
isEnabled?: boolean
backgroundColor?: string
userInputRequired?: boolean
maxRedemptionsPerStream?: number
maxRedemptionsPerUserPerStream?: number
globalCooldown?: number
autoFulfill?: boolean
}
UserIdResolvable
type UserIdResolvable = string | UserIdResolvableType
UserIdResolvableType
type UserIdResolvableType = {
id: string
}