Real Life Talent Tree
API Reference

Trees

REST API reference for creating, reading, updating, and deleting talent trees

Endpoints for managing your talent trees. All endpoints require authentication. See Authentication for how to pass your API key.

Base URL: https://api.reallifetalenttree.com


List trees

GET /api/v1/trees

Returns all trees owned by the authenticated user.

Response:

{
  "data": {
    "data": [
      {
        "id": "uuid",
        "title": "My Skills",
        "slug": "my-skills",
        "isPublic": true,
        "publishedAt": "2025-01-15T10:00:00.000Z",
        "createdAt": "2025-01-10T08:00:00.000Z",
        "updatedAt": "2025-01-15T10:00:00.000Z",
        "theme": {},
        "paths": []
      }
    ]
  },
  "meta": { "requestId": "uuid" }
}

curl:

curl https://api.reallifetalenttree.com/api/v1/trees \
  -H "Authorization: Bearer YOUR_API_KEY"

Create a tree

POST /api/v1/trees
Content-Type: application/json

Request body:

{ "title": "My New Tree" }

Response: The created TalentTree object wrapped in { data, meta }.

curl:

curl -X POST https://api.reallifetalenttree.com/api/v1/trees \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title":"My New Tree"}'

Update a tree

PATCH /api/v1/trees/:id
Content-Type: application/json

Update the tree's title or theme. All fields are optional.

Request body:

{
  "title": "Updated Title",
  "theme": { "background": "#1a1a2e", "textColor": "#e0e0e0" }
}

curl:

curl -X PATCH https://api.reallifetalenttree.com/api/v1/trees/TREE_ID \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title":"Updated Title"}'

Delete a tree

DELETE /api/v1/trees/:id

Permanently deletes the tree and all its paths and talents.

curl:

curl -X DELETE https://api.reallifetalenttree.com/api/v1/trees/TREE_ID \
  -H "Authorization: Bearer YOUR_API_KEY"

Publish / unpublish a tree

POST /api/v1/trees/:id/publish

Toggles the tree between draft (private) and published (public). Returns the updated tree.

curl:

curl -X POST https://api.reallifetalenttree.com/api/v1/trees/TREE_ID/publish \
  -H "Authorization: Bearer YOUR_API_KEY"

Get a public tree (no auth)

GET /api/v1/public/:username/:slug

Fetch a published tree by username and slug. No authentication required.

curl:

curl https://api.reallifetalenttree.com/api/v1/public/your-username/your-tree-slug

On this page