Knowledge
Check organizational knowledge setup
Report what feeds the authenticated user's organizational knowledge for a scope: the Granola meeting-note connection and its sync, connected mailboxes, and indexed coverage, followed by ordered next steps. A step only the user can take, such as pasting a Granola API key or approving mailbox access, comes back with an absolute link that opens exactly that form; never ask the user for the credential itself. A step an agent can take names the tool that proposes it. Omit organizationId and eventId for the user's own workspace, or use organizationId "platform" for the platform team.
Method
GET
Path
/v1/knowledge/setup
Required scope
capabilities:readRequest
curl -X GET "https://api.endurancehq.app/v1/knowledge/setup" \
-H "Authorization: Bearer $EHQ_API_KEY"Query schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"organizationId": {
"description": "Report on one organization. Use \"platform\" for the Endurance HQ platform team (platform admins only). Omit both fields for your own workspace, where your connected contacts, meetings and email come together.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"eventId": {
"description": "Report on one event instead of an organization.",
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"additionalProperties": false
}Response
Success status: 200
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"scope": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"personal",
"platform",
"organization",
"event"
]
},
"organizationId": {
"type": [
"string",
"null"
]
},
"eventId": {
"type": [
"string",
"null"
]
},
"label": {
"type": "string"
}
},
"required": [
"kind",
"organizationId",
"eventId",
"label"
],
"additionalProperties": false
},
"granola": {
"type": "object",
"properties": {
"connected": {
"type": "boolean"
},
"connectionStatus": {
"type": [
"string",
"null"
]
},
"syncEnabled": {
"type": "boolean"
},
"destination": {
"anyOf": [
{
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "personal"
}
},
"required": [
"kind"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "platform"
}
},
"required": [
"kind"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "organization"
},
"organizationId": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"kind",
"organizationId"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "event"
},
"eventId": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"kind",
"eventId"
],
"additionalProperties": false
}
]
},
{
"type": "null"
}
]
},
"syncStatus": {
"type": [
"string",
"null"
]
},
"lastSyncedAt": {
"type": [
"string",
"null"
]
},
"connectUrl": {
"type": "string"
}
},
"required": [
"connected",
"connectionStatus",
"syncEnabled",
"destination",
"syncStatus",
"lastSyncedAt",
"connectUrl"
],
"additionalProperties": false
},
"mailboxes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"provider": {
"type": "string"
},
"accountEmail": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string"
},
"lastSyncedAt": {
"type": [
"string",
"null"
]
},
"lastSyncError": {
"type": [
"string",
"null"
]
}
},
"required": [
"id",
"provider",
"accountEmail",
"status",
"lastSyncedAt",
"lastSyncError"
],
"additionalProperties": false
}
},
"mailboxConnectUrls": {
"type": "object",
"properties": {
"gmail": {
"type": [
"string",
"null"
]
},
"icloud": {
"type": [
"string",
"null"
]
}
},
"required": [
"gmail",
"icloud"
],
"additionalProperties": false
},
"health": {
"type": "object",
"properties": {
"state": {
"type": "string"
},
"indexed": {
"type": "number"
},
"sources": {
"type": "array",
"items": {
"type": "object",
"properties": {
"sourceType": {
"type": "string"
},
"label": {
"type": "string"
},
"indexed": {
"type": "number"
},
"lastIndexedAt": {
"type": [
"string",
"null"
]
}
},
"required": [
"sourceType",
"label",
"indexed",
"lastIndexedAt"
],
"additionalProperties": false
}
},
"queue": {
"type": "object",
"properties": {
"pending": {
"type": "number"
},
"failed": {
"type": "number"
}
},
"required": [
"pending",
"failed"
],
"additionalProperties": false
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"state",
"indexed",
"sources",
"queue",
"warnings"
],
"additionalProperties": false
},
"nextSteps": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"enum": [
"granola_connect",
"granola_sync",
"mailbox_connect",
"backfill",
"processing"
]
},
"status": {
"type": "string",
"enum": [
"done",
"needs_you",
"agent_can_do",
"waiting",
"attention"
]
},
"title": {
"type": "string"
},
"detail": {
"type": [
"string",
"null"
]
},
"url": {
"type": [
"string",
"null"
]
},
"tool": {
"type": [
"string",
"null"
]
}
},
"required": [
"id",
"status",
"title",
"detail",
"url",
"tool"
],
"additionalProperties": false
}
}
},
"required": [
"scope",
"granola",
"mailboxes",
"mailboxConnectUrls",
"health",
"nextSteps"
],
"additionalProperties": false
}
},
"required": [
"data"
],
"additionalProperties": false
}Other surfaces
MCP tool: ehq_knowledge_setup_status