List Public Posts
List a workspace's published posts, newest first, paginated. Unlisted posts are left out — fetch them by slug instead.
curl -X GET "https://app.nashra.ai/api/v1/tenants/example_string/posts?per_page=10&page=25&category=Essays" \
-H "Content-Type: application/json"
import requests
import json
url = "https://app.nashra.ai/api/v1/tenants/example_string/posts?per_page=10&page=25&category=Essays"
headers = {
"Content-Type": "application/json"
}
response = requests.get(url, headers=headers)
print(response.json())
const response = await fetch("https://app.nashra.ai/api/v1/tenants/example_string/posts?per_page=10&page=25&category=Essays", {
method: "GET",
headers: {
"Content-Type": "application/json"
}
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://app.nashra.ai/api/v1/tenants/example_string/posts?per_page=10&page=25&category=Essays", nil)
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://app.nashra.ai/api/v1/tenants/example_string/posts?per_page=10&page=25&category=Essays')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri)
request['Content-Type'] = 'application/json'
response = http.request(request)
puts response.body
{
"data": [
{
"id": 123,
"uuid": "123e4567-e89b-12d3-a456-426614174000",
"title": "example_string",
"subtitle": "example_string",
"slug": "example_string",
"category": {
"id": 123,
"name": "Essays",
"color": "#3B82F6",
"emoji": "✍️"
},
"visibility": "published",
"publish_date": "2024-12-25",
"created_at": "2024-12-25",
"main_image_url": "example_string",
"main_image_thumb_url": "example_string",
"reading_time": 42,
"content": "example_string",
"content_json": "null",
"subscribe_form_identifier": "example_string",
"og": {
"title": "example_string",
"site_name": "John Doe",
"description": "example_string",
"image": "example_string",
"type": "article",
"locale": "ar_SA",
"locale_alternate": "example_string"
}
}
],
"pagination": {
"current_page": 25,
"last_page": 25,
"per_page": 25,
"total": 42,
"from": 42,
"to": 42
}
}
{
"error": "Not Found",
"message": "The requested resource was not found",
"code": 404
}
GET
/tenants/{slug}/postsGET
Base URLstring
Target server for requests. Edit to use your own host.
path
slugstring
RequiredTenant's subdomain slug, or its verified custom domain
query
per_pageinteger
Number of results per page (max 50)
Max: 50
query
pageinteger
Page number
query
categorystring
Only posts in the category with this exact name
Request Preview
Response
Response will appear here after sending the request
Path Parameters
slugstring
RequiredTenant's subdomain slug, or its verified custom domain
Query Parameters
per_pageinteger
Number of results per page (max 50)
pageinteger
Page number
Responses
dataarray
paginationobject
Was this page helpful?