The brainful API enables seamless integration between your applications and brainful's powerful content management system. Whether you're building automation tools or integrating with your favorite apps, our RESTFUL API provides a simple and secure way to interact with your content.
Token-based authentication with https encryption
Standard http methods with json responses
Built-in geolocation capabilities
Optimised for reliable performance
60 requests per minute per user
Visit your brainful options page to generate your api token.
Select from our example code in cURL, JavaScript, or Python to get started quickly.
Try out the interactive examples below to test your integration.
All API requests require your API token in the Authorization header. Get your token from the brainful options page. The api supports both token and bearer token formats.
Authorization: Token YOUR_API_TOKENAuthorization: Bearer YOUR_API_TOKENAll parameters are sent in the request body as JSON.
| Parameter | Type | Required | Description |
|---|---|---|---|
| string | string | Yes | Content to be added (1-5000 characters) |
| parent_luid | string | No | luid of the parent block (optional) |
| latitude | float | No | latitude (-90° to 90°) |
| longitude | float | No | longitude (-180° to 180°) |
| agent | string | No | Agent identifier (max 50 chars) |
| team_space | string | No | Team space slug to add the block to (only for organization members) |
{
"luid": "abc123",
"slug": "My New Block",
"type": "thought",
"pinned": false,
"entities": [],
"created_timestamp": "2024-01-01T00:00:00Z",
"last_edited": "2024-01-01T00:00:00Z",
"experience": 5,
"remaining_daily_quota": 97
}luidType: string
Unique identifier for the created content
slugType: string
URL-friendly version of the content
wordsType: integer
Number of words in the content
remaining_daily_quotaType: integer
Remaining content creation quota for today
All parameters are sent in the request body as JSON.
| Parameter | Type | Required | Description |
|---|---|---|---|
| identifier | string | Yes | Identifier of the block to append to (luid or slug) |
| string | string | Yes | Content to be appended (1-5000 characters) |
{
"details": "Text appended to block successfully.",
"luid": "abc123",
"slug": "my-example-block"
}luidType: string
Unique identifier for the created content
slugType: string
URL-friendly version of the content
wordsType: integer
Number of words in the content
remaining_daily_quotaType: integer
Remaining content creation quota for today
| Parameter | Type | Required | Description |
|---|---|---|---|
| luid | string | Yes | Unique identifier of the block to retrieve |
| Parameter | Type | Required | Description |
|---|---|---|---|
| latitude | float | No | latitude (-90° to 90°) |
| longitude | float | No | longitude (-180° to 180°) |
| agent | string | No | Agent identifier (max 50 chars) |
{
"creator": "johnnyappleseed",
"luid": "abc123",
"slug": "My New Block",
"type": "thought",
"html": "My New Block
",
"blocks": [],
"entities": [],
"flagged": false,
"pinned": false,
"archived": false,
"trashed": false,
"public": false,
"created_timestamp": "2025-01-28 18:01",
"last_edited": "2025-01-28 18:01",
"words": 3,
"bytes": 45,
"hits": 0
}creatorType: string
Username of the content creator
luidType: string
Unique identifier for the block
typeType: string
Content type (e.g., "thought")
htmlType: string
HTML content of the block
created_timestampType: string
Creation date and time
hitsType: integer
Number of views