Mixedbread
EndpointsIntegrations

Connect Granola

POST/v1/integrations/granola/connect

Authorization

Authorizationstringrequired

Bearer token for API authentication. Format: `Bearer YOUR_API_KEY`

Request Body

api_keystringrequired

Granola API key

Constraints

•Minimum length: 1
store_namestring

Ingestion store name. A store that already exists is shared: every data source connected to it ingests into it, except another installation of the same account, which would ingest every item again. Without it, the account's default store, numbered past a store another installation of the account feeds. Rejected with `422` when the connect refreshes an existing installation and names a store other than its own.

new_storebooleandefault: false

Ingest into a store created for this connection: the connect fails with `409` when `store_name` names a store that already exists, and without `store_name` the default name is numbered past existing stores. Rejected with `422` when the connect refreshes an existing installation, which keeps its store.

sync_schedule_intervalenumdefault: ten_minutes

Initial periodic sync interval

Possible values

offten_minuteshourlydailyweekly
account_namestring

Name of the person the API key belongs to

Constraints

•Maximum length: 200
account_emailstring

Email of the person the API key belongs to

Constraints

•Maximum length: 320

Response Body

Errors

409 when store_name names a store another installation of the same API key already feeds, or when new_store is set and store_name names a store that already exists. 422 when the API key is rejected.

Request
cURL
POST/v1/integrations/granola/connect
curl -X POST https://api.mixedbread.com/v1/integrations/granola/connect \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -d '{
    "api_key": "grn_…",
    "account_name": "Olivia Chen",
    "account_email": "olivia@example.com",
    "store_name": "notes-olivia"
  }'
Response
JSON
{
  "data": {
    "installation_id": "2f1c9a8e-6b4d-4e3a-9c1f-7d8e5b6a4c21",
    "provider": "granola",
    "status": "active",
    "account": {
      "id": "9f2c7b1e4d8a6c3b5e7f0a1d2c4b6e8f",
      "name": "Olivia Chen",
      "email": "olivia@example.com",
      "workspace": null
    },
    "store_id": "5d3e7f9a-1b2c-4d6e-8f0a-9c8b7a6d5e4f",
    "store_name": "notes-olivia",
    "sync": {
      "failed_resource_count": 0,
      "last_error": null,
      "last_error_operation": null,
      "last_error_at": null
    }
  }
}