Returns all blog posts. The number of results is limited by the limit
parameter and additional results (if available)
will be available through the next
URL present in the Link
response header.
Permissions required: Permission to access the Confluence site ('Can use' global permission). Only blog posts that the user has permission to view will be returned.
read:page:confluence
Connect app scope required: READ
array<integer>
array<integer>
BlogPostSortOrder
array<string>
string
PrimaryBodyRepresentation
string
integer
Returned if the requested blog posts are returned.
string
1
2
3
4
5
6
7
8
9
10
11
12
// This sample uses Atlassian Forge
// https://developer.atlassian.com/platform/forge/
import api, { route } from "@forge/api";
const response = await api.asUser().requestConfluence(route`/wiki/api/v2/blogposts`, {
headers: {
'Accept': 'application/json'
}
});
console.log(`Response: ${response.status} ${response.statusText}`);
console.log(await response.json());
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{
"results": [
{
"id": "<string>",
"status": "current",
"title": "<string>",
"spaceId": "<string>",
"authorId": "<string>",
"createdAt": "<string>",
"version": {
"createdAt": "<string>",
"message": "<string>",
"number": 19,
"minorEdit": true,
"authorId": "<string>"
},
"body": {
"storage": {},
"atlas_doc_format": {}
},
"_links": {
"webui": "<string>",
"editui": "<string>",
"tinyui": "<string>"
}
}
],
"_links": {
"next": "<string>",
"base": "<string>"
}
}
Creates a new blog post in the space specified by the spaceId.
By default this will create the blog post as a non-draft, unless the status is specified as draft. If creating a non-draft, the title must not be empty.
Currently only supports the storage representation specified in the body.representation enums below
write:page:confluence
Connect app scope required: WRITE
boolean
string
Requiredstring
string
oneOf [BlogPostBodyWrite, BlogPostNestedBodyWrite]
string
Returned if the blog post was created successfully.
allOf [BlogPostSingle, object]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// This sample uses Atlassian Forge
// https://developer.atlassian.com/platform/forge/
import api, { route } from "@forge/api";
var bodyData = `{
"spaceId": "<string>",
"status": "current",
"title": "<string>",
"body": {
"representation": "storage",
"value": "<string>"
},
"createdAt": "<string>"
}`;
const response = await api.asUser().requestConfluence(route`/wiki/api/v2/blogposts`, {
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
body: bodyData
});
console.log(`Response: ${response.status} ${response.statusText}`);
console.log(await response.json());
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
{
"id": "<string>",
"status": "current",
"title": "<string>",
"spaceId": "<string>",
"authorId": "<string>",
"createdAt": "<string>",
"version": {
"createdAt": "<string>",
"message": "<string>",
"number": 19,
"minorEdit": true,
"authorId": "<string>"
},
"body": {
"storage": {},
"atlas_doc_format": {},
"view": {}
},
"labels": {
"results": [
{
"id": "<string>",
"name": "<string>",
"prefix": "<string>"
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"properties": {
"results": [
{
"id": "<string>",
"key": "<string>",
"version": {}
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"operations": {
"results": [
{
"operation": "<string>",
"targetType": "<string>"
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"likes": {
"results": [
{
"accountId": "<string>"
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"versions": {
"results": [
{
"createdAt": "<string>",
"message": "<string>",
"number": 19,
"minorEdit": true,
"authorId": "<string>"
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"isFavoritedByCurrentUser": true,
"_links": {
"base": "<string>"
}
}
Returns a specific blog post.
Permissions required: Permission to view the blog post and its corresponding space.
read:page:confluence
Connect app scope required: READ
integer
RequiredPrimaryBodyRepresentationSingle
boolean
array<string>
integer
boolean
boolean
boolean
boolean
boolean
boolean
Returned if the requested blog post is returned.
allOf [BlogPostSingle, object]
1
2
3
4
5
6
7
8
9
10
11
12
// This sample uses Atlassian Forge
// https://developer.atlassian.com/platform/forge/
import api, { route } from "@forge/api";
const response = await api.asUser().requestConfluence(route`/wiki/api/v2/blogposts/{id}`, {
headers: {
'Accept': 'application/json'
}
});
console.log(`Response: ${response.status} ${response.statusText}`);
console.log(await response.json());
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
{
"id": "<string>",
"status": "current",
"title": "<string>",
"spaceId": "<string>",
"authorId": "<string>",
"createdAt": "<string>",
"version": {
"createdAt": "<string>",
"message": "<string>",
"number": 19,
"minorEdit": true,
"authorId": "<string>"
},
"body": {
"storage": {},
"atlas_doc_format": {},
"view": {}
},
"labels": {
"results": [
{
"id": "<string>",
"name": "<string>",
"prefix": "<string>"
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"properties": {
"results": [
{
"id": "<string>",
"key": "<string>",
"version": {}
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"operations": {
"results": [
{
"operation": "<string>",
"targetType": "<string>"
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"likes": {
"results": [
{
"accountId": "<string>"
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"versions": {
"results": [
{
"createdAt": "<string>",
"message": "<string>",
"number": 19,
"minorEdit": true,
"authorId": "<string>"
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"isFavoritedByCurrentUser": true,
"_links": {
"base": "<string>"
}
}
Update a blog post by id.
Permissions required: Permission to view the blog post and its corresponding space. Permission to update blog posts in the space.
write:page:confluence
Connect app scope required: WRITE
integer
Requiredstring
Requiredstring
Requiredstring
Requiredstring
oneOf [BlogPostBodyWrite, BlogPostNestedBodyWrite]
Requiredobject
Requiredstring
Returned if the requested blog post is successfully updated.
allOf [BlogPostSingle, object]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// This sample uses Atlassian Forge
// https://developer.atlassian.com/platform/forge/
import api, { route } from "@forge/api";
var bodyData = `{
"id": "<string>",
"status": "current",
"title": "<string>",
"spaceId": "<string>",
"body": {
"representation": "storage",
"value": "<string>"
},
"version": {
"number": 254,
"message": "<string>"
},
"createdAt": "<string>"
}`;
const response = await api.asUser().requestConfluence(route`/wiki/api/v2/blogposts/{id}`, {
method: 'PUT',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
body: bodyData
});
console.log(`Response: ${response.status} ${response.statusText}`);
console.log(await response.json());
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
{
"id": "<string>",
"status": "current",
"title": "<string>",
"spaceId": "<string>",
"authorId": "<string>",
"createdAt": "<string>",
"version": {
"createdAt": "<string>",
"message": "<string>",
"number": 19,
"minorEdit": true,
"authorId": "<string>"
},
"body": {
"storage": {},
"atlas_doc_format": {},
"view": {}
},
"labels": {
"results": [
{
"id": "<string>",
"name": "<string>",
"prefix": "<string>"
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"properties": {
"results": [
{
"id": "<string>",
"key": "<string>",
"version": {}
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"operations": {
"results": [
{
"operation": "<string>",
"targetType": "<string>"
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"likes": {
"results": [
{
"accountId": "<string>"
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"versions": {
"results": [
{
"createdAt": "<string>",
"message": "<string>",
"number": 19,
"minorEdit": true,
"authorId": "<string>"
}
],
"meta": {
"hasMore": true,
"cursor": "<string>"
},
"_links": {
"self": "<string>"
}
},
"isFavoritedByCurrentUser": true,
"_links": {
"base": "<string>"
}
}
Delete a blog post by id.
By default this will delete blog posts that are non-drafts. To delete a blog post that is a draft, the endpoint must be called on a
draft with the following param draft=true
. Discarded drafts are not sent to the trash and are permanently deleted.
Deleting a blog post that is not a draft moves the blog post to the trash, where it can be restored later.
To permanently delete a blog post (or "purge" it), the endpoint must be called on a trashed blog post with the following param purge=true
.
Permissions required: Permission to view the blog post and its corresponding space. Permission to delete blog posts in the space. Permission to administer the space (if attempting to purge).
delete:page:confluence
Connect app scope required: DELETE
integer
Requiredboolean
boolean
Returned if the blog post was successfully deleted.
1
2
3
4
5
6
7
8
9
10
// This sample uses Atlassian Forge
// https://developer.atlassian.com/platform/forge/
import api, { route } from "@forge/api";
const response = await api.asUser().requestConfluence(route`/wiki/api/v2/blogposts/{id}`, {
method: 'DELETE'
});
console.log(`Response: ${response.status} ${response.statusText}`);
console.log(await response.text());
Returns the blogposts of specified label. The number of results is limited by the limit
parameter and additional results (if available)
will be available through the next
URL present in the Link
response header.
Permissions required: Permission to view the content of the page and its corresponding space.
read:page:confluence
Connect app scope required: READ
integer
Requiredarray<integer>
PrimaryBodyRepresentation
BlogPostSortOrder
string
integer
Returned if the requested blog posts for specified label were successfully fetched.
string
1
2
3
4
5
6
7
8
9
10
11
12
// This sample uses Atlassian Forge
// https://developer.atlassian.com/platform/forge/
import api, { route } from "@forge/api";
const response = await api.asUser().requestConfluence(route`/wiki/api/v2/labels/{id}/blogposts`, {
headers: {
'Accept': 'application/json'
}
});
console.log(`Response: ${response.status} ${response.statusText}`);
console.log(await response.json());
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{
"results": [
{
"id": "<string>",
"status": "current",
"title": "<string>",
"spaceId": "<string>",
"authorId": "<string>",
"createdAt": "<string>",
"version": {
"createdAt": "<string>",
"message": "<string>",
"number": 19,
"minorEdit": true,
"authorId": "<string>"
},
"body": {
"storage": {},
"atlas_doc_format": {}
},
"_links": {
"webui": "<string>",
"editui": "<string>",
"tinyui": "<string>"
}
}
],
"_links": {
"next": "<string>",
"base": "<string>"
}
}
Returns all blog posts in a space. The number of results is limited by the limit
parameter and additional results (if available)
will be available through the next
URL present in the Link
response header.
Permissions required: Permission to access the Confluence site ('Can use' global permission) and view the space. Only blog posts that the user has permission to view will be returned.
read:page:confluence
Connect app scope required: READ
integer
RequiredBlogPostSortOrder
array<string>
string
PrimaryBodyRepresentation
string
integer
Returned if the requested blog posts are returned.
string
1
2
3
4
5
6
7
8
9
10
11
12
// This sample uses Atlassian Forge
// https://developer.atlassian.com/platform/forge/
import api, { route } from "@forge/api";
const response = await api.asUser().requestConfluence(route`/wiki/api/v2/spaces/{id}/blogposts`, {
headers: {
'Accept': 'application/json'
}
});
console.log(`Response: ${response.status} ${response.statusText}`);
console.log(await response.json());
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{
"results": [
{
"id": "<string>",
"status": "current",
"title": "<string>",
"spaceId": "<string>",
"authorId": "<string>",
"createdAt": "<string>",
"version": {
"createdAt": "<string>",
"message": "<string>",
"number": 19,
"minorEdit": true,
"authorId": "<string>"
},
"body": {
"storage": {},
"atlas_doc_format": {}
},
"_links": {
"webui": "<string>",
"editui": "<string>",
"tinyui": "<string>"
}
}
],
"_links": {
"next": "<string>",
"base": "<string>"
}
}
Rate this page: