The FrankerFaceZ client can be found at https://github.com/FrankerFaceZ/FrankerFaceZ and is licensed under the Apache License, Version 2.0.
//api.frankerfacez.com/v1/This API version does not require or support authentication. It returns JSON-formatted data.
GET /badge/:id or GET /badge/:nameFetch all the relevant data for a chat badge, including the list of users that have that badge.
curl https://api.frankerfacez.com/v1/badge/developer
{
"badge": {
"alpha_image": "//cdn.frankerfacez.com/script/devtransicon.png",
"color": "#FAAF19",
"css": null,
"id": 1,
"image": "//cdn.frankerfacez.com/script/devicon.png",
"name": "developer",
"replaces": null,
"slot": 5,
"title": "FFZ Developer"
},
"users": {
"1": [
"sirstendec",
"dansalvato"
]
}
}
GET /_badge/:id or GET /_badge/:nameFetch all the relevant data for a chat badge.
curl https://api.frankerfacez.com/v1/_badge/developer
{
"badge": {
"alpha_image": "//cdn.frankerfacez.com/script/devtransicon.png",
"color": "#FAAF19",
"css": null,
"id": 1,
"image": "//cdn.frankerfacez.com/script/devicon.png",
"name": "developer",
"replaces": null,
"slot": 5,
"title": "FFZ Developer"
}
}
GET /badgesFetch all information about all badges. Useful when initializing the client.
curl https://api.frankerfacez.com/v1/badges
{
"badges": [
{
"alpha_image": "//cdn.frankerfacez.com/script/devtransicon.png",
"color": "#FAAF19",
"css": null,
"id": 1,
"image": "//cdn.frankerfacez.com/script/devicon.png",
"name": "developer",
"replaces": null,
"slot": 5,
"title": "FFZ Developer"
},
{
"alpha_image":null,
"color": "#595959",
"css": null,
"id": 2,
"image": "//cdn.frankerfacez.com/script/boticon.png",
"name": "bot",
"replaces": "moderator",
"slot": 1,
"title": "Bot"
},
{
"alpha_image":null,
"color": "#755000",
"css": null,
"id": 3,
"image": "//cdn.frankerfacez.com/script/devicon.png",
"name": "supporter",
"replaces": null,
"slot": 5,
"title": "FFZ Supporter"
}
],
"users": {
...
}
}
GET /_badgesFetch information about all badges. Useful when initializing the client. Does not include users.
curl https://api.frankerfacez.com/v1/_badges
{
"badges": [
{
"alpha_image": "//cdn.frankerfacez.com/script/devtransicon.png",
"color": "#FAAF19",
"css": null,
"id": 1,
"image": "//cdn.frankerfacez.com/script/devicon.png",
"name": "developer",
"replaces": null,
"slot": 5,
"title": "FFZ Developer"
},
{
"alpha_image":null,
"color": "#595959",
"css": null,
"id": 2,
"image": "//cdn.frankerfacez.com/script/boticon.png",
"name": "bot",
"replaces": "moderator",
"slot": 1,
"title": "Bot"
},
{
"alpha_image":null,
"color": "#755000",
"css": null,
"id": 3,
"image": "//cdn.frankerfacez.com/script/devicon.png",
"name": "supporter",
"replaces": null,
"slot": 5,
"title": "FFZ Supporter"
}
]
}
GET /emote/:idFetch information for a specific emote.
curl https://api.frankerfacez.com/v1/emote/25927
{
"emote": {
"css": null,
"height": 29,
"hidden": false,
"id": 25927,
"margins": null,
"name": "CatBag",
"owner": {
"display_name": "Wolsk",
"id": 3,
"name": "wolsk"
},
"public": false,
"urls": {
"1": "//cdn.frankerfacez.com/emoticon/25927/1",
"2": "//cdn.frankerfacez.com/emoticon/25927/2",
"4": "//cdn.frankerfacez.com/emoticon/25927/4"
},
"width": 32
}
}
GET /emoticonsFetch bulk emote information.
| Parameter | Default | Values | Description |
|---|---|---|---|
| high_dpi | off | on, off | Whether or not to only include emotes with high-DPI images. |
| page | 1 | 1 <= value | The page of emotes to return. |
| per_page | 50 | 1 <= value <= 200 | The number of emotes to return on a single page. |
| private | off | on, off | Whether or not to include non-public emotes. |
| q | A search string to filter the results. | ||
| sort | created-desc | name, owner, count, updated, created |
Sort the output. Optionally, include a sorting direction after a hyphen. Example: sort=count-desc
|
curl https://api.frankerfacez.com/v1/emoticons?_sceheme=https
{
"_links":{
"next":"http://api.frankerfacez.com/v1/emoticons?page=2",
"self":"http://api.frankerfacez.com/v1/emoticons?page=1"
},
"_pages":1068,
"_total":53371,
"emoticons":[
...
]
}
GET /room/id/:twitch_id or GET /room/:nameFetch all the relevant data for a chat room, including the emote set associated with the room.
curl https://api.frankerfacez.com/v1/room/sirstendec
{
"room": {
"_id": 1,
"css": null,
"display_name": "SirStendec",
"id": "sirstendec",
"is_group": false,
"moderator_badge": null,
"set": 1,
"twitch_id": 49399878
},
"sets": {
"1": {
...
}
}
}
GET /_room/id/:twitch_id or GET /_room/:nameFetch all the relevant data for a chat room but do not include the emote set associated with the room.
curl https://api.frankerfacez.com/v1/_room/dansalvato
{
"room": {
"_id": 2,
"_tid": 47852576,
"css": null,
"display_name": "dansalvato",
"id": "dansalvato",
"is_group": false,
"moderator_badge": "//cdn.frankerfacez.com/cdf8b6845ac18d77137001a5be7cd155.png",
"set": 2
}
}
GET /set/:idFetch all the data for an emote set, including details on every approved emote within the set and a list of users that can use emotes from the set globally.
curl https://api.frankerfacez.com/v1/set/4
{
"set": {
"_type": 1,
"css": null,
"description": null,
"emoticons": [
{
...
},
...
],
"icon": null,
"id": 4,
"title": "Channel: Wolsk"
},
"users": {
"1": [
"sirstendec"
]
}
}
GET /set/globalFetch all sets that could be used globally. That is, sets that aren't associated with specific chat rooms.
Not all users should be able to use all of the sets provided. The
default_sets key of the returned object contains a list
of set IDs that should be available for all users to use.
A mapping of emote sets to users that should be allowed to use them globally is provided.
curl https://api.frankerfacez.com/v1/set/global
{
"default_sets": [ 3 ],
"sets": {
...
},
"users": {
"4330": [
"sirstendec"
],
...
}
}
GET /user/id/:twitch_id or GET /user/:nameGet relevant information about a user, including their chat badges and which emote sets they can use globally.
curl https://api.frankerfacez.com/v1/user/sirstendec
{
"badges": {
"1": {
...
}
},
"sets": {
"4330": {
...
}
},
"user": {
"avatar": "https://static-cdn.jtvnw.net/jtv_user_pictures/sirstendec-profile_image-b3577527af5a026f-300x300.png",
"badges": [ 1 ],
"display_name": "SirStendec",
"emote_sets": [ 4330 ],
"id": 1,
"is_donor": true,
"name": "sirstendec",
"twitch_id": 49399878
}
}
GET /_user/id/:twitch_id or GET /_user/:nameGet relevant information about a user, not including badge data.
curl https://api.frankerfacez.com/v1/_user/sirstendec
{
"user": {
"avatar": "https://static-cdn.jtvnw.net/jtv_user_pictures/sirstendec-profile_image-b3577527af5a026f-300x300.png",
"badges": [ 1 ],
"display_name": "SirStendec",
"emote_sets": [ 4330 ],
"id": 1,
"is_donor": true,
"name": "sirstendec",
"twitch_id": 49399878
}
}