List Community Posts
curl --request GET \
--url https://schoolmaker.co/api/v1/community/posts \
--header 'Authorization: Bearer <token>'import requests
url = "https://schoolmaker.co/api/v1/community/posts"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://schoolmaker.co/api/v1/community/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_URL => "https://schoolmaker.co/api/v1/community/posts",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://schoolmaker.co/api/v1/community/posts"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://schoolmaker.co/api/v1/community/posts")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://schoolmaker.co/api/v1/community/posts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"posts": [
{
"id": "22222222-2222-4222-8222-222222222222",
"title": "Welcome",
"category_id": "33333333-3333-4333-8333-333333333333",
"author": {
"id": "11111111-1111-4111-8111-111111111111",
"type": "User",
"name": "Jamie Example",
"email": "jamie@example.com",
"first_name": "Jamie",
"last_name": "Example",
"profile_picture_url": null,
"last_seen_at": null,
"created_at": "2026-10-02T00:00:00Z",
"updated_at": "2026-10-02T00:00:00Z"
},
"is_closed": false,
"selected_solution_comment_id": null,
"comment_count": 1,
"last_activity_at": "2026-10-02T00:10:00Z",
"body": "<p><strong>Hello everyone</strong></p>",
"url": "/community/22222222-2222-4222-8222-222222222222"
}
],
"pagination": {
"current_page": 1,
"total_pages": 1,
"total_count": 1
}
}{
"error": "Access denied"
}{
"error": "You do not have permission to perform this action"
}{
"error": "Record not found"
}{
"error": "Invalid arguments"
}Community
List Community Posts
Retrieves community posts, ordered by latest activity. Category, solved status and search filters can be combined.
GET
/
community
/
posts
List Community Posts
curl --request GET \
--url https://schoolmaker.co/api/v1/community/posts \
--header 'Authorization: Bearer <token>'import requests
url = "https://schoolmaker.co/api/v1/community/posts"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://schoolmaker.co/api/v1/community/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_URL => "https://schoolmaker.co/api/v1/community/posts",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://schoolmaker.co/api/v1/community/posts"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://schoolmaker.co/api/v1/community/posts")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://schoolmaker.co/api/v1/community/posts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"posts": [
{
"id": "22222222-2222-4222-8222-222222222222",
"title": "Welcome",
"category_id": "33333333-3333-4333-8333-333333333333",
"author": {
"id": "11111111-1111-4111-8111-111111111111",
"type": "User",
"name": "Jamie Example",
"email": "jamie@example.com",
"first_name": "Jamie",
"last_name": "Example",
"profile_picture_url": null,
"last_seen_at": null,
"created_at": "2026-10-02T00:00:00Z",
"updated_at": "2026-10-02T00:00:00Z"
},
"is_closed": false,
"selected_solution_comment_id": null,
"comment_count": 1,
"last_activity_at": "2026-10-02T00:10:00Z",
"body": "<p><strong>Hello everyone</strong></p>",
"url": "/community/22222222-2222-4222-8222-222222222222"
}
],
"pagination": {
"current_page": 1,
"total_pages": 1,
"total_count": 1
}
}{
"error": "Access denied"
}{
"error": "You do not have permission to perform this action"
}{
"error": "Record not found"
}{
"error": "Invalid arguments"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Page number.
Required range:
1 <= x <= 10000Number of results per page. Maximum 30.
Required range:
1 <= x <= 30Filter by a published category in your school.
Required string length:
1 - 255true for solved, false for unsolved. Omit or send an empty query value for both. Other values are rejected.
Search post titles, post bodies and comment bodies, ignoring case. Omit or leave empty for all posts.
Maximum string length:
10000Was this page helpful?