Map an audience
curl --request POST \
--url https://fandom-api-preview.vercel.app/api/v1/exploration/map \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"sources": [
{
"type": "channel",
"channelId": "UCX6OQ3DkcsbYNE6H8uQQuVA"
}
],
"size": 110
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({sources: [{type: 'channel', channelId: 'UCX6OQ3DkcsbYNE6H8uQQuVA'}], size: 110})
};
fetch('https://fandom-api-preview.vercel.app/api/v1/exploration/map', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://fandom-api-preview.vercel.app/api/v1/exploration/map"
payload = {
"sources": [
{
"type": "channel",
"channelId": "UCX6OQ3DkcsbYNE6H8uQQuVA"
}
],
"size": 110
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"title": "<string>",
"builtAt": "<string>",
"notes": [
"<string>"
],
"audience": {
"corePeople": 123,
"totalPeople": 123,
"totalComments": 123
},
"groups": [
{
"id": 123,
"name": "<string>",
"kind": "core",
"themes": [
"<string>"
],
"relevance": 123,
"channelIds": [
"<string>"
],
"people": 123,
"reach": 123,
"concentration": 123,
"fanDensity": 123
}
],
"channels": [
{
"channelId": "<string>",
"title": "<string>",
"handle": "<string>",
"imageUrl": "<string>",
"subscribers": 123,
"country": "<string>",
"groupId": 123,
"seed": true,
"relevance": 123,
"sharedCommenters": 123,
"audienceThemes": [
"<string>"
],
"contentThemes": [
"<string>"
],
"people": 123,
"reach": 123,
"concentration": 123,
"fanDensity": 123
}
]
}{
"error": {
"code": "not_found",
"message": "<string>",
"requestId": "<string>"
}
}{
"error": {
"code": "not_found",
"message": "<string>",
"requestId": "<string>"
}
}{
"error": {
"code": "not_found",
"message": "<string>",
"requestId": "<string>"
}
}{
"error": {
"code": "not_found",
"message": "<string>",
"requestId": "<string>"
}
}Audience Exploration
Map an audience
The channels an audience also watches, grouped by shared commenters, with people counts. Built from real YouTube comment data; takes a few seconds the first time.
Scope: exploration:read.
POST
/
exploration
/
map
Map an audience
curl --request POST \
--url https://fandom-api-preview.vercel.app/api/v1/exploration/map \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"sources": [
{
"type": "channel",
"channelId": "UCX6OQ3DkcsbYNE6H8uQQuVA"
}
],
"size": 110
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({sources: [{type: 'channel', channelId: 'UCX6OQ3DkcsbYNE6H8uQQuVA'}], size: 110})
};
fetch('https://fandom-api-preview.vercel.app/api/v1/exploration/map', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://fandom-api-preview.vercel.app/api/v1/exploration/map"
payload = {
"sources": [
{
"type": "channel",
"channelId": "UCX6OQ3DkcsbYNE6H8uQQuVA"
}
],
"size": 110
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"title": "<string>",
"builtAt": "<string>",
"notes": [
"<string>"
],
"audience": {
"corePeople": 123,
"totalPeople": 123,
"totalComments": 123
},
"groups": [
{
"id": 123,
"name": "<string>",
"kind": "core",
"themes": [
"<string>"
],
"relevance": 123,
"channelIds": [
"<string>"
],
"people": 123,
"reach": 123,
"concentration": 123,
"fanDensity": 123
}
],
"channels": [
{
"channelId": "<string>",
"title": "<string>",
"handle": "<string>",
"imageUrl": "<string>",
"subscribers": 123,
"country": "<string>",
"groupId": 123,
"seed": true,
"relevance": 123,
"sharedCommenters": 123,
"audienceThemes": [
"<string>"
],
"contentThemes": [
"<string>"
],
"people": 123,
"reach": 123,
"concentration": 123,
"fanDensity": 123
}
]
}{
"error": {
"code": "not_found",
"message": "<string>",
"requestId": "<string>"
}
}{
"error": {
"code": "not_found",
"message": "<string>",
"requestId": "<string>"
}
}{
"error": {
"code": "not_found",
"message": "<string>",
"requestId": "<string>"
}
}{
"error": {
"code": "not_found",
"message": "<string>",
"requestId": "<string>"
}
}Authorizations
An API key from Settings → API access, starting with fnd_.
Body
application/json
Response
Success
Coverage caveats worth showing to people.
People counts. Null when they could not be measured in time.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes

