Admin · API Documentation
Continuity API
The provider-neutral AiM Continuity API lets any approved AI assistant read organizational records and submit recommendations. External AI can never delete records, approve its own work, or change configuration.
Base API URL
https://your-app.example.com
Authentication
Bearer token (server-side secret).
Authorization: Bearer ••••••••••••••••The actual API key is stored only in the secure server secrets vault and is never exposed in frontend code or on this page. OAuth support is architected for future per-customer connections.
Endpoints
| Method | Path | Description |
|---|---|---|
| GET | /api/health | Service health check (public). |
| POST | /api/continuity/intake | Primary universal intake endpoint. |
| POST | /api/continuity/test | Create a test PENDING_REVIEW recommendation. |
| GET | /api/projects | List all projects. |
| GET | /api/projects/:id | Get a single project. |
| POST | /api/projects | Submit a project (creates pending recommendation). |
| PATCH | /api/projects/:id | Update a project (creates pending recommendation). |
| GET | /api/conversations | List all conversations. |
| POST | /api/conversations | Submit a conversation. |
| PATCH | /api/conversations/:id | Update a conversation. |
| GET | /api/tasks | List all tasks. |
| POST | /api/tasks | Submit a task. |
| PATCH | /api/tasks/:id | Update a task. |
| GET | /api/decisions | List all decisions. |
| POST | /api/decisions | Submit a decision. |
| PATCH | /api/decisions/:id | Update a decision. |
| POST | /api/ideas | Submit an idea. |
| POST | /api/assets | Submit an asset. |
| GET | /api/workstreams | List workstreams. |
| GET | /api/recommendations/pending | List pending recommendations. |
| GET | /api/search?q= | Search across all records. |
Required Headers
AuthorizationBearer token (required for all private endpoints)Content-Typeapplication/json (for POST/PATCH)
Example Request
Primary universal intake endpoint.
curl -X POST https://your-app.example.com/api/continuity/intake \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "chatgpt",
"source": "ai_assistant",
"integration_id": "int_chatgpt_01",
"external_conversation_id": "conv_abc123",
"conversation": {
"title": "Pricing model options for the new tier",
"recommended_title": "Pricing model options",
"summary": "Discussed single vs three-tier pricing.",
"date": "2026-09-10",
"status": "PROPOSED"
},
"organization": {
"primary_project": "Website Redesign",
"workstream": "Pricing",
"related_projects": ["Brand Strategy"],
"brands": ["Acme"],
"websites": ["acme.com"]
},
"decisions": [
{ "title": "Three-tier model proposed", "status": "PROPOSED" }
],
"tasks": [
{ "title": "Cross-reference pricing conversation", "priority": "high", "status": "OPEN" }
],
"ideas": [
{ "title": "Usage-based add-on tier" }
],
"assets": [
{ "name": "Pricing deck (v3)", "type": "Document", "url": "https://acme.com/deck.pdf" }
],
"recommendations": [
{ "action": "ASSIGN_TO_PROJECT", "reason": "New conversation with detected decisions.", "confidence": 0.82 }
]
}'Example Response
{
"ok": true,
"status": "PENDING_REVIEW",
"recommendation_id": "rec_a1b2c3d4",
"duplicate_detected": false,
"warnings": []
}Continuity Intake Schema
Not every field is required. Validate before storing.
{
"provider": "chatgpt | claude | gemini | microsoft_copilot | custom",
"source": "string (optional)",
"integration_id": "string (optional)",
"external_conversation_id": "string (optional)",
"conversation": {
"title": "string",
"recommended_title": "string (optional)",
"summary": "string (optional)",
"date": "string (optional)",
"status": "string (optional)"
},
"organization": {
"primary_project": "string (optional)",
"workstream": "string (optional)",
"related_projects": ["string"],
"brands": ["string"],
"websites": ["string"]
},
"decisions": [{ "title": "string", "description": "string", "status": "string" }],
"tasks": [{ "title": "string", "description": "string", "priority": "string", "status": "string" }],
"ideas": [{ "title": "string", "description": "string" }],
"assets": [{ "name": "string", "type": "string", "url": "string" }],
"recommendations": [{ "action": "string", "reason": "string", "confidence": "number 0-1" }],
"relationships": [{ "from_type": "string", "from_id": "string", "to_type": "string", "to_id": "string" }]
}HTTP Error Codes
Safety Rule
External AI integrations may read organizational records, submit recommendations, and create pending records. They may not delete projects, conversations, decisions, or assets, change authentication, modify system configuration, or automatically approve their own recommendations. Permanent organizational changes require human approval.