Before accessing any endpoint, make sure you have created a valid access token. Also make sure to read the introduction to get familiar with our API.
Available endpoints:
- Get basic workspace info
- Get all entries
- Get single entry
- Get all tags
- Get all subscribers
- Add subscriber
- Delete subscriber
Get basic workspace info
Method: GET
To get some basic info about your workspace, you can use the endpoint https://releasesapp.com/api/workspace
:
$access_token = 'YOUR-ACCESS-TOKEN';
curl https://releasesapp.com/api/workspace \
-H "Authorization: Bearer $access_token" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json'
Response
{
"success": true,
"version": "1.0",
"data": {
"identifier": "4982af36-4af0-11ee-8e70-7431996c5050",
"name": "Releases Changelog",
"slug": "releases-changelog",
"theme": "commit",
"is_public": 1,
"allow_bots": 1,
"show_backlink": 1,
"logo_url": "FULL-IMAGE-URL",
"og_image_url": "FULL-IMAGE-URL",
"created_at": "2023-08-20T08:57:18.000000Z"
}
}
Get all entries
Method: GET
To get a list of all entries in a workspace, you can use the endpoint https://releasesapp.com/api/entries
.
$access_token = 'YOUR-ACCESS-TOKEN';
curl https://releasesapp.com/api/entries \
-H "Authorization: Bearer $access_token" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json'
Response
{
"success": true,
"version": "1.0",
"data": [
{
"identifier": "a6b02a3e-bbcb-43f3-8f23-fc230fe7ff2e",
"title": "This is some published entry",
"slug": "this-is-some-published-entry",
"publish_at": "2023-09-05T00:00:00.000000Z",
"status": "published",
"notify_subscribers": true,
"content": {
"time": 1694690318071,
"blocks": [
{
"id": "YuESrpYS-F",
"type": "paragraph",
"data": {
"text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Libero nunc consequat interdum varius sit amet mattis vulputate. Tellus elementum sagittis vitae et leo. Quam vulputate dignissim suspendisse in est ante. Netus et malesuada fames ac turpis. "
}
},
{
"id": "oGrjALBv2Y",
"type": "header",
"data": {
"text": "This is a headline 2",
"level": 2
}
},
{
"id": "Lc8TBrsz5P",
"type": "paragraph",
"data": {
"text": "Turpis egestas integer eget aliquet nibh praesent tristique magna sit. At erat pellentesque adipiscing commodo elit at imperdiet. Habitasse platea dictumst vestibulum rhoncus est pellentesque elit ullamcorper."
}
},
{
"id": "hNtelV5-7Q",
"type": "header",
"data": {
"text": "This is a headline 3",
"level": 3
}
},
{
"id": "ihgpn2ngz3",
"type": "paragraph",
"data": {
"text": "Sem viverra aliquet eget sit amet tellus cras adipiscing. Porta lorem mollis aliquam ut porttitor. Lorem mollis aliquam ut porttitor leo. Tristique sollicitudin nibh sit amet commodo nulla facilisi nullam vehicula. Massa ultricies mi quis hendrerit."
}
},
{
"id": "47PERBXttZ",
"type": "header",
"data": {
"text": "And this is a headline 4",
"level": 4
}
},
{
"id": "xNiqjDFdy-",
"type": "paragraph",
"data": {
"text": "Lacus sed turpis tincidunt id. Placerat in egestas erat imperdiet sed euismod."
}
},
{
"id": "DaUvmEF8U9",
"type": "image",
"data": {
"file": {
"url": "FULL-IMAGE-URL"
},
"caption": "",
"withBorder": false,
"stretched": false,
"withBackground": false
}
}
],
"version": "2.27.2"
}
},
{
"identifier": "28871f56-42eb-46c8-9d61-42eb2368ced4",
"title": "This is a new draft",
"slug": "this-is-a-new-draft",
"publish_at": "2023-09-14T00:00:00.000000Z",
"status": "draft",
"notify_subscribers": true,
"content": {
"time": 1694690027554,
"blocks": [
{
"id": "q6tCbYbVQb",
"type": "paragraph",
"data": {
"text": "This is some text."
}
}
],
"version": "2.27.2"
}
}
]
}
Get single entry
Method: GET
To access a single entry, use the endpoint https://releasesapp.com/api/entries/{id}
.
$access_token = 'YOUR-ACCESS-TOKEN';
curl https://releasesapp.com/api/entries/{id} \
-H "Authorization: Bearer $access_token" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json'
Get all tags
Method: GET
To get a list of all tags, you can use the endpoint https://releasesapp.com/api/tags
.
$access_token = 'YOUR-ACCESS-TOKEN';
curl https://releasesapp.com/api/tags \
-H "Authorization: Bearer $access_token" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json'
Response
{
"success": true,
"version": "1.0",
"data": [
{
"name": "Announcement",
"slug": "announcement",
"bg_color": "#1b8bcc",
"text_color": "#ffffff"
},
{
"name": "Update",
"slug": "update",
"bg_color": "#0b9e77",
"text_color": "#ffffff"
},
{
"name": "Bugfix",
"slug": "bugfix",
"bg_color": "#98c283",
"text_color": "#d09723"
}
]
}
Get all subscribers
Method: GET
To get a list of all subscribers, use the endpoint https://releasesapp.com/api/subscribers
.
$access_token = 'YOUR-ACCESS-TOKEN';
curl https://releasesapp.com/api/subscribers \
-H "Authorization: Bearer $access_token" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json'
Response
{
"success": true,
"version": "1.0",
"data": [
{
"email": "andreas@example.com",
"name": "Andreas",
"verified_at": "2023-09-12T06:50:27.000000Z",
"created_at": "2023-09-10T11:41:02.000000Z"
},
{
"email": "rosalie@example.com",
"name": "Rosalie",
"verified_at": null,
"created_at": "2023-09-12T07:37:34.000000Z"
}
]
}
Add subscriber
Method: POST
To add a subscriber, send a POST
request to https://releasesapp.com/api/subscribers
. The supplied data must be valid JSON in an array format, even if you only add one subscriber.
Be sure to send these headers:
Accept: application/json
Content-Type: application/json
{
"subscribers": [
{
"name": "Alf",
"email": "alf@example.com",
"verified_at": "2023-09-14"
},
{
"name": "Willie",
"email": "willie@example.com",
"verified_at": "2023-09-14"
}
]
}
Response
{
"success": true,
"version": "1.0",
"data": [
{
"email": "alf@example.com",
"name": "Alf",
"verified_at": "2023-09-14T00:00:00.000000Z",
"created_at": "2023-09-14T14:17:39.000000Z"
},
{
"email": "willie@example.com",
"name": "Willie",
"verified_at": "2023-09-14T00:00:00.000000Z",
"created_at": "2023-09-14T14:17:39.000000Z"
}
]
}
verified_at
must be formatted like YYYY-MM-DD, eg. 2023-09-14. If you do not supply a date, the current date is used when importing data.Delete subscriber
DELETE
DELETE
request to https://releasesapp.com/api/subscribers
. The supplied data must be valid JSON in an array format, even if you only add one subscriber.Accept: application/json
Content-Type: application/json
{
"subscribers": [
{
"email": "alf@example.com"
},
{
"email": "willie@example.com"
}
]
}
Response
{
"success": true,
"version": "1.0",
"data": [
"alf@example.com",
"willie@example.com"
]
}