Skip to content

Get one published post

GET
/api/v1/content/posts/{slug}
curl --request GET \
--url 'https://example.com/api/v1/content/posts/example?locale=th'
slug
required
string
>= 1 characters <= 120 characters /^[a-z0-9]+(?:-[a-z0-9]+)*$/

Published content slug.

locale
required
string
Allowed values: th en

Content locale.

A published post.

Media typeapplication/json
object
data
required
object
contentHtml
required
string
<= 1000000 characters
contentJson
required

Native Tiptap document retained for re-editing.

object
type
required
string
Allowed value: doc
content
Array<object>

A Tiptap node. Runtime input is limited to 100 nested levels.

object
type
required
string
>= 1 characters
attrs
object
key
additional properties
any
content
Array<object> recursive
marks
Array<object>

A Tiptap text mark.

object
type
required
string
>= 1 characters
attrs
object
key
additional properties
any
text
string
createdAt
required
string format: date-time
/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$/
id
required
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
locale
required
string
Allowed values: th en
media
required
Array<object>
object
altText
required
Any of:
string
<= 300 characters
height
required
integer
> 0 <= 9007199254740991
id
required
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
mimeType
required
string
Allowed values: image/avif image/gif image/jpeg image/png image/webp
sizeBytes
required
integer
> 0 <= 9007199254740991
url
required
string
>= 1 characters <= 2048 characters
width
required
integer
> 0 <= 9007199254740991
publishedAt
required
Any of:
string format: date-time
/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$/
seo
required
object
description
required
Any of:
string
<= 320 characters
title
required
Any of:
string
<= 70 characters
slug
required
string
>= 1 characters <= 160 characters /^(?:[a-z0-9]|\p{Script=Thai})+(?:-(?:[a-z0-9]|\p{Script=Thai})+)*$/
status
required
string
Allowed values: draft published
title
required
string
>= 1 characters <= 200 characters
translationGroupId
required
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
translations
required
Array<object>
<= 2 items
object
href
required
string
>= 1 characters <= 2048 characters
locale
required
string
Allowed values: th en
updatedAt
required
string format: date-time
/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$/
categories
required
Array<object>
<= 20 items
object
id
required
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
name
required
string
>= 1 characters <= 80 characters
coverImage
required
Any of:
object
altText
required
Any of:
string
<= 300 characters
height
required
integer
> 0 <= 9007199254740991
id
required
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
mimeType
required
string
Allowed values: image/avif image/gif image/jpeg image/png image/webp
sizeBytes
required
integer
> 0 <= 9007199254740991
url
required
string
>= 1 characters <= 2048 characters
width
required
integer
> 0 <= 9007199254740991
Example
{
"data": {
"contentJson": {
"type": "doc"
},
"locale": "th",
"media": [
{
"mimeType": "image/avif"
}
],
"status": "draft",
"translations": [
{
"locale": "th"
}
],
"coverImage": {
"mimeType": "image/avif"
}
}
}

The cached representation is still current.

The request parameters are invalid.

Media typeapplication/problem+json
object
detail
required
string
>= 1 characters
instance
required
string
>= 1 characters <= 2048 characters
maintenance
object
backAt
required
Any of:
string format: date-time
/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$/
heading
required
string
>= 1 characters
locale
required
string
Allowed values: th en
message
required
string
>= 1 characters
requestId
required
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
status
required
integer
>= 400 <= 599
title
required
string
>= 1 characters
type
required
string
>= 1 characters <= 2048 characters
Example
{
"maintenance": {
"locale": "th"
}
}

The published resource does not exist.

Media typeapplication/problem+json
object
detail
required
string
>= 1 characters
instance
required
string
>= 1 characters <= 2048 characters
maintenance
object
backAt
required
Any of:
string format: date-time
/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$/
heading
required
string
>= 1 characters
locale
required
string
Allowed values: th en
message
required
string
>= 1 characters
requestId
required
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
status
required
integer
>= 400 <= 599
title
required
string
>= 1 characters
type
required
string
>= 1 characters <= 2048 characters
Example
{
"maintenance": {
"locale": "th"
}
}

The request could not be completed.

Media typeapplication/problem+json
object
detail
required
string
>= 1 characters
instance
required
string
>= 1 characters <= 2048 characters
maintenance
object
backAt
required
Any of:
string format: date-time
/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$/
heading
required
string
>= 1 characters
locale
required
string
Allowed values: th en
message
required
string
>= 1 characters
requestId
required
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
status
required
integer
>= 400 <= 599
title
required
string
>= 1 characters
type
required
string
>= 1 characters <= 2048 characters
Example
{
"maintenance": {
"locale": "th"
}
}

The content service is not ready, or the site is closed for maintenance; then maintenance carries what the owner wrote for visitors.

Media typeapplication/problem+json
object
detail
required
string
>= 1 characters
instance
required
string
>= 1 characters <= 2048 characters
maintenance
object
backAt
required
Any of:
string format: date-time
/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$/
heading
required
string
>= 1 characters
locale
required
string
Allowed values: th en
message
required
string
>= 1 characters
requestId
required
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
status
required
integer
>= 400 <= 599
title
required
string
>= 1 characters
type
required
string
>= 1 characters <= 2048 characters
Example
{
"maintenance": {
"locale": "th"
}
}