Get the forum in a space (public reader)

Embed
Preview of the card
<a href="https://forumulate.com/reference/forumulate-api-publicforum-index"><img src="https://forumulate.com/reference/_api/public/orgs/046a9bc0-d530-43ae-9bae-af7945008cda/spaces/8042f004-e3d9-445f-b7a4-b6c1f86836e6/pages/066f802f-8bb0-43e7-bfb9-09606e8657c7/social-card.svg?v=3e7ae33eec8b" alt="Get the forum in a space (public reader)" width="600" height="315"></a>
GEThttps://forumulate.com/api/public/orgs/{orgId}/spaces/{spaceId}/forum

The forum’s front page for a visitor: its categories, the pinned topics and the most recent activity, with nothing a reader may not see. No token is needed on a public space, which is what makes it the door a static site or a mobile app reads. ?locale= lists each topic under its published translation in that declared language (NUM-43).

Parameters
orgIdstringpathrequired
spaceIdstringpathrequired
limitintegerquery
Topics per page. Defaults to 30. 100 is the most this endpoint serves — a larger value is capped, not refused. A value that is not a whole number of 1 or more is a 422, never a silent default.
= 30
tagstringquery
kindstringquery
categorystringquery
pinnedstringquery
Use true or false (true/1/yes/on and false/0/no/off are accepted).
true | 1 | yes | on | false | 0 | no | off
featuredstringquery
Use true or false (true/1/yes/on and false/0/no/off are accepted).
true | 1 | yes | on | false | 0 | no | off
bountiedstringquery
Use true or false (true/1/yes/on and false/0/no/off are accepted).
true | 1 | yes | on | false | 0 | no | off
includeSubcategoriesstringquery
Use true or false (true/1/yes/on and false/0/no/off are accepted).
true | 1 | yes | on | false | 0 | no | off
tagsstringquery
mediastringquery
Use true or false (true/1/yes/on and false/0/no/off are accepted).
true | 1 | yes | on | false | 0 | no | off
previewsstringquery
pageintegerquery
Which page of results to return, 1-based. Out-of-range pages return an empty list.
= 1
sharestringquery
filterstringquery
periodstringquery
cursorstringquery
previewstringquery
localestringquery
tagMatchstringquery
any | all
solvedstringquery
yes | no
sortstringquery
latest | top | hot | oldest
forumulate-versionstringheader
API version negotiation. Send forumulate-version: 2026-12-01 on every request from a new integration; it is optional only so that integrations written before versioning keep working. Each version includes everything before it:
Code samples
cURL
curl -X GET "https://forumulate.com/api/public/orgs/{orgId}/spaces/{spaceId}/forum?limit=&tag=&kind=&category=&pinned=&featured=&bountied=&includeSubcategories=&tags=&media=&previews=&page=&share=&filter=&period=&cursor=&preview=&locale=&tagMatch=&solved=&sort=" \
  -H "forumulate-version: <value>"
TypeScript
const res = await fetch('https://forumulate.com/api/public/orgs/{orgId}/spaces/{spaceId}/forum?limit=&tag=&kind=&category=&pinned=&featured=&bountied=&includeSubcategories=&tags=&media=&previews=&page=&share=&filter=&period=&cursor=&preview=&locale=&tagMatch=&solved=&sort=', {
  method: 'GET',
  headers: {
    'forumulate-version': '<value>',
  },
});
const data = await res.json();
Python
import requests

res = requests.request(
    "GET",
    "https://forumulate.com/api/public/orgs/{orgId}/spaces/{spaceId}/forum?limit=&tag=&kind=&category=&pinned=&featured=&bountied=&includeSubcategories=&tags=&media=&previews=&page=&share=&filter=&period=&cursor=&preview=&locale=&tagMatch=&solved=&sort=",
    headers={
    "forumulate-version": "<value>",
    },
)
data = res.json()
Go
package main

import (
	"fmt"
	"io"
	"net/http"
)

func main() {
	req, _ := http.NewRequest("GET", "https://forumulate.com/api/public/orgs/{orgId}/spaces/{spaceId}/forum?limit=&tag=&kind=&category=&pinned=&featured=&bountied=&includeSubcategories=&tags=&media=&previews=&page=&share=&filter=&period=&cursor=&preview=&locale=&tagMatch=&solved=&sort=", nil)
	req.Header.Set("forumulate-version", "<value>")
	res, _ := http.DefaultClient.Do(req)
	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)
	fmt.Println(string(body))
}
PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://forumulate.com/api/public/orgs/{orgId}/spaces/{spaceId}/forum?limit=&tag=&kind=&category=&pinned=&featured=&bountied=&includeSubcategories=&tags=&media=&previews=&page=&share=&filter=&period=&cursor=&preview=&locale=&tagMatch=&solved=&sort=');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['forumulate-version: <value>']);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
Ruby
require 'net/http'
require 'uri'

uri = URI('https://forumulate.com/api/public/orgs/{orgId}/spaces/{spaceId}/forum?limit=&tag=&kind=&category=&pinned=&featured=&bountied=&includeSubcategories=&tags=&media=&previews=&page=&share=&filter=&period=&cursor=&preview=&locale=&tagMatch=&solved=&sort=')
req = Net::HTTP::Get.new(uri)
req['forumulate-version'] = '<value>'
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
  http.request(req)
end
puts res.body
Java
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://forumulate.com/api/public/orgs/{orgId}/spaces/{spaceId}/forum?limit=&tag=&kind=&category=&pinned=&featured=&bountied=&includeSubcategories=&tags=&media=&previews=&page=&share=&filter=&period=&cursor=&preview=&locale=&tagMatch=&solved=&sort="))
    .header("forumulate-version", "<value>")
    .GET()
    .build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
Responses
200 Success.
Example
{
  "forum": "string",
  "frontDoor": {},
  "frontPage": {
    "aside": {
      "doc": null,
      "phone": null,
      "width": null
    },
    "customization": {},
    "doc": {
      "content": null,
      "type": null
    },
    "gap": "lg",
    "hideTitle": true,
    "paddingBottom": null,
    "paddingTop": null,
    "preset": "string",
    "sidebar": {
      "divider": null,
      "doc": null,
      "gap": null,
      "phone": null,
      "position": null,
      "source": null,
      "startAfter": null,
      "width": null
    },
    "width": null
  },
  "homeDoc": {},
  "homeDocTranslations": {},
  "locale": "string",
  "locales": [
    {
      "available": true,
      "code": "string",
      "isDefault": true,
      "label": "string"
    }
  ],
  "period": "string",
  "preset": "string",
  "servedAt": "string",
  "signedIn": true,
  "sort": "string",
  "topics": [
    {
      "answerCount": 0,
      "answerPostId": null,
      "authorAvatarSeed": "string",
      "authorAvatarUrl": "string",
      "authorId": null,
      "authorKind": "anonymous",
      "authorName": null,
      "authorPoints": 0,
      "authorTitle": "string",
      "authorUsername": "string",
      "bookmarked": true,
      "byline": null,
      "bylines": [
        null
      ],
      "categoryId": null,
      "commentsEnabled": true,
      "coverUrl": null,
      "customization": null,
      "deletedAt": "2024-01-01T00:00:00Z",
      "excerpt": "string",
      "expiresAt": "2024-01-01T00:00:00Z",
      "featured": true,
      "featuredLink": null,
      "firstImageUrl": "string",
      "furtherReading": [
        null
      ],
      "id": "string",
      "isNew": true,
      "kind": "ARTICLE",
      "lastActivityAt": "2024-01-01T00:00:00Z",
      "lastPostedAt": "string",
      "lastPosterName": "string",
      "likeCount": 0,
      "listed": true,
      "mergedIntoId": null,
      "number": null,
      "onThisPage": "always",
      "pinned": true,
      "pinnedGlobally": true,
      "pinnedUntil": null,
      "posters": [
        null
      ],
      "promotedPageId": null,
      "publishedAt": null,
      "readingMinutes": 0,
      "releaseVersion": null,
      "replyCount": 0,
      "replyPreviews": [
        null
      ],
      "review": {
        "note": null,
        "requestedAt": null,
        "requestedBy": null,
        "reviewedAt": null,
        "reviewedBy": null,
        "state": null
      },
      "roadmapStatus": null,
      "scheduledFor": null,
      "series": null,
      "shippedTopicIds": [
        null
      ],
      "slug": "string",
      "state": "ARCHIVED",
      "status": "archived",
      "subtitle": "string",
      "tagInfo": [
        null
      ],
      "tags": [
        null
      ],
      "title": "string",
      "unread": 0,
      "updatedAt": "2024-01-01T00:00:00Z",
      "viewCount": 0,
      "voteCount": 0
    }
  ],
  "total": 0
}
Option 1
forumstringrequired
frontDoorobjectrequired
frontPageStoredFrontPagerequired
Show child parameters
asideobject
Show child parameters
docobjectrequired
phonestring
after | hide
widthstring
default | narrow | wide
customizationobject
docobjectrequired
Show child parameters
contentobject[]required
typestringrequired
doc
gapstring
lg | md | none | sm
hideTitleboolean
paddingBottomstring | number
paddingTopstring | number | IndexFrameSteps
presetstring
sidebarobject
Show child parameters
dividerobject
docobjectrequired
gapstring | number
phonestring | object
positionstringrequired
left | none | right
sourcestring
doc | docs-nav
startAfternumber
widthstring
default | narrow | wide
widthnumber | string
homeDocrequired
homeDocTranslationsobject
localestring
localesReleaseLocaleLink[]
Show child parameters
availablebooleanrequired
codestringrequired
isDefaultbooleanrequired
labelstringrequired
periodstring
presetstringrequired
servedAtstringrequired
signedInbooleanrequired
sortstringrequired
topicsArticleSummary[]required
Show child parameters
answerCountnumber
answerPostIdstringrequired
authorAvatarSeedstring
authorAvatarUrlstring
authorIdstringrequired
authorKindstring
anonymous | guest | member | persona | service | staged
authorNamestringrequired
authorPointsnumber
authorTitlestring
authorUsernamestring
bookmarkedboolean
bylineBylinerequired
Show child parameters
avatarUrlstring
namestring
urlstring
bylinesBylineView[]
Show child parameters
authorstringrequired
avatarUrlstringrequired
biostringrequired
handlestring
namestringrequired
rolestringrequired
urlstringrequired
userIdstringrequired
categoryIdstringrequired
commentsEnabledbooleanrequired
coverUrlstringrequired
customizationPieceCustomizationrequired
Show child parameters
customCssstring
jsonLdstring
ogDescriptionstring
ogTitlestring
shareImageUrlstring
themeobject
twitterCardstring
summary | summary_large_image
deletedAtstring
excerptstringrequired
expiresAtstring
featuredbooleanrequired
featuredLinkstringrequired
firstImageUrlstring
furtherReadingobject[]required
Show child parameters
hrefstringrequired
labelstringrequired
idstringrequired
isNewboolean
kindstringrequired
ARTICLE | DISCUSSION | FEATURE | QUESTION | RELEASE
lastActivityAtstringrequired
lastPostedAtstring
lastPosterNamestring
likeCountnumber
listedbooleanrequired
mergedIntoIdstringrequired
numbernumberrequired
onThisPagestringrequired
always | auto | never
pinnedbooleanrequired
pinnedGloballybooleanrequired
pinnedUntilstringrequired
postersForumPoster[]
Show child parameters
avatarSeedstringrequired
avatarUrlstringrequired
kindstringrequired
anonymous | guest | member | persona | service | staged
namestringrequired
rolestringrequired
frequent | latest | op
usernamestringrequired
promotedPageIdstringrequired
publishedAtstringrequired
readingMinutesnumberrequired
releaseVersionstringrequired
replyCountnumberrequired
replyPreviewsReplyPreview[]
Show child parameters
authorstringrequired
authorAvatarstringrequired
authorSeedstringrequired
textstringrequired
reviewobject
Show child parameters
notestringrequired
requestedAtstringrequired
requestedBystringrequired
reviewedAtstringrequired
reviewedBystringrequired
statestringrequired
approved | changes_requested | in_review
roadmapStatusstringrequired
scheduledForstringrequired
seriesstringrequired
shippedTopicIdsstring[]required
slugstringrequired
statestringrequired
ARCHIVED | CLOSED | DRAFT | PUBLISHED
statusstringrequired
archived | closed | draft | published
subtitlestring
tagInfoTagDisplay[]
Show child parameters
colorstringrequired
colorDarkstringrequired
coverUrlstringrequired
descriptionstringrequired
gradientarrayrequired
iconstring
labelstringrequired
pagePaletteobjectrequired
pageSchemestringrequired
dark | light
slugstringrequired
textColorstringrequired
textColorDarkstringrequired
tagsstring[]required
titlestringrequired
unreadnumber
updatedAtstringrequired
viewCountnumberrequired
voteCountnumberrequired
totalnumber
{
  "forum": "string",
  "frontDoor": {},
  "frontPage": {
    "aside": {
      "doc": {
        "content": null,
        "type": null
      },
      "phone": "after",
      "width": "default"
    },
    "customization": {},
    "doc": {
      "content": [
        null
      ],
      "type": "doc"
    },
    "gap": "lg",
    "hideTitle": true,
    "paddingBottom": "string",
    "paddingTop": "string",
    "preset": "string",
    "sidebar": {
      "divider": {
        "color": null,
        "style": null,
        "width": null
      },
      "doc": {
        "content": null,
        "type": null
      },
      "gap": null,
      "phone": null,
      "position": "left",
      "source": "doc",
      "startAfter": 0,
      "width": "default"
    },
    "width": 0
  },
  "homeDoc": {},
  "homeDocTranslations": {},
  "locale": "string",
  "locales": [
    {
      "available": true,
      "code": "string",
      "isDefault": true,
      "label": "string"
    }
  ],
  "period": "string",
  "preset": "string",
  "servedAt": "string",
  "signedIn": true,
  "sort": "string",
  "topics": [
    {
      "answerCount": 0,
      "answerPostId": "string",
      "authorAvatarSeed": "string",
      "authorAvatarUrl": "string",
      "authorId": "string",
      "authorKind": "anonymous",
      "authorName": "string",
      "authorPoints": 0,
      "authorTitle": "string",
      "authorUsername": "string",
      "bookmarked": true,
      "byline": {
        "avatarUrl": null,
        "name": null,
        "url": null
      },
      "bylines": [
        {
          "author": null,
          "avatarUrl": null,
          "bio": null,
          "handle": null,
          "name": null,
          "role": null,
          "url": null,
          "userId": null
        }
      ],
      "categoryId": "string",
      "commentsEnabled": true,
      "coverUrl": "string",
      "customization": {
        "customCss": null,
        "jsonLd": null,
        "ogDescription": null,
        "ogTitle": null,
        "shareImageUrl": null,
        "theme": null,
        "twitterCard": null
      },
      "deletedAt": "2024-01-01T00:00:00Z",
      "excerpt": "string",
      "expiresAt": "2024-01-01T00:00:00Z",
      "featured": true,
      "featuredLink": "string",
      "firstImageUrl": "string",
      "furtherReading": [
        {
          "href": null,
          "label": null
        }
      ],
      "id": "string",
      "isNew": true,
      "kind": "ARTICLE",
      "lastActivityAt": "2024-01-01T00:00:00Z",
      "lastPostedAt": "string",
      "lastPosterName": "string",
      "likeCount": 0,
      "listed": true,
      "mergedIntoId": "string",
      "number": 0,
      "onThisPage": "always",
      "pinned": true,
      "pinnedGlobally": true,
      "pinnedUntil": "2024-01-01T00:00:00Z",
      "posters": [
        {
          "avatarSeed": null,
          "avatarUrl": null,
          "kind": null,
          "name": null,
          "role": null,
          "username": null
        }
      ],
      "promotedPageId": "string",
      "publishedAt": "2024-01-01T00:00:00Z",
      "readingMinutes": 0,
      "releaseVersion": "string",
      "replyCount": 0,
      "replyPreviews": [
        {
          "author": null,
          "authorAvatar": null,
          "authorSeed": null,
          "text": null
        }
      ],
      "review": {
        "note": null,
        "requestedAt": null,
        "requestedBy": null,
        "reviewedAt": null,
        "reviewedBy": null,
        "state": "approved"
      },
      "roadmapStatus": "string",
      "scheduledFor": "2024-01-01T00:00:00Z",
      "series": "string",
      "shippedTopicIds": [
        "string"
      ],
      "slug": "string",
      "state": "ARCHIVED",
      "status": "archived",
      "subtitle": "string",
      "tagInfo": [
        {
          "color": null,
          "colorDark": null,
          "coverUrl": null,
          "description": null,
          "gradient": null,
          "icon": null,
          "label": null,
          "pagePalette": null,
          "pageScheme": null,
          "slug": null,
          "textColor": null,
          "textColorDark": null
        }
      ],
      "tags": [
        "string"
      ],
      "title": "string",
      "unread": 0,
      "updatedAt": "2024-01-01T00:00:00Z",
      "viewCount": 0,
      "voteCount": 0
    }
  ],
  "total": 0
}
Option 2
forumstringrequired
frontDoorobjectrequired
frontPageStoredFrontPagerequired
Show child parameters
asideobject
Show child parameters
docobjectrequired
phonestring
after | hide
widthstring
default | narrow | wide
customizationobject
docobjectrequired
Show child parameters
contentobject[]required
typestringrequired
doc
gapstring
lg | md | none | sm
hideTitleboolean
paddingBottomstring | number
paddingTopstring | number | IndexFrameSteps
presetstring
sidebarobject
Show child parameters
dividerobject
docobjectrequired
gapstring | number
phonestring | object
positionstringrequired
left | none | right
sourcestring
doc | docs-nav
startAfternumber
widthstring
default | narrow | wide
widthnumber | string
homeDocrequired
homeDocTranslationsobject
localestring
localesReleaseLocaleLink[]
Show child parameters
availablebooleanrequired
codestringrequired
isDefaultbooleanrequired
labelstringrequired
pageobjectrequired
The paging envelope a collection carries when the caller states Forumulate-Version. Each operation’s own response schema says whether it has one: a collection either carries page, or answers both this and its pre-envelope shape and picks by the header. No listing pages with keys of its own any more — the allowlists in openapi-collection-shape.test.ts are empty, which is what stops a new one from appearing. Read hasMore and nextCursor: the snake_case pair beside them is deprecated and is not sent to a caller who states 2026-11-01 or later.
Show child parameters
limitintegerrequired
The limit this page was built with — what was asked for, capped. NOT the number of rows returned: a final page under the limit is normal, and hasMore is the only thing that says whether to keep walking.
hasMorebooleanrequired
Whether another page follows this one.
nextCursorstringrequired
Pass back as cursor to continue. Null on the last page.
has_morebooleandeprecated
The same value as hasMore. These two are the only snake_case keys in the API. Sent to callers who state 2026-09-01 or no version at all; ABSENT from 2026-11-01 onwards. Read hasMore instead — it is sent on every version.
next_cursorstringdeprecated
The same value as nextCursor. Absent from 2026-11-01 onwards; read nextCursor.
totalinteger
Rows in the whole collection — the size of the set, not of this page, and not of what you have seen so far. ABSENT where the source cannot count the collection: the append-only logs (staff actions, automation runs, connector activity, ingested questions, chat history) grow without bound and are not counted on every page view. Walk on hasMore, which is exact on every answer; read total only to show a size, and handle its absence.
periodstring
presetstringrequired
servedAtstringrequired
signedInbooleanrequired
sortstringrequired
topicsArticleSummary[]required
Show child parameters
answerCountnumber
answerPostIdstringrequired
authorAvatarSeedstring
{
  "forum": "string",
  "frontDoor": {},
  "frontPage": {
    "aside": {
      "doc": {
        "content": null,
        "type": null
      },
      "phone": "after",
      "width": "default"
    },
    "customization": {},
    "doc": {
      "content": [
        null
      ],
      "type": "doc"
    },
    "gap": "lg",
    "hideTitle": true,
    "paddingBottom": "string",
    "paddingTop": "string",
    "preset": "string",
    "sidebar": {
      "divider": {
        "color": null,
        "style": null,
        "width": null
      },
      "doc": {
        "content": null,
        "type": null
      },
      "gap": null,
      "phone": null,
      "position": "left",
      "source": "doc",
      "startAfter": 0,
      "width": "default"
    },
    "width": 0
  },
  "homeDoc": {},
  "homeDocTranslations": {},
  "locale": "string",
  "locales": [
    {
      "available": true,
      "code": "string",
      "isDefault": true,
      "label": "string"
    }
  ],
  "page": {
    "limit": 0,
    "hasMore": true,
    "nextCursor": "string",
    "has_more": true,
    "next_cursor": "string",
    "total": 0
  },
  "period": "string",
  "preset": "string",
  "servedAt": "string",
  "signedIn": true,
  "sort": "string",
  "topics": [
    {
      "answerCount": 0,
      "answerPostId": "string",
      "authorAvatarSeed": "string",
      "authorAvatarUrl": "string",
      "authorId": "string",
      "authorKind": "anonymous",
      "authorName": "string",
      "authorPoints": 0,
      "authorTitle": "string",
      "authorUsername": "string",
      "bookmarked": true,
      "byline": {
        "avatarUrl": null,
        "name": null,
        "url": null
      },
      "bylines": [
        {
          "author": null,
          "avatarUrl": null,
          "bio": null,
          "handle": null,
          "name": null,
          "role": null,
          "url": null,
          "userId": null
        }
      ],
      "categoryId": "string",
      "commentsEnabled": true,
      "coverUrl": "string",
      "customization": {
        "customCss": null,
        "jsonLd": null,
        "ogDescription": null,
        "ogTitle": null,
        "shareImageUrl": null,
        "theme": null,
        "twitterCard": null
      },
      "deletedAt": "2024-01-01T00:00:00Z",
      "excerpt": "string",
      "expiresAt": "2024-01-01T00:00:00Z",
      "featured": true,
      "featuredLink": "string",
      "firstImageUrl": "string",
      "furtherReading": [
        {
          "href": null,
          "label": null
        }
      ],
      "id": "string",
      "isNew": true,
      "kind": "ARTICLE",
      "lastActivityAt": "2024-01-01T00:00:00Z",
      "lastPostedAt": "string",
      "lastPosterName": "string",
      "likeCount": 0,
      "listed": true,
      "mergedIntoId": "string",
      "number": 0,
      "onThisPage": "always",
      "pinned": true,
      "pinnedGlobally": true,
      "pinnedUntil": "2024-01-01T00:00:00Z",
      "posters": [
        {
          "avatarSeed": null,
          "avatarUrl": null,
          "kind": null,
          "name": null,
          "role": null,
          "username": null
        }
      ],
      "promotedPageId": "string",
      "publishedAt": "2024-01-01T00:00:00Z",
      "readingMinutes": 0,
      "releaseVersion": "string",
      "replyCount": 0,
      "replyPreviews": [
        {
          "author": null,
          "authorAvatar": null,
          "authorSeed": null,
          "text": null
        }
      ],
      "review": {
        "note": null,
        "requestedAt": null,
        "requestedBy": null,
        "reviewedAt": null,
        "reviewedBy": null,
        "state": "approved"
      },
      "roadmapStatus": "string",
      "scheduledFor": "2024-01-01T00:00:00Z",
      "series": "string",
      "shippedTopicIds": [
        "string"
      ],
      "slug": "string",
      "state": "ARCHIVED",
      "status": "archived",
      "subtitle": "string",
      "tagInfo": [
        {
          "color": null,
          "colorDark": null,
          "coverUrl": null,
          "description": null,
          "gradient": null,
          "icon": null,
          "label": null,
          "pagePalette": null,
          "pageScheme": null,
          "slug": null,
          "textColor": null,
          "textColorDark": null
        }
      ],
      "tags": [
        "string"
      ],
      "title": "string",
      "unread": 0,
      "updatedAt": "2024-01-01T00:00:00Z",
      "viewCount": 0,
      "voteCount": 0
    }
  ],
  "total": 0,
  "data": [
    {
      "answerCount": 0,
      "answerPostId": "string",
      "authorAvatarSeed": "string",
      "authorAvatarUrl": "string",
      "authorId": "string",
      "authorKind": "anonymous",
      "authorName": "string",
      "authorPoints": 0,
      "authorTitle": "string",
      "authorUsername": "string",
      "bookmarked": true,
      "byline": {
        "avatarUrl": null,
        "name": null,
        "url": null
      },
      "bylines": [
        {
          "author": null,
          "avatarUrl": null,
          "bio": null,
          "handle": null,
          "name": null,
          "role": null,
          "url": null,
          "userId": null
        }
      ],
      "categoryId": "string",
      "commentsEnabled": true,
      "coverUrl": "string",
      "customization": {
        "customCss": null,
        "jsonLd": null,
        "ogDescription": null,
        "ogTitle": null,
        "shareImageUrl": null,
        "theme": null,
        "twitterCard": null
      },
      "deletedAt": "2024-01-01T00:00:00Z",
      "excerpt": "string",
      "expiresAt": "2024-01-01T00:00:00Z",
      "featured": true,
      "featuredLink": "string",
      "firstImageUrl": "string",
      "furtherReading": [
        {
          "href": null,
          "label": null
        }
      ],
      "id": "string",
      "isNew": true,
      "kind": "ARTICLE",
      "lastActivityAt": "2024-01-01T00:00:00Z",
      "lastPostedAt": "string",
      "lastPosterName": "string",
      "likeCount": 0,
      "listed": true,
      "mergedIntoId": "string",
      "number": 0,
      "onThisPage": "always",
      "pinned": true,
      "pinnedGlobally": true,
      "pinnedUntil": "2024-01-01T00:00:00Z",
      "posters": [
        {
          "avatarSeed": null,
          "avatarUrl": null,
          "kind": null,
          "name": null,
          "role": null,
          "username": null
        }
      ],
      "promotedPageId": "string",
      "publishedAt": "2024-01-01T00:00:00Z",
      "readingMinutes": 0,
      "releaseVersion": "string",
      "replyCount": 0,
      "replyPreviews": [
        {
          "author": null,
          "authorAvatar": null,
          "authorSeed": null,
          "text": null
        }
      ],
      "review": {
        "note": null,
        "requestedAt": null,
        "requestedBy": null,
        "reviewedAt": null,
        "reviewedBy": null,
        "state": "approved"
      },
      "roadmapStatus": "string",
      "scheduledFor": "2024-01-01T00:00:00Z",
      "series": "string",
      "shippedTopicIds": [
        "string"
      ],
      "slug": "string",
      "state": "ARCHIVED",
      "status": "archived",
      "subtitle": "string",
      "tagInfo": [
        {
          "color": null,
          "colorDark": null,
          "coverUrl": null,
          "description": null,
          "gradient": null,
          "icon": null,
          "label": null,
          "pagePalette": null,
          "pageScheme": null,
          "slug": null,
          "textColor": null,
          "textColorDark": null
        }
      ],
      "tags": [
        "string"
      ],
      "title": "string",
      "unread": 0,
      "updatedAt": "2024-01-01T00:00:00Z",
      "viewCount": 0,
      "voteCount": 0
    }
  ]
}
400 The request could not be understood — a malformed header, path or query value (request.malformed). A value that was understood but is not acceptable is a 422 validation.failed.
{
  "error": {
    "code": "string",
    "message": "string",
    "details": {},
    "docs": "string",
    "reason": "string",
    "slugs": [
      "string"
    ],
    "conflict": {
      "etag": "string",
      "ops": [
        null
      ]
    }
  },
  "requestId": "string"
}
404 No such thing — one of the ids in the path does not resolve, or resolves to something this caller may not see (*.not_found).
{
  "error": {
    "code": "string",
    "message": "string",
    "details": {},
    "docs": "string",
    "reason": "string",
    "slugs": [
      "string"
    ],
    "conflict": {
      "etag": "string",
      "ops": [
        null
      ]
    }
  },
  "requestId": "string"
}
429 Rate limited — see the RateLimit-* headers.
{
  "error": {
    "code": "string",
    "message": "string",
    "details": {},
    "docs": "string",
    "reason": "string",
    "slugs": [
      "string"
    ],
    "conflict": {
      "etag": "string",
      "ops": [
        null
      ]
    }
  },
  "requestId": "string"
}
default Error — the stable { error: { code, message } } envelope.
{
  "error": {
    "code": "string",
    "message": "string",
    "details": {},
    "docs": "string",
    "reason": "string",
    "slugs": [
      "string"
    ],
    "conflict": {
      "etag": "string",
      "ops": [
        null
      ]
    }
  },
  "requestId": "string"
}
The Forumulate teamUpdated