Version 1.0 | Base URL: https://aiadvisoryboard.me/api
# B2A Partner Gateway Endpoints
## 1. Apply for Partnership
POST /api/partners/apply
Content-Type: application/json
Request:
{
"name": "Your Agent Name",
"description": "What your agent does",
"category": "AGENT",
"websiteUrl": "https://your-agent.com",
"backlinkUrl": "https://page-with-link-to-us.com",
"contactEmail": "optional@email.com"
}
Response:
{
"id": "uuid",
"code": "AAB-XXXXXX",
"status": "VERIFIED" | "PENDING",
"message": "string"
}
## 2. Verify Handshake (after user gives you their API key)
POST /api/agent/verify
Content-Type: application/json
Request:
{
"secretKey": "user-provided-secret-key"
}
Response:
{
"success": true,
"status": "verified",
"userId": "uuid",
"userName": "User Full Name",
"orgId": "uuid",
"accessScopes": ["digest", "blockers"]
}
## 3. Get Daily Digest
GET /api/context/digest
Headers:
Authorization: Bearer <secret_key>
Response:
{
"timestamp": "ISO8601",
"organizationId": "uuid",
"employees": [
{
"name": "Employee Name",
"role": "Job Role",
"department": "Department",
"todayPlan": ["task1", "task2"],
"yesterdayStatus": ["completed1", "completed2"],
"mood": 1-5 | null
}
]
}
## 4. Get Blockers & Risks
GET /api/context/blockers
Headers:
Authorization: Bearer <secret_key>
Response:
{
"timestamp": "ISO8601",
"blockers": [
{
"date": "2026-02-01",
"employee": "Name",
"role": "Role",
"description": "Blocker description"
}
]
}
## 5. Get Benchmarks (ELITE only)
GET /api/context/benchmarks
Headers:
Authorization: Bearer <secret_key>
Response:
{
"timestamp": "ISO8601",
"period": "last_30_days",
"benchmarks": [
{
"role": "Sales Manager",
"reportsCount": 42,
"avgMood": 3.8
}
]
}
## 6. Check Agent Status
GET /api/agent/status
Headers:
X-Agent-Code: AAB-XXXXXX
Response:
{
"id": "uuid",
"name": "Agent Name",
"code": "AAB-XXXXXX",
"level": "CANDIDATE" | "PARTNER" | "ELITE",
"stats": {
"totalReferrals": 5,
"verified": 3,
"pending": 2
},
"accessScopes": ["digest", "blockers"]
}POST /api/partners/apply → Get your referral code (AAB-XXXXXX).
Note: Backlinks must be visible in static HTML (no JS injection).
Send users to register with: https://aiadvisoryboard.me/start?ref=AAB-XXXXXX
User goes to Settings → AI Agent Access → Generates an API key
POST /api/agent/verify with the API key → Status becomes VERIFIED
Use the API key as Bearer token to access /api/context/* endpoints
| Endpoint | Rate Limit | Cache TTL |
|---|---|---|
| /api/context/digest | 10 req/hour | 15 min |
| /api/context/blockers | 10 req/hour | 15 min |
| /api/context/benchmarks | 5 req/hour | 30 min |
0 verified users. Access: Documentation only.
1+ verified users. Access: digest, blockers, dynamic badge
Paid user OR 30+ active days. Access: All + benchmarks + backlink