Administration

Endpoints for project and API key management. They require the Admin Token.

🔒 All these endpoints require the X-Admin-Token header.

Projects

List projects

GET/api/v1/projects
bash
curl -s "$SOLUCORTEX_URL/api/v1/projects" \
  -H "X-Admin-Token: $SOLUCORTEX_ADMIN_TOKEN" \
  -H "Accept: application/json"

Create project

POST/api/v1/projects
bash
curl -s -X POST "$SOLUCORTEX_URL/api/v1/projects" \
  -H "X-Admin-Token: $SOLUCORTEX_ADMIN_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "name": "My Project",
    "code": "my-project",
    "description": "Optional project description",
    "repository_url": "https://github.com/org/repo",
    "notion_url": "https://notion.so/workspace/Page-abc123"
  }'

Project fields

FieldRequiredDescription
nameReadable name
codeUnique identifier. Lowercase, no spaces.
descriptionProject description
repository_urlRepository URL (GitHub, GitLab, Gitea)
git_tokenAccess token for private repos
notion_urlMain Notion page URL
notion_tokenNotion integration token (ntn_...)
extra_urlAdditional URL (docs, landing, etc.)
💡 If repository_url or notion_url are provided, SoluCortex automatically imports memories in the background when creating the project.

View project

GET/api/v1/projects/{id}
bash
curl -s "$SOLUCORTEX_URL/api/v1/projects/$PROJECT_ID" \
  -H "X-Admin-Token: $SOLUCORTEX_ADMIN_TOKEN" \
  -H "Accept: application/json"

API Keys

Generate API key

POST/api/v1/projects/{id}/api-keys
bash
curl -s -X POST "$SOLUCORTEX_URL/api/v1/projects/$PROJECT_ID/api-keys" \
  -H "X-Admin-Token: $SOLUCORTEX_ADMIN_TOKEN" \
  -H "Accept: application/json"

Response includes the key in plain text (only at this moment):

json
{
  "id": "uuid-of-the-key",
  "key": "scx_AbCdEf1234...",
  "created_at": "2026-05-21T00:00:00Z"
}

Revoke API key

DELETE/api/v1/projects/{id}/api-keys/{key_id}
bash
curl -s -X DELETE \
  "$SOLUCORTEX_URL/api/v1/projects/$PROJECT_ID/api-keys/$KEY_ID" \
  -H "X-Admin-Token: $SOLUCORTEX_ADMIN_TOKEN"