Rift Social
The API
Getting a token
Every member can make their own tokens under Settings โ Developer. A token is either read-only or read and write. It is shown once, when it is made.
Send it as a bearer token on every request:
curl -H "Authorization: Bearer YOUR_TOKEN" \
-H "Accept: application/json" \
https://riftdesigns.net/social/api/v1/me
Reads are limited to 120 requests a minute, writes to 60. Everything answers JSON, and errors
carry an HTTP status and a message.
Reading
| Endpoint | What it gives you |
|---|---|
| GET /api/v1/ | What this network is, and every endpoint |
| GET /api/v1/me | The account the token belongs to |
| GET /api/v1/feed | The timeline. ?tab=discover for everything public, ?per_page= up to 50 |
| GET /api/v1/posts/{id} | One post, with its media and poll |
| GET /api/v1/posts/{id}/comments | The comments on a post |
| GET /api/v1/users/{handle} | A profile |
| GET /api/v1/users/{handle}/posts | What they posted, if you are allowed to see it |
| GET /api/v1/notifications | Your notifications |
| GET /api/v1/conversations | Your conversations |
| GET /api/v1/conversations/{id}/messages | The messages in one |
| GET /api/v1/market | Listings. ?q=, ?category= |
| GET /api/v1/jobs | Open jobs |
| GET /api/v1/search | People, posts, listings and jobs. ?q= |
Writing
These need a token with write access.
| Endpoint | Body |
|---|---|
| POST /api/v1/posts | body, optional visibility (public, followers, private) and link |
| DELETE /api/v1/posts/{id} | โ |
| POST /api/v1/posts/{id}/react | type: like, love, haha, wow, sad, angry |
| POST /api/v1/posts/{id}/comments | body, optional parent_id |
| POST /api/v1/users/{handle}/follow | โ (follows, or unfollows if you already do) |
| POST /api/v1/conversations/{id}/messages | body |
An example
# publish a post
curl -X POST https://riftdesigns.net/social/api/v1/posts \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"body":"Hello from the API #rift","visibility":"public"}'
# react to one
curl -X POST https://riftdesigns.net/social/api/v1/posts/42/react \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"type":"love"}'
Shapes
A post comes back like this. Lists are paginated, with data and meta.
{
"data": {
"id": 42,
"type": "photo",
"body": "Hello from the API #rift",
"visibility": "public",
"user": {
"id": 7,
"name": "Ada",
"handle": "ada",
"avatar": null,
"verified": false
},
"media": [
{
"url": "https://riftdesigns.net/storage/so/posts/example.jpg",
"kind": "image",
"width": 1600,
"height": 1200
}
],
"counts": {
"reactions": 12,
"comments": 3,
"shares": 1,
"views": 208
},
"created_at": "2026-09-23T04:10:43+00:00",
"url": "https://riftdesigns.net/social/p/42"
}
}
Built with Rift Social.