Skip to content

Asana Sensor

What it ingests

Task activity from Asana — tasks and their comments — optionally scoped to a workspace or to specific projects. Asana Project maps onto Corveil's Project entity (the Jira project analog). Portfolios, Goals, and Time tracking are not first-class v1 entities.

This is REST poll ingest against https://app.asana.com/api/1.0. This is one sensor. Monday.com, ClickUp, and Trello are different products with different APIs and are not modes of this type.

Credential

References an asana_pat credential by id. The secret is an Asana personal access token. A service-account token is the same on the wire (Authorization: Bearer …). Asana is a single cloud API, so there is no site URL beside the token.

bash
curl -sS -X POST https://your-corveil-host/api/credentials \
  -H "Authorization: Bearer <admin>" -H "Content-Type: application/json" \
  -d '{"type":"asana_pat","name":"acme-asana-pat","secret":"1/…"}'

OAuth 2.0 / Asana Connect is out of scope in v1.

Config fields

KeyRequiredNotes
workspace_gidnoAsana workspace GID. Blank ingests every workspace the token can read.
project_gidsnoComma-separated Asana project GIDs, e.g. 111, 222. Blank ingests every non-archived project in the workspace(s). Workspaces larger than 2,000 projects are walked in slices across polls (the watermark does not advance until a full cycle wraps). Pin project_gids to skip discovery.

Provider-side setup

  1. Sign in as the Asana account that should own the token.
  2. Open Settings → Apps → Developer console and create a personal access token (Asana developer console).
  3. Make sure that account can view the projects you want to ingest.

Wire-up

POST /api/sensors

json
{
  "sensor_type": "asana",
  "name": "Acme Asana",
  "config": {
    "workspace_gid": "1234567890123456",
    "project_gids": "111, 222"
  },
  "credentials": { "api_token": "<asana_pat credential id>" }
}

Verify

Run Test connection to confirm the token authenticates (GET /users/me). A bad token fails at save/test, not on the first poll. Once polling, created and updated tasks in the selected projects appear as task events; comments appear as conversation events.