| name | pm-asana |
| description | Asana connector knowledge and safe action guide. |
pm-asana
Purpose
Reads implemented Asana project-management streams and safely plans implemented task/project/section/tag reverse-ETL actions. Tracks every official Asana API operation from the pinned OpenAPI source as covered or blocked/planned fixed-target metadata.
Icon
Capabilities
- check=true catalog=true read=true write=true query=false
- Integration type: api
Authentication
- Use pm credentials add with --from-env or --value-stdin for secret fields.
Configuration
- assignee
- base_url
- mode
- project_id
- team_id
- workspace_id
- access_token (secret)
ETL Streams
- workspaces:
- primary key: gid
- fields: gid(), name(), resource_type()
- projects:
- primary key: gid
- fields: created_at(), gid(), modified_at(), name(), resource_type()
- tasks:
- primary key: gid
- fields: completed(), created_at(), gid(), modified_at(), name(), resource_type()
- users:
- primary key: gid
- fields: email(), gid(), name(), resource_type()
- teams:
- primary key: gid
- fields: description(), gid(), name(), resource_type(), visibility()
- tags:
- primary key: gid
- fields: color(), created_at(), gid(), name(), notes(), resource_type()
- sections:
- primary key: gid
- fields: created_at(), gid(), name(), project_gid(), resource_type()
- stories:
- primary key: gid
- fields: created_at(), gid(), resource_subtype(), resource_type(), task_gid(), text(), type()
- custom_fields:
- primary key: gid
- fields: description(), enabled(), gid(), name(), resource_type(), type()
- project_statuses:
- primary key: gid
- fields: color(), created_at(), gid(), modified_at(), project_gid(), resource_type(), text(), title()
- team_memberships:
- primary key: gid
- fields: gid(), is_admin(), is_guest(), is_limited_access(), resource_type()
- workspace_memberships:
- primary key: gid
- fields: gid(), is_active(), is_admin(), is_guest(), resource_type()
Sync Modes
- ETL sync modes: full_refresh_append, full_refresh_overwrite, full_refresh_overwrite_deduped
Reverse ETL Actions
- create_task:
- endpoint: POST /tasks
- required fields: data
- risk: external mutation; creates a new task visible to the configured workspace/project; requires reverse ETL plan -> preview -> explicit approval -> execute
- update_task:
- endpoint: PUT /tasks/{{ record.gid }}
- required fields: gid, data
- risk: external mutation; overwrites task fields such as completion, assignee, or due dates; requires reverse ETL plan -> preview -> explicit approval -> execute
- delete_task:
- endpoint: DELETE /tasks/{{ record.gid }}
- required fields: gid
- risk: destructive mutation; deletes a task; requires reverse ETL plan -> preview -> explicit approval -> execute and typed confirm destructive
- create_project:
- endpoint: POST /projects
- required fields: data
- risk: external mutation; creates a new project visible to the team/workspace; requires reverse ETL plan -> preview -> explicit approval -> execute
- update_project:
- endpoint: PUT /projects/{{ record.gid }}
- required fields: gid, data
- risk: external mutation; overwrites project fields such as archived state or owner; requires reverse ETL plan -> preview -> explicit approval -> execute
- delete_project:
- endpoint: DELETE /projects/{{ record.gid }}
- required fields: gid
- risk: destructive mutation; deletes a project; requires reverse ETL plan -> preview -> explicit approval -> execute and typed confirm destructive
- create_section:
- endpoint: POST /projects/{{ record.project_gid }}/sections
- required fields: project_gid, data
- risk: external mutation; creates a new section in a project; requires reverse ETL plan -> preview -> explicit approval -> execute
- update_section:
- endpoint: PUT /sections/{{ record.gid }}
- required fields: gid, data
- risk: external mutation; renames a section; requires reverse ETL plan -> preview -> explicit approval -> execute
- delete_section:
- endpoint: DELETE /sections/{{ record.gid }}
- required fields: gid
- risk: destructive mutation; deletes an empty section; requires reverse ETL plan -> preview -> explicit approval -> execute and typed confirm destructive
- create_tag:
- endpoint: POST /tags
- required fields: data
- risk: external mutation; creates a workspace-visible tag; requires reverse ETL plan -> preview -> explicit approval -> execute
- update_tag:
- endpoint: PUT /tags/{{ record.gid }}
- required fields: gid, data
- risk: external mutation; renames or recolors a workspace-visible tag; requires reverse ETL plan -> preview -> explicit approval -> execute
- delete_tag:
- endpoint: DELETE /tags/{{ record.gid }}
- required fields: gid
- risk: destructive mutation; deletes a tag and removes it from tasks; requires reverse ETL plan -> preview -> explicit approval -> execute and typed confirm destructive
- add_comment:
- endpoint: POST /tasks/{{ record.task_gid }}/stories
- required fields: task_gid, data
- risk: external mutation; posts a task story/comment visible to task collaborators; requires reverse ETL plan -> preview -> explicit approval -> execute
Security
- read risk: external Asana API reads use fixed declared streams or blocked/planned fixed-target command metadata; no raw provider query/path passthrough
- write risk: external mutations require named reverse-ETL actions, schemas, previews, explicit approval, and typed destructive confirmation when destructive/admin
- approval: all write execution follows plan -> preview -> explicit approval -> execute; destructive actions also require confirm: destructive
- Never pass secret values in chat, shell arguments, logs, docs, or JSON output.
Command Surface
- Read implemented Asana streams and inspect planned fixed-target Asana operation parity without raw API passthrough.
- Usage: pm asana [flags]
- Source CLI: Asana REST API (Pinned Asana OpenAPI commit 56796a67a3c093eedf55fd9682357957a2ebfd85)
- Global flags:
- --credential (string): Credential name to use for the Asana request.
- --connection (string): Credential name alias used only when --credential is omitted; does not resolve pm connections.
- --config (string_array): Connector config override as key=value; never pass secret values here.
- --json (boolean): Emit machine-readable JSON output.
- --limit (integer): Maximum records to emit from implemented stream commands.
- --max-bytes (integer): Maximum bytes for future direct/binary operations; planned commands declare lower operation caps.
- --plan (string): Execute an approved reverse-ETL plan by id.
- --preview (boolean): Preview a reverse-ETL write command without making a network mutation.
- --approve (string): Approval token required to execute a reverse-ETL plan.
- --confirm (string): Typed confirmation challenge for destructive/admin reverse-ETL writes.
- Access requests
- access-requests get-access-requests - Planned fixed-target Asana read: Get access requests. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- access-requests create-access-request - Planned fixed-target Asana mutation: Create an access request. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json, --confirm
- access-requests approve-access-request - Planned fixed-target Asana mutation: Approve an access request. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --access-request-gid, --confirm
- access-requests reject-access-request - Planned fixed-target Asana mutation: Reject an access request. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --access-request-gid, --confirm
- Agents
- agents get-agents-for-workspace - Planned fixed-target Asana read: Get a list of agents in a workspace. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --workspace-gid
- agents get-agent - Planned fixed-target Asana read: Get an agent. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --agent-gid
- AI Studio usage API
- ai-studio-usage-api get-ai-studio-runs - Planned fixed-target Asana read: Get AI Studio credit utilization. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --workspace-gid
- ai-studio-usage-api get-ai-studio-seats - Planned fixed-target Asana read: Get AI Studio seats. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --workspace-gid
- Allocations
- allocations get-allocation - Planned fixed-target Asana read: Get an allocation. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --allocation-gid
- allocations update-allocation - Planned fixed-target Asana mutation: Update an allocation. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --allocation-gid, --data-json, --confirm
- allocations delete-allocation - Planned fixed-target Asana mutation: Delete an allocation. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --allocation-gid, --confirm
- allocations get-allocations - Planned fixed-target Asana read: Get multiple allocations. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- allocations create-allocation - Planned fixed-target Asana mutation: Create an allocation. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json, --confirm
- Attachments
- attachments get-attachment - Planned fixed-target Asana read: Get an attachment. [intent=direct_read availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --attachment-gid
- attachments delete-attachment - Planned fixed-target Asana mutation: Delete an attachment. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --attachment-gid, --confirm
- attachments get-attachments-for-object - Planned fixed-target Asana read: Get attachments from an object. [intent=direct_read availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- attachments create-attachment-for-object - Planned fixed-target Asana mutation: Upload an attachment. [intent=direct_write availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json
- Audit log API
- audit-log-api get-audit-log-events - Planned fixed-target Asana read: Get audit log events. [intent=direct_read availability=planned]; notes: Blocked until CDC/changefeed foundations #2986/#2988 supply truthfulness and lifecycle evidence.; flags: --workspace-gid
- Batch API
- batch-api create-batch-request - Planned fixed-target Asana mutation: Submit parallel requests. [intent=reverse_etl availability=unsupported_api]; approval: not exposed; generic batch subrequests are disallowed to avoid raw API passthrough; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json
- Budgets
- budgets get-budgets - Planned fixed-target Asana read: Get all budgets. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- budgets create-budget - Planned fixed-target Asana mutation: Create a budget. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json, --confirm
- budgets get-budget - Planned fixed-target Asana read: Get a budget. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --budget-gid
- budgets update-budget - Planned fixed-target Asana mutation: Update a budget. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --budget-gid, --data-json, --confirm
- budgets delete-budget - Planned fixed-target Asana mutation: Delete a budget. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --budget-gid, --confirm
- Custom field settings
- custom-field-settings get-custom-field-settings-for-project - Planned fixed-target Asana read: Get a project's custom fields. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --project-gid
- custom-field-settings get-custom-field-settings-for-portfolio - Planned fixed-target Asana read: Get a portfolio's custom fields. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --portfolio-gid
- custom-field-settings get-custom-field-settings-for-goal - Planned fixed-target Asana read: Get a goal's custom fields. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --goal-gid
- custom-field-settings get-custom-field-settings-for-team - Planned fixed-target Asana read: Get a team's custom fields. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --team-gid
- Custom fields
- custom-fields create-custom-field - Planned fixed-target Asana mutation: Create a custom field. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json
- custom-fields get-custom-field - Planned fixed-target Asana read: Get a custom field. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --custom-field-gid
- custom-fields update-custom-field - Planned fixed-target Asana mutation: Update a custom field. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --custom-field-gid, --data-json
- custom-fields delete-custom-field - Planned fixed-target Asana mutation: Delete a custom field. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --custom-field-gid, --confirm
- custom-fields list - Get the configured workspace's custom fields through the declared Asana ETL stream. [intent=etl availability=implemented stream=custom_fields]
- custom-fields create-enum-option-for-custom-field - Planned fixed-target Asana mutation: Create an enum option. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --custom-field-gid, --data-json
- custom-fields insert-enum-option-for-custom-field - Planned fixed-target Asana mutation: Reorder a custom field's enum. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --custom-field-gid, --data-json
- custom-fields update-enum-option - Planned fixed-target Asana mutation: Update an enum option. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --enum-option-gid, --data-json
- Custom types
- custom-types get-custom-types - Planned fixed-target Asana read: Get all custom types associated with an object. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- custom-types get-custom-type - Planned fixed-target Asana read: Get a custom type. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --custom-type-gid
- Events
- events get-events - Planned fixed-target Asana read: Get events on a resource. [intent=direct_read availability=planned]; notes: Blocked until CDC/changefeed foundations #2986/#2988 supply truthfulness and lifecycle evidence.
- Exports
- exports create-graph-export - Planned fixed-target Asana mutation: Initiate a graph export. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json
- exports create-resource-export - Planned fixed-target Asana mutation: Initiate a resource export. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json
- Goal relationships
- goal-relationships get-goal-relationship - Planned fixed-target Asana read: Get a goal relationship. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --goal-relationship-gid
- goal-relationships update-goal-relationship - Planned fixed-target Asana mutation: Update a goal relationship. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --goal-relationship-gid, --data-json
- goal-relationships get-goal-relationships - Planned fixed-target Asana read: Get goal relationships. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- goal-relationships add-supporting-relationship - Planned fixed-target Asana mutation: Add a supporting goal relationship. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --goal-gid, --data-json
- goal-relationships remove-supporting-relationship - Planned fixed-target Asana mutation: Removes a supporting goal relationship. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --goal-gid, --data-json, --confirm
- Goals
- goals get-goal - Planned fixed-target Asana read: Get a goal. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --goal-gid
- goals update-goal - Planned fixed-target Asana mutation: Update a goal. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --goal-gid, --data-json
- goals delete-goal - Planned fixed-target Asana mutation: Delete a goal. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --goal-gid, --confirm
- goals get-goals - Planned fixed-target Asana read: Get goals. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- goals create-goal - Planned fixed-target Asana mutation: Create a goal. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json
- goals create-goal-metric - Planned fixed-target Asana mutation: Create a goal metric. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --goal-gid, --data-json
- goals update-goal-metric - Planned fixed-target Asana mutation: Update a goal metric. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --goal-gid, --data-json
- goals add-followers - Planned fixed-target Asana mutation: Add a collaborator to a goal. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --goal-gid, --data-json
- goals remove-followers - Planned fixed-target Asana mutation: Remove a collaborator from a goal. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --goal-gid, --data-json, --confirm
- goals get-parent-goals-for-goal - Planned fixed-target Asana read: Get parent goals from a goal. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --goal-gid
- goals add-custom-field-setting-for-goal - Planned fixed-target Asana mutation: Add a custom field to a goal. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --goal-gid, --data-json
- goals remove-custom-field-setting-for-goal - Planned fixed-target Asana mutation: Remove a custom field from a goal. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --goal-gid, --data-json, --confirm
- Jobs
- jobs get-job - Planned fixed-target Asana read: Get a job by id. [intent=direct_read availability=planned]; notes: Blocked until CDC/changefeed foundations #2986/#2988 supply truthfulness and lifecycle evidence.; flags: --job-gid
- Memberships
- memberships get-memberships - Planned fixed-target Asana read: Get multiple memberships. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- memberships create-membership - Planned fixed-target Asana mutation: Create a membership. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json, --confirm
- memberships get-membership - Planned fixed-target Asana read: Get a membership. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --membership-gid
- memberships update-membership - Planned fixed-target Asana mutation: Update a membership. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --membership-gid, --data-json, --confirm
- memberships delete-membership - Planned fixed-target Asana mutation: Delete a membership. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --membership-gid, --confirm
- Ooo entries
- ooo-entries get-ooo-entry - Planned fixed-target Asana read: Get an OOO entry. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --ooo-entry-gid
- ooo-entries update-ooo-entry - Planned fixed-target Asana mutation: Update an OOO entry. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --ooo-entry-gid, --data-json
- ooo-entries delete-ooo-entry - Planned fixed-target Asana mutation: Delete an OOO entry. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --ooo-entry-gid, --confirm
- ooo-entries get-ooo-entries - Planned fixed-target Asana read: Get OOO entries for a user. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- ooo-entries create-ooo-entry - Planned fixed-target Asana mutation: Create an OOO entry. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json
- Organization exports
- organization-exports create-organization-export - Planned fixed-target Asana mutation: Create an organization export request. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json, --confirm
- organization-exports get-organization-export - Planned fixed-target Asana read: Get details on an org export request. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --organization-export-gid
- Portfolio memberships
- portfolio-memberships get-portfolio-memberships - Planned fixed-target Asana read: Get multiple portfolio memberships. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- portfolio-memberships get-portfolio-membership - Planned fixed-target Asana read: Get a portfolio membership. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --portfolio-membership-gid
- portfolio-memberships get-portfolio-memberships-for-portfolio - Planned fixed-target Asana read: Get memberships from a portfolio. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --portfolio-gid
- Portfolios
- portfolios get-portfolios - Planned fixed-target Asana read: Get multiple portfolios. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- portfolios create-portfolio - Planned fixed-target Asana mutation: Create a portfolio. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json
- portfolios get-portfolio - Planned fixed-target Asana read: Get a portfolio. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --portfolio-gid
- portfolios update-portfolio - Planned fixed-target Asana mutation: Update a portfolio. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --portfolio-gid, --data-json
- portfolios delete-portfolio - Planned fixed-target Asana mutation: Delete a portfolio. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --portfolio-gid, --confirm
- portfolios get-items-for-portfolio - Planned fixed-target Asana read: Get portfolio items. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --portfolio-gid
- portfolios add-item-for-portfolio - Planned fixed-target Asana mutation: Add a portfolio item. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --portfolio-gid, --data-json
- portfolios remove-item-for-portfolio - Planned fixed-target Asana mutation: Remove a portfolio item. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --portfolio-gid, --data-json, --confirm
- portfolios add-custom-field-setting-for-portfolio - Planned fixed-target Asana mutation: Add a custom field to a portfolio. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --portfolio-gid, --data-json
- portfolios remove-custom-field-setting-for-portfolio - Planned fixed-target Asana mutation: Remove a custom field from a portfolio. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --portfolio-gid, --data-json, --confirm
- portfolios add-members-for-portfolio - Planned fixed-target Asana mutation: Add users to a portfolio. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --portfolio-gid, --data-json
- portfolios remove-members-for-portfolio - Planned fixed-target Asana mutation: Remove users from a portfolio. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --portfolio-gid, --data-json, --confirm
- portfolios duplicate-portfolio - Planned fixed-target Asana mutation: Duplicate a portfolio. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --portfolio-gid, --data-json
- Project briefs
- project-briefs get-project-brief - Planned fixed-target Asana read: Get a project brief. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --project-brief-gid
- project-briefs update-project-brief - Planned fixed-target Asana mutation: Update a project brief. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-brief-gid, --data-json
- project-briefs delete-project-brief - Planned fixed-target Asana mutation: Delete a project brief. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-brief-gid, --confirm
- project-briefs create-project-brief - Planned fixed-target Asana mutation: Create a project brief. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-gid, --data-json
- Project memberships
- project-memberships get-project-membership - Planned fixed-target Asana read: Get a project membership. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --project-membership-gid
- project-memberships get-project-memberships-for-project - Planned fixed-target Asana read: Get memberships from a project. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --project-gid
- Project portfolio settings
- project-portfolio-settings get-project-portfolio-setting - Planned fixed-target Asana read: Get a project portfolio setting. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --project-portfolio-setting-gid
- project-portfolio-settings update-project-portfolio-setting - Planned fixed-target Asana mutation: Update a project portfolio setting. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-portfolio-setting-gid, --data-json
- project-portfolio-settings get-project-portfolio-settings-for-project - Planned fixed-target Asana read: Get project portfolio settings for a project. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --project-gid
- project-portfolio-settings get-project-portfolio-settings-for-portfolio - Planned fixed-target Asana read: Get project portfolio settings for a portfolio. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --portfolio-gid
- Project statuses
- project-statuses get-project-status - Planned fixed-target Asana read: Get a project status. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --project-status-gid
- project-statuses delete-project-status - Planned fixed-target Asana mutation: Delete a project status. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-status-gid, --confirm
- project-statuses list - Planned fixed-target Asana read: Get statuses from a project. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --project-gid
- project-statuses create-project-status-for-project - Planned fixed-target Asana mutation: Create a project status. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-gid, --data-json
- Project templates
- project-templates get-project-template - Planned fixed-target Asana read: Get a project template. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --project-template-gid
- project-templates delete-project-template - Planned fixed-target Asana mutation: Delete a project template. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-template-gid, --confirm
- project-templates get-project-templates - Planned fixed-target Asana read: Get multiple project templates. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- project-templates get-project-templates-for-team - Planned fixed-target Asana read: Get a team's project templates. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --team-gid
- project-templates instantiate-project - Planned fixed-target Asana mutation: Instantiate a project from a project template. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-template-gid, --data-json
- Projects
- projects list - Get multiple projects through the declared Asana ETL stream. [intent=etl availability=implemented stream=projects]
- projects create - Plan create a project through the declared Asana reverse-ETL action. [intent=reverse_etl availability=implemented write=create_project]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; flags: --name, --workspace
- projects get-project - Planned fixed-target Asana read: Get a project. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --project-gid
- projects update - Plan update a project through the declared Asana reverse-ETL action. [intent=reverse_etl availability=implemented write=update_project]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; flags: --gid, --archived
- projects delete - Plan delete a project through the declared Asana reverse-ETL action. [intent=reverse_etl availability=implemented write=delete_project]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive execution requires the typed global --confirm destructive challenge; risk: high; flags: --gid
- projects duplicate-project - Planned fixed-target Asana mutation: Duplicate a project. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-gid, --data-json
- projects get-projects-for-task - Planned fixed-target Asana read: Get projects a task is in. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --task-gid
- projects get-projects-for-team - Planned fixed-target Asana read: Get a team's projects. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --team-gid
- projects create-project-for-team - Planned fixed-target Asana mutation: Create a project in a team. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --team-gid, --data-json
- projects get-projects-for-workspace - Planned fixed-target Asana read: Get all projects in a workspace. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --workspace-gid
- projects create-project-for-workspace - Planned fixed-target Asana mutation: Create a project in a workspace. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --workspace-gid, --data-json
- projects search-projects-for-workspace - Planned fixed-target Asana read: Search projects in a workspace. [intent=direct_read availability=planned]; notes: Blocked until provider-search foundation #2985 supplies bounded query execution.; flags: --workspace-gid, --text
- projects add-custom-field-setting-for-project - Planned fixed-target Asana mutation: Add a custom field to a project. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-gid, --data-json
- projects remove-custom-field-setting-for-project - Planned fixed-target Asana mutation: Remove a custom field from a project. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-gid, --data-json, --confirm
- projects get-task-counts-for-project - Planned fixed-target Asana read: Get task count of a project. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --project-gid
- projects add-members-for-project - Planned fixed-target Asana mutation: Add users to a project. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-gid, --data-json
- projects remove-members-for-project - Planned fixed-target Asana mutation: Remove users from a project. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-gid, --data-json, --confirm
- projects add-followers-for-project - Planned fixed-target Asana mutation: Add followers to a project. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-gid, --data-json
- projects remove-followers-for-project - Planned fixed-target Asana mutation: Remove followers from a project. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-gid, --data-json, --confirm
- projects save-as-template - Planned fixed-target Asana mutation: Create a project template from a project. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-gid, --data-json
- Rates
- rates get-rates - Planned fixed-target Asana read: Get multiple rates. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- rates create-rate - Planned fixed-target Asana mutation: Create a rate. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json, --confirm
- rates get-rate - Planned fixed-target Asana read: Get a rate. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --rate-gid
- rates update-rate - Planned fixed-target Asana mutation: Update a rate. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --rate-gid, --data-json, --confirm
- rates delete-rate - Planned fixed-target Asana mutation: Delete a rate. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --rate-gid, --confirm
- Reactions
- reactions get-reactions-on-object - Planned fixed-target Asana read: Get reactions with an emoji base on an object. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- Roles
- roles get-roles - Planned fixed-target Asana read: Get multiple roles. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- roles create-role - Planned fixed-target Asana mutation: Create a role. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json, --confirm
- roles get-role - Planned fixed-target Asana read: Get a role. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --role-gid
- roles update-role - Planned fixed-target Asana mutation: Update a role. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --role-gid, --data-json, --confirm
- roles delete-role - Planned fixed-target Asana mutation: Delete a role. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --role-gid, --confirm
- Rules
- rules trigger-rule - Planned fixed-target Asana mutation: Trigger a rule. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --rule-trigger-gid, --data-json
- Sections
- sections get-section - Planned fixed-target Asana read: Get a section. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --section-gid
- sections update - Plan update a section through the declared Asana reverse-ETL action. [intent=reverse_etl availability=implemented write=update_section]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; flags: --gid, --name
- sections delete - Plan delete a section through the declared Asana reverse-ETL action. [intent=reverse_etl availability=implemented write=delete_section]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive execution requires the typed global --confirm destructive challenge; risk: high; flags: --gid
- sections list - Planned fixed-target Asana read: Get sections in a project. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --project-gid
- sections create - Plan create a section in a project through the declared Asana reverse-ETL action. [intent=reverse_etl availability=implemented write=create_section]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; flags: --project-gid, --name
- sections add-task-for-section - Planned fixed-target Asana mutation: Add task to section. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --section-gid, --data-json
- sections insert-section-for-project - Planned fixed-target Asana mutation: Move or Insert sections. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --project-gid, --data-json
- Status updates
- status-updates get-status - Planned fixed-target Asana read: Get a status update. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --status-update-gid
- status-updates delete-status - Planned fixed-target Asana mutation: Delete a status update. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --status-update-gid, --confirm
- status-updates get-statuses-for-object - Planned fixed-target Asana read: Get status updates from an object. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- status-updates create-status-for-object - Planned fixed-target Asana mutation: Create a status update. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json
- Stories
- stories get-story - Planned fixed-target Asana read: Get a story. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --story-gid
- stories update-story - Planned fixed-target Asana mutation: Update a story. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --story-gid, --data-json
- stories delete-story - Planned fixed-target Asana mutation: Delete a story. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --story-gid, --confirm
- stories list - Planned fixed-target Asana read: Get stories from a task. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --task-gid
- stories get-stories-for-goal - Planned fixed-target Asana read: Get stories from a goal. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --goal-gid
- stories create-story-for-goal - Planned fixed-target Asana mutation: Create a story on a goal. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --goal-gid, --data-json
- Tags
- tags list - Get multiple tags through the declared Asana ETL stream. [intent=etl availability=implemented stream=tags]
- tags create - Plan create a tag through the declared Asana reverse-ETL action. [intent=reverse_etl availability=implemented write=create_tag]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; flags: --name, --workspace
- tags get-tag - Planned fixed-target Asana read: Get a tag. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --tag-gid
- tags update - Plan update a tag through the declared Asana reverse-ETL action. [intent=reverse_etl availability=implemented write=update_tag]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; flags: --gid, --name
- tags delete - Plan delete a tag through the declared Asana reverse-ETL action. [intent=reverse_etl availability=implemented write=delete_tag]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive execution requires the typed global --confirm destructive challenge; risk: high; flags: --gid
- tags get-tags-for-task - Planned fixed-target Asana read: Get a task's tags. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --task-gid
- tags get-tags-for-workspace - Planned fixed-target Asana read: Get tags in a workspace. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --workspace-gid
- tags create-tag-for-workspace - Planned fixed-target Asana mutation: Create a tag in a workspace. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --workspace-gid, --data-json
- Task templates
- task-templates get-task-templates - Planned fixed-target Asana read: Get multiple task templates. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.
- task-templates get-task-template - Planned fixed-target Asana read: Get a task template. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --task-template-gid
- task-templates delete-task-template - Planned fixed-target Asana mutation: Delete a task template. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-template-gid, --confirm
- task-templates instantiate-task - Planned fixed-target Asana mutation: Instantiate a task from a task template. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-template-gid, --data-json
- Tasks
- tasks comments add - Plan create a story on a task through the declared Asana reverse-ETL action. [intent=reverse_etl availability=implemented write=add_comment]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; flags: --task-gid, --text
- tasks list - Get multiple tasks through the declared Asana ETL stream. [intent=etl availability=implemented stream=tasks]
- tasks create - Plan create a task through the declared Asana reverse-ETL action. [intent=reverse_etl availability=implemented write=create_task]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; flags: --name, --workspace
- tasks get-task - Planned fixed-target Asana read: Get a task. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --task-gid
- tasks update - Plan update a task through the declared Asana reverse-ETL action. [intent=reverse_etl availability=implemented write=update_task]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; flags: --gid, --completed
- tasks delete - Plan delete a task through the declared Asana reverse-ETL action. [intent=reverse_etl availability=implemented write=delete_task]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive execution requires the typed global --confirm destructive challenge; risk: high; flags: --gid
- tasks duplicate-task - Planned fixed-target Asana mutation: Duplicate a task. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-gid, --data-json
- tasks get-tasks-for-project - Planned fixed-target Asana read: Get tasks from a project. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --project-gid
- tasks get-tasks-for-section - Planned fixed-target Asana read: Get tasks from a section. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --section-gid
- tasks get-tasks-for-tag - Planned fixed-target Asana read: Get tasks from a tag. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --tag-gid
- tasks get-tasks-for-user-task-list - Planned fixed-target Asana read: Get tasks from a user task list. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --user-task-list-gid
- tasks get-subtasks-for-task - Planned fixed-target Asana read: Get subtasks from a task. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --task-gid
- tasks create-subtask-for-task - Planned fixed-target Asana mutation: Create a subtask. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-gid, --data-json
- tasks set-parent-for-task - Planned fixed-target Asana mutation: Set the parent of a task. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-gid, --data-json
- tasks get-dependencies-for-task - Planned fixed-target Asana read: Get dependencies from a task. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --task-gid
- tasks add-dependencies-for-task - Planned fixed-target Asana mutation: Set dependencies for a task. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-gid, --data-json
- tasks remove-dependencies-for-task - Planned fixed-target Asana mutation: Unlink dependencies from a task. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-gid, --data-json, --confirm
- tasks get-dependents-for-task - Planned fixed-target Asana read: Get dependents from a task. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --task-gid
- tasks add-dependents-for-task - Planned fixed-target Asana mutation: Set dependents for a task. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-gid, --data-json
- tasks remove-dependents-for-task - Planned fixed-target Asana mutation: Unlink dependents from a task. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-gid, --data-json, --confirm
- tasks add-project-for-task - Planned fixed-target Asana mutation: Add a project to a task. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-gid, --data-json
- tasks remove-project-for-task - Planned fixed-target Asana mutation: Remove a project from a task. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-gid, --data-json, --confirm
- tasks add-tag-for-task - Planned fixed-target Asana mutation: Add a tag to a task. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-gid, --data-json
- tasks remove-tag-for-task - Planned fixed-target Asana mutation: Remove a tag from a task. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-gid, --data-json, --confirm
- tasks add-followers-for-task - Planned fixed-target Asana mutation: Add followers to a task. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-gid, --data-json
- tasks remove-follower-for-task - Planned fixed-target Asana mutation: Remove followers from a task. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: high; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --task-gid, --data-json, --confirm
- tasks get-task-for-custom-id - Planned fixed-target Asana read: Get a task for a given custom ID. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --workspace-gid, --custom-id
- tasks search-tasks-for-workspace - Planned fixed-target Asana read: Search tasks in a workspace. [intent=direct_read availability=planned]; notes: Blocked until provider-search foundation #2985 supplies bounded query execution.; flags: --workspace-gid, --text
- Team memberships
- team-memberships get-team-membership - Planned fixed-target Asana read: Get a team membership. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --team-membership-gid
- team-memberships list - Get team memberships through the declared Asana ETL stream. [intent=etl availability=implemented stream=team_memberships]
- team-memberships get-team-memberships-for-team - Planned fixed-target Asana read: Get memberships from a team. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --team-gid
- team-memberships get-team-memberships-for-user - Planned fixed-target Asana read: Get memberships from a user. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --user-gid
- Teams
- teams create-team - Planned fixed-target Asana mutation: Create a team. [intent=reverse_etl availability=planned]; approval: reverse ETL plan -> preview -> explicit approval -> execute; destructive/admin operations require typed confirmation destructive before execute; risk: medium; notes: Planned reverse-ETL metadata only; not executable until a named write action, fixtures, and approval evidence exist.; flags: --data-json
- teams get-team - Planned fixed-target Asana read: Get a team. [intent=etl availability=planned]; notes: Planned ETL/direct read metadata only; no raw provider request execution is exposed.; flags: --team-gid