Get Communities from a Topic

This endpoint retrieves the list of communities from a specific topic using the topic identifier and pagination filters.

get
Get Communities by Topic ID

https://api.whisk.com/community/v2/by_topic/{topic_id}
You can append the following path and query parameters to the base URL to pull communities from a particular topic:
Request
Response
Request
Path Parameters
topic_id
required
string
The topic identifier.
Headers
Authentication
required
string
User token to authorize the API usage. For more information, see Authentication.
Query Parameters
paging.limit
optional
string
The maximum number of communities to retrieve from the topic.
paging.cursors.after
optional
string
This parameter is used for cursor-based pagination. It takes a community ID as its value and retrieves only those communities that appear after it in the database.
paging.cursors.before
optional
string
This parameter is used for cursor-based pagination. It takes a community ID as its value and retrieves only those communities that appear before it in the database
fields
optional
array
Any additional community details to retrieve. You can choose one or more of these supported values: - COMMUNITY_FIELD_DESCRIPTION - COMMUNITY_FIELD_TOPICS - COMMUNITY_FIELD_SOCIAL_SETTINGS - COMMUNITY_FIELD_PERMISSIONS - COMMUNITY_FIELD_MEMBERS_COUNT - COMMUNITY_FIELD_RECIPES_COUNT - COMMUNITY_FIELD_SPONSORED Note: For performance reasons, we recommend using this parameter only when required.
Response
200: OK
This is how a successful response looks.
{
"topic": {
"id": "string",
"display_name": "string"
},
"communities": [
{
"id": "string",
"name": "string",
"image": {
"url": "string",
"width": 0,
"height": 0,
"selection": {
"x": 0,
"y": 0,
"width": 0,
"height": 0
}
},
"description": "string",
"topics": [
{
"id": "string",
"display_name": "string"
}
],
"social_settings": {
"website_url": "string",
"instagram_username": "string",
"youtube_channel_url": "string",
"tiktok_username": "string"
},
"permissions": {
"role": "COMMUNITY_ROLE_INVALID",
"mode": "COMMUNITY_CONTRIBUTION_PERMISSION_MODE_INVALID",
"visibility": "COMMUNITY_VISIBILITY_INVALID"
},
"members": {
"count": 0
},
"recipes": {
"count": 0
},
"is_sponsored": true
}
],
"paging": {
"cursors": {
"after": "string",
"before": "string"
},
"total": "string"
}
}
400: Bad Request
This failed response appears when error codes are found in the endpoint query.
{
"error_code": "REAL_CODES_ARE_IN_ENDPOINT_DESCRIPTION",
"message": "Additional details about error are not static and can be changed"
}
401: Unauthorized
This failed response appears due to API authentication failure. The possible error codes that may appear are: auth.tokenNotFound , auth.tokenExpired, auth.tokenInvalid, auth.tokenRequired.
{
"code": "auth.tokenNotFound"
}
500: Internal Server Error
This failed response appears when something is not right on Whisk's end. Please send a message to help@whisk.com, and be sure to include both the Request and Response data. We’ll get back to you soon.
This is unexpected response, something is wrong on our side, please contact: help@whisk.com

Sample Request and Response

Curl Request
Response
Curl Request
curl -X GET "https://api.whisk.com/community/v2/by_topic/914d167bb1754adbbcd1f085cdcc4f6c?paging.limit=2&fields=COMMUNITY_FIELD_DESCRIPTION&fields=COMMUNITY_FIELD_TOPICS&fields=COMMUNITY_FIELD_SOCIAL_SETTINGS&fields=COMMUNITY_FIELD_PERMISSIONS&fields=COMMUNITY_FIELD_MEMBERS_COUNT&fields=COMMUNITY_FIELD_RECIPES_COUNT&fields=COMMUNITY_FIELD_SPONSORED"
-H "Accept: application/json"
-H "Authorization: Bearer <YOUR-API-ACCESS-KEY>"

Note: Whisk allows you to discover and understand its API capabilities on the Swagger interface with the ability to try out the API calls directly in your browser. You can call this endpoint here.

Response
{
"topic": {
"id": "914d167bb1754adbbcd1f085cdcc4f6c",
"display_name": "Family Friendly"
},
"communities": [
{
"id": "3a6c952a99ac404f9905c042819be9b9",
"name": "Toddler Treats",
"image": {
...
},
"description": "Healthy toddler treats from snacks to freeze ahead meals.",
"topics": [
{
"id": "914d167bb1754adbbcd1f085cdcc4f6c",
"display_name": "Family Friendly"
}
],
"permissions": {
...
},
"members": {
"count": 8569
},
"recipes": {
"count": 102
}
},
{
"id": "948ec40b144845169a21d844b68fa4ce",
"name": "Fussy Kids",
"image": {
...
},
"description": "Healthy dishes my kids go for every time - without realising",
"topics": [
{
"id": "914d167bb1754adbbcd1f085cdcc4f6c",
"display_name": "Family Friendly"
}
],
"permissions": {
...
},
"members": {
"count": 4702
},
"recipes": {
"count": 25
}
}
],
"paging": {
"cursors": {
"after": "eyJpZCI6Ijk0OGVjNDBiMTQ0ODQ1MTY5YTIxZDg0NGI2OGZhNGNlIiwiaW5kZXgiOjF9"
},
"total": "109"
}
}

Note: To understand the data structure of a community definition, see Community Object.