Changelogs
Changelogs are one of the core features in Featurebase. On this page, we'll dive into the different changelog endpoints you can use to manage them programmatically. We'll look into subscribing your users to your changelog so that they always receive updates when you post changes.
The Changelog model
The Changelog model contains all the information about a changelog, such as it's title, content, date of creation and much more. It has the following properties:
Properties
- Name
id
- Type
- string
- Description
The id the changelog.
- Name
title
- Type
- string
- Description
The title of the changelog.
- Name
content
- Type
- string
- Description
The content of the changelog.
- Name
date
- Type
- Date
- Description
The date when the post was made.
- Name
displayed
- Type
- boolean
- Description
Flag indicating whether the changelog is visible to the public. This is pretty much a draft flag.
- Name
changelogCategories
- Type
- object[]
- Description
An array of category objects associated with the changelog.
- Name
organization
- Type
- string
- Description
The organization that the author of the post belongs to.
Get changelogs
This endpoint allows you to retrieve a paginated list of all your changelogs. By default, a maximum of ten changelogs are shown per page.
Optional filtering attributes
- Name
id
- Type
- string
- Description
Find changelog by it's id.
- Name
q
- Type
- string
- Description
Search for changelogs by title or content.
- Name
categories
- Type
- string[]
- Description
Filter changelogs by category, by providing an array of category names.
Pagination attributes
- Name
limit
- Type
- integer
- Description
Number of results per page
- Name
page
- Type
- integer
- Description
Page number
Request
curl -G https://do.featurebase.app/v2/changelog \
-H "X-API-Key: {token}"
Response
{
"results": [
{
"title": "Your awesome changelog!",
"content": "<p>Your changelog content in HTML format.</p>",
"date": "2023-05-07T17:46:39.168Z",
"displayed": true,
"changelogCategories": [
{
"name": "Test2",
"roles": [],
"id": "6438a1efda3640f8feb72121"
}
],
"organization": "robiorg",
"id": "6457e3ff70afca5d8c27dccc"
},
{
...
},
...
],
"page": 1,
"limit": 10,
"totalPages": 30,
"totalResults": 292
}
Get changelog subscribers
This endpoint allows you to retrieve list of all your changelog subscribers.
Request
curl -G https://do.featurebase.app/v2/changelog/subscribers \
-H "X-API-Key: {token}"
Response
{
"success": true,
"emails": [
"yourcustomer@gmail.com"
]
}
Add new changelog subscribers
This endpoint allows you to add changelog subscribers. They will then receive emails when you post changelogs.
Required attributes
- Name
emails
- Type
- string[]
- Description
An array of emails to add as subscribers.
Request
curl -X 'POST' 'https://do.featurebase.app/v2/changelog/subscribe' \
-H 'X-API-Key: {token}' \
-H 'Content-Type: application/json' \
-d '{
"emails": [
"yourcustomer@gmail.com",
"yoursecondcustomer@gmail.com
]
}'
Response
{
"success": true
}
Remove changelog subscribers by email
This endpoint allows you to update a post by providing the post id. Refer to the list at the top of this page to see which properties are included with post objects.
Required attributes
- Name
emails
- Type
- string[]
- Description
An array of emails to remove from subscribers.
Request
curl -X 'DELETE' 'https://do.featurebase.app/v2/changelog/subscribe' \
-H 'X-API-Key: {token}' \
-H 'Content-Type: application/json' \
-d '{
"emails": [
"yourcustomer@gmail.com",
]
}'
Response
{
"success": true
}