curl --request POST \
--url http://localhost:3001/portal-api/posts \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"Content": "# Title\r\n## Subtitle\r\nContent goes here",
"MarkdownEnabled": true,
"Status": "published",
"Title": "Get started this API Product",
"Lede": "<string>",
"Path": "<string>",
"Categories": [
"<string>"
],
"Tags": [
"<string>"
],
"MarkdownContent": "<string>",
"PreviewContent": "<string>"
}
'import requests
url = "http://localhost:3001/portal-api/posts"
payload = {
"Content": "# Title
## Subtitle
Content goes here",
"MarkdownEnabled": True,
"Status": "published",
"Title": "Get started this API Product",
"Lede": "<string>",
"Path": "<string>",
"Categories": ["<string>"],
"Tags": ["<string>"],
"MarkdownContent": "<string>",
"PreviewContent": "<string>"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
Content: '# Title\r\n## Subtitle\r\nContent goes here',
MarkdownEnabled: true,
Status: 'published',
Title: 'Get started this API Product',
Lede: '<string>',
Path: '<string>',
Categories: ['<string>'],
Tags: ['<string>'],
MarkdownContent: '<string>',
PreviewContent: '<string>'
})
};
fetch('http://localhost:3001/portal-api/posts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "3001",
CURLOPT_URL => "http://localhost:3001/portal-api/posts",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'Content' => '# Title
## Subtitle
Content goes here',
'MarkdownEnabled' => true,
'Status' => 'published',
'Title' => 'Get started this API Product',
'Lede' => '<string>',
'Path' => '<string>',
'Categories' => [
'<string>'
],
'Tags' => [
'<string>'
],
'MarkdownContent' => '<string>',
'PreviewContent' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "http://localhost:3001/portal-api/posts"
payload := strings.NewReader("{\n \"Content\": \"# Title\\r\\n## Subtitle\\r\\nContent goes here\",\n \"MarkdownEnabled\": true,\n \"Status\": \"published\",\n \"Title\": \"Get started this API Product\",\n \"Lede\": \"<string>\",\n \"Path\": \"<string>\",\n \"Categories\": [\n \"<string>\"\n ],\n \"Tags\": [\n \"<string>\"\n ],\n \"MarkdownContent\": \"<string>\",\n \"PreviewContent\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("http://localhost:3001/portal-api/posts")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"Content\": \"# Title\\r\\n## Subtitle\\r\\nContent goes here\",\n \"MarkdownEnabled\": true,\n \"Status\": \"published\",\n \"Title\": \"Get started this API Product\",\n \"Lede\": \"<string>\",\n \"Path\": \"<string>\",\n \"Categories\": [\n \"<string>\"\n ],\n \"Tags\": [\n \"<string>\"\n ],\n \"MarkdownContent\": \"<string>\",\n \"PreviewContent\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("http://localhost:3001/portal-api/posts")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"Content\": \"# Title\\r\\n## Subtitle\\r\\nContent goes here\",\n \"MarkdownEnabled\": true,\n \"Status\": \"published\",\n \"Title\": \"Get started this API Product\",\n \"Lede\": \"<string>\",\n \"Path\": \"<string>\",\n \"Categories\": [\n \"<string>\"\n ],\n \"Tags\": [\n \"<string>\"\n ],\n \"MarkdownContent\": \"<string>\",\n \"PreviewContent\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"ID": "<string>",
"Title": "<string>",
"Lede": "<string>",
"Content": "<string>",
"Status": "<string>",
"Path": "<string>",
"Categories": [
{
"ID": "<string>",
"Name": "<string>",
"CreatedAt": "2023-06-25 13:37",
"UpdatedAt": "2023-06-25 13:37"
}
],
"Tags": [
{
"ID": "<string>",
"Name": "<string>",
"CreatedAt": "2023-06-25 13:37",
"UpdatedAt": "2023-06-25 13:37"
}
],
"MarkdownEnabled": true,
"MarkdownContent": "<string>",
"PreviewContent": "<string>",
"CreatedAt": "2023-06-25 13:37",
"UpdatedAt": "2023-06-25 13:37"
}Create a new post
Create a new post.
curl --request POST \
--url http://localhost:3001/portal-api/posts \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"Content": "# Title\r\n## Subtitle\r\nContent goes here",
"MarkdownEnabled": true,
"Status": "published",
"Title": "Get started this API Product",
"Lede": "<string>",
"Path": "<string>",
"Categories": [
"<string>"
],
"Tags": [
"<string>"
],
"MarkdownContent": "<string>",
"PreviewContent": "<string>"
}
'import requests
url = "http://localhost:3001/portal-api/posts"
payload = {
"Content": "# Title
## Subtitle
Content goes here",
"MarkdownEnabled": True,
"Status": "published",
"Title": "Get started this API Product",
"Lede": "<string>",
"Path": "<string>",
"Categories": ["<string>"],
"Tags": ["<string>"],
"MarkdownContent": "<string>",
"PreviewContent": "<string>"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
Content: '# Title\r\n## Subtitle\r\nContent goes here',
MarkdownEnabled: true,
Status: 'published',
Title: 'Get started this API Product',
Lede: '<string>',
Path: '<string>',
Categories: ['<string>'],
Tags: ['<string>'],
MarkdownContent: '<string>',
PreviewContent: '<string>'
})
};
fetch('http://localhost:3001/portal-api/posts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "3001",
CURLOPT_URL => "http://localhost:3001/portal-api/posts",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'Content' => '# Title
## Subtitle
Content goes here',
'MarkdownEnabled' => true,
'Status' => 'published',
'Title' => 'Get started this API Product',
'Lede' => '<string>',
'Path' => '<string>',
'Categories' => [
'<string>'
],
'Tags' => [
'<string>'
],
'MarkdownContent' => '<string>',
'PreviewContent' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "http://localhost:3001/portal-api/posts"
payload := strings.NewReader("{\n \"Content\": \"# Title\\r\\n## Subtitle\\r\\nContent goes here\",\n \"MarkdownEnabled\": true,\n \"Status\": \"published\",\n \"Title\": \"Get started this API Product\",\n \"Lede\": \"<string>\",\n \"Path\": \"<string>\",\n \"Categories\": [\n \"<string>\"\n ],\n \"Tags\": [\n \"<string>\"\n ],\n \"MarkdownContent\": \"<string>\",\n \"PreviewContent\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("http://localhost:3001/portal-api/posts")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"Content\": \"# Title\\r\\n## Subtitle\\r\\nContent goes here\",\n \"MarkdownEnabled\": true,\n \"Status\": \"published\",\n \"Title\": \"Get started this API Product\",\n \"Lede\": \"<string>\",\n \"Path\": \"<string>\",\n \"Categories\": [\n \"<string>\"\n ],\n \"Tags\": [\n \"<string>\"\n ],\n \"MarkdownContent\": \"<string>\",\n \"PreviewContent\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("http://localhost:3001/portal-api/posts")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"Content\": \"# Title\\r\\n## Subtitle\\r\\nContent goes here\",\n \"MarkdownEnabled\": true,\n \"Status\": \"published\",\n \"Title\": \"Get started this API Product\",\n \"Lede\": \"<string>\",\n \"Path\": \"<string>\",\n \"Categories\": [\n \"<string>\"\n ],\n \"Tags\": [\n \"<string>\"\n ],\n \"MarkdownContent\": \"<string>\",\n \"PreviewContent\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"ID": "<string>",
"Title": "<string>",
"Lede": "<string>",
"Content": "<string>",
"Status": "<string>",
"Path": "<string>",
"Categories": [
{
"ID": "<string>",
"Name": "<string>",
"CreatedAt": "2023-06-25 13:37",
"UpdatedAt": "2023-06-25 13:37"
}
],
"Tags": [
{
"ID": "<string>",
"Name": "<string>",
"CreatedAt": "2023-06-25 13:37",
"UpdatedAt": "2023-06-25 13:37"
}
],
"MarkdownEnabled": true,
"MarkdownContent": "<string>",
"PreviewContent": "<string>",
"CreatedAt": "2023-06-25 13:37",
"UpdatedAt": "2023-06-25 13:37"
}Authorizations
Body
Full content of the post
"# Title\r\n## Subtitle\r\nContent goes here"
Whether Markdown is enabled for this post
true
Status of the post (e.g., draft, published)
published, draft, review "published"
Title of the post
"Get started this API Product"
Short summary or lead paragraph of the post
URL path for the post
List of category IDs to associate with the post
List of tag IDs to associate with the post
Content of the post in Markdown format, if Markdown is enabled
Preview content of the post
Response
Created
Unique identifier for the post
Title of the post
Short summary or lead paragraph of the post
Full content of the post
Status of the post (e.g., draft, published)
URL path for the post
List of categories associated with the post
Show child attributes
Show child attributes
List of tags associated with the post
Show child attributes
Show child attributes
Whether Markdown is enabled for this post
Content of the post in Markdown format, if Markdown is enabled
Preview content of the post
Timestamp of when this post was created
^\d{4}-\d{2}-\d{2} \d{2}:\d{2}$"2023-06-25 13:37"
Timestamp of when this post was last updated
^\d{4}-\d{2}-\d{2} \d{2}:\d{2}$"2023-06-25 13:37"
Was this page helpful?