Update Article
Updates an article. Despite the PUT, only the fields present in the body are written. Two side effects are worth knowing: changing the title regenerates the URL slug, which breaks existing links to the article; and switching type to internal clears its collection, removing it from help-center navigation. Moving between draft and published is what controls public visibility. To include a new screenshot, upload it with Upload Article Image and embed the returned https://storage.saasco.com URL in body.
Authorization
Authorization In: header
Path Parameters
ID of the project that owns the article.
ID of the article to update.
Request Body
application/json
Article HTML. Embed a screenshot as . Upload a new image with Upload Article Image and use the returned URL. Omit to leave unchanged.
Article title. Omit to leave unchanged.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X PUT "https://www.saasco.com/api/v2/projects/string/knowledge/articles/string" \ -H "Content-Type: application/json" \ -d '{}'{
"id": "string",
"createdAt": "string",
"updatedAt": "string",
"projectId": "string",
"type": "public",
"title": "string",
"slug": "string",
"description": "string",
"body": "string",
"url": "string",
"state": "draft",
"order": -9007199254740991,
"collectionId": "string",
"authorId": "string",
"views": -9007199254740991,
"conversions": -9007199254740991,
"happyReactions": -9007199254740991,
"neutralReactions": -9007199254740991,
"sadReactions": -9007199254740991
}{
"code": "BAD_REQUEST",
"message": "Invalid input data",
"issues": []
}{
"code": "UNAUTHORIZED",
"message": "Authorization not provided",
"issues": []
}{
"code": "FORBIDDEN",
"message": "Insufficient access",
"issues": []
}{
"code": "NOT_FOUND",
"message": "Not found",
"issues": []
}{
"code": "INTERNAL_SERVER_ERROR",
"message": "Internal server error",
"issues": []
}Create Article
Creates a knowledge-base article. The URL slug is generated from the title rather than supplied. Public articles belong to a collection and appear on the help center once published; internal articles are not browsable and exist to answer support questions. The authenticated caller (session or MCP user) becomes the article's author, so an API key alone is not enough. To include a new screenshot, upload it with Upload Article Image and embed the returned https://storage.saasco.com URL in `body`.
Upload Article Image
Uploads a screenshot for a Help Center article, using the same project image upload as pasting an image into the article editor. Send base64 image bytes, a content type, and an optional file name. Optionally set pathPrefix to the article slug so the file is stored with that article's other screenshots. Returns a public https://storage.saasco.com URL to embed in the article body when creating or updating the article. An existing storage URL can be embedded directly and does not need to be uploaded again.