Asana website screenshot

Asana

Asana is a web and mobile application designed to help teams organize, track, and manage their work. The Asana API allows developers to programmatically access and integrate Asana's project management capabilities into their applications.

45 APIs 16 Features
CollaborationProductivityProject ManagementProjectsTask ManagementTasksWorkflow

APIs

Asana Allocations API

The Asana Allocations API is a tool that allows users to manage and allocate resources within their Asana project management system. With this API, users can easily assign tasks...

Asana Attachments API

The Asana Attachments API allows developers to interact with and manage file attachments within the Asana project management platform. This API enables users to upload, download...

Asana Batch API

Asana Batch API is a tool that allows users to perform multiple operations in Asana in a single request. This API enables users to efficiently manage and organize tasks, project...

Asana Custom Fields API

The Asana Custom Fields API allows developers to create and manage custom fields within Asana, a popular project management tool. With this API, users can define custom fields t...

Asana Enum Options API

The Asana Enum Options API is a tool that allows users to retrieve and manage information about enum options within their Asana projects. Enum options are pre-defined choices th...

Asana Events API

The Asana Events API is a tool that allows users to track and interact with events happening within their Asana workspace. Through this API, users can receive real-time updates ...

Asana Goal Relationships API

The Asana Goal Relationships API allows users to create and manage relationships between different goals within their Asana workspace. This API enables users to define dependenc...

Asana Goals API

The Asana Goals API is a powerful tool that allows developers to programmatically interact with and manipulate goals within the Asana platform. By utilizing the API, users can c...

Asana Jobs API

Asana Jobs API is an application programming interface that allows developers to access and interact with job-related data and functionality within the Asana platform. This API ...

Asana Memberships API

The Asana Memberships API is a tool that allows developers to integrate Asana's membership features into their own applications. This API allows users to access and manage infor...

Asana Organization Exports API

The Asana Organization Exports API is a tool that allows users to extract and download data from their Asana organization for external use. This API enables business owners and ...

Asana Portfolios API

Asana Portfolios API allows developers to access and manage portfolios in the Asana platform programmatically. With this API, users can create, update, and delete portfolios, as...

Asana Project Templates API

The Asana Project Templates API is a tool that allows users to access and utilize pre-designed project templates within the Asana platform. With this API, users can easily creat...

Asana Projects API

The Asana Projects API is a tool that allows users to programmatically interact with Asana projects, enabling them to create, update, and manage tasks and projects within the As...

Asana Rule Triggers API

The Asana Rule Triggers API provides developers with the ability to create and manage custom rules in Asana, a popular project management tool. With this API, users can set up t...

Asana Sections API

The Asana Sections API provides developers with the ability to programmatically interact with and manage sections within Asana projects. This API allows users to create, update,...

Asana Status Updates API

The Asana Status Updates API allows users to retrieve and update the status of tasks and projects within the Asana platform. This API enables developers to programmatically inte...

Asana Tags API

The Asana Tags API allows developers to programmatically create, read, update, and delete tags within the Asana project management tool. Tags are customizable labels that can be...

Asana Task Templates API

The Asana Task Templates API allows users to create, manage, and customize task templates within the Asana platform. This API enables developers to programmatically interact wit...

Asana Tasks API

The Asana Tasks API is a powerful tool that allows developers to programmatically manage tasks and projects within the Asana platform. With this API, users can create, update, a...

Asana Teams API

Asana Teams API is a powerful tool that allows users to automate and streamline their team's workflow within the Asana platform. By utilizing this API, developers can create cus...

Asana Time Periods API

The Asana Time Periods API is a tool that allows users to access and manage time periods within the Asana project management platform. This API enables developers to create, upd...

Asana Time Tracking Entries API

The Asana Time Tracking Entries API is a tool that allows users to record and track time spent on tasks and projects within the Asana platform. This API enables developers to cr...

Asana User Task Lists API

Asana User Task Lists API is a tool that allows users to create, update, and manage task lists within the Asana platform. By using this API, users can access their task lists, v...

Asana Users API

Asana Users API allows developers to interact with user data within the Asana project management platform. This API enables users to retrieve information about individual users,...

Asana Webhooks API

Asana Webhooks API allows developers to receive real-time updates about changes and events happening within Asana. By setting up webhooks, users can subscribe to specific events...

Asana Workspaces API

The Asana Workspaces API allows users to access and manipulate data within their Asana workspaces programmatically. With this API, developers can create custom integrations, aut...

Asana Access Requests API

The Asana Access Requests API allows users to manage access requests for resources such as projects and portfolios. With this API, users can retrieve pending access requests, cr...

Asana Audit Log API

The Asana Audit Log API provides an immutable log of important events within an organization's Asana instance. This API enables organizations to set up proactive alerting with S...

Asana Budgets API

The Asana Budgets API allows developers to manage budget resources for projects. A budget object represents a budget for a specific parent resource such as a project and tracks ...

Asana Custom Field Settings API

The Asana Custom Field Settings API manages the association between custom fields and projects, portfolios, teams, and goals. Custom fields are attached to a particular project ...

Asana Custom Types API

The Asana Custom Types API allows developers to retrieve custom type resources associated with objects in Asana. A custom type includes properties such as name and status option...

Asana Exports API

The Asana Exports API provides graph export and resource export functionality for extracting data from Asana. Exports are generated in gzipped JSONL format with presigned S3 URL...

Asana Portfolio Memberships API

The Asana Portfolio Memberships API allows developers to retrieve portfolio membership information. A portfolio membership represents the relationship between a user and a portf...

Asana Project Briefs API

The Asana Project Briefs API allows developers to manage rich text documents that describe projects. A project brief includes a title, rich text content, and a permalink URL. Th...

Asana Project Memberships API

The Asana Project Memberships API provides endpoints for retrieving project membership records. These endpoints enable developers to query membership information for projects, i...

Asana Project Statuses API

The Asana Project Statuses API allows developers to manage progress updates on projects. A project status includes descriptive text and color codes indicating the project state ...

Asana Rates API

The Asana Rates API allows developers to manage rate resources within projects. A rate represents a monetary value associated with a user for a specific project, tracking values...

Asana Reactions API

The Asana Reactions API allows developers to retrieve emoji reactions on objects within Asana. Each reaction includes the emoji string used and information about the user who cr...

Asana Roles API

The Asana Roles API allows developers to programmatically manage Role-Based Access Control (RBAC) at the domain level. The API supports creating, retrieving, updating, and delet...

Asana Rules API

The Asana Rules API allows developers to automate common patterns and workflows by combining triggers with automatic actions. The API supports triggering rules via incoming web ...

Asana Stories API

The Asana Stories API allows developers to manage stories, which are records of activity associated with objects in the Asana system. Stories are generated by the system when us...

Asana Team Memberships API

The Asana Team Memberships API allows developers to retrieve team membership records. A team membership represents the relationship between a user and a team, including flags fo...

Asana Typeahead API

The Asana Typeahead API provides search functionality for objects within a single workspace. This API enables developers to build autocomplete and search-as-you-type features by...

Asana Workspace Memberships API

The Asana Workspace Memberships API allows developers to determine if a user is a member of a workspace and retrieve membership details. The API provides endpoints to get a spec...

Collections

Asana Batch API

POSTMAN

Asana Goals API

POSTMAN

Asana Jobs API

POSTMAN

Asana Tags API

POSTMAN

Asana Tasks API

POSTMAN

Asana Teams API

POSTMAN

Asana Users API

POSTMAN

Asana

OPEN

Arazzo Workflows

Asana Add a Custom Field to a Project

Create a workspace custom field and attach it to a project as a custom field setting.

ARAZZO

Asana Add an Existing Task to a Project Section

Confirm a task exists, add it to a project section, and note the move with a comment.

ARAZZO

Asana Assign and Add Followers to a Task

Create a task, assign it to an owner, and add followers who should be notified.

ARAZZO

Asana Attach a File to a New Task

Create a task and attach an external file URL to it as a reference.

ARAZZO

Asana Bootstrap a Project Board

Create a project in a team, add a section to it, drop a first task into the project, and open the discussion with a comment.

ARAZZO

Asana Build an Enum Custom Field With Options

Create an enum custom field in a workspace and add two enum options to it.

ARAZZO

Asana Find, Comment On, and Complete a Task

Read a task, post a closing comment, and mark it complete in a single closeout pass.

ARAZZO

Asana Create a Task With Subtasks

Create a parent task, then add two subtasks under it to break the work down.

ARAZZO

Asana Create a Team With a First Project

Create a team in an organization and stand up its first project.

ARAZZO

Asana Duplicate a Project and Poll the Job

Kick off a project duplication job and poll the async job until it succeeds.

ARAZZO

Asana Insert a Section Into a Project

List a project's sections, then insert a new section at the top of the board.

ARAZZO

Asana Create Dependent Tasks

Create a blocking task and a dependent task, then wire the dependency between them.

ARAZZO

Asana Offboard a User

Remove a user from a team and then remove them from the workspace.

ARAZZO

Asana Onboard a User to a Workspace and Team

Add a user to a workspace and then add them to a team within that workspace.

ARAZZO

Asana Post a Project Status Update

Read a project's task counts, then post a status update summarizing progress.

ARAZZO

Asana Create a Task and Nest It Under a Parent

Create a standalone task and then set its parent so it becomes a subtask.

ARAZZO

Asana Provision a Tag and Label a Task

Create a tag in a workspace and immediately apply it to an existing task.

ARAZZO

Asana Provision a Workspace Project With a First Task

Create a project directly in a workspace and seed it with a first task.

ARAZZO

Asana Refresh a Project's Status Update

Read the most recent status update on a project, then post a fresh one.

ARAZZO

Asana Review and Reply on a Task Comment Thread

Read the existing comments on a task, then post a reply comment to the thread.

ARAZZO

Asana Search and Reassign a Task

Search a workspace for a task by text, then reassign the first match to a new owner.

ARAZZO

Asana Triage and Tag a Task

Create a task, place it in a section, and label it with a tag in one triage pass.

ARAZZO

GraphQL

Asana GraphQL

Asana does not offer a public native GraphQL endpoint. The Asana platform exposes its capabilities exclusively through a REST API available at `https://app.asana.com/api/1.0`. T...

GRAPHQL

Pricing Plans

Asana Plans Pricing

4 plans

PLANS

Rate Limits

Asana Rate Limits

4 limits

RATE LIMITS

FinOps

Asana Finops

FINOPS

Features

Personal plan: free forever, 2 users
Starter at $10.99/user/mo annual with timelines, dashboards, AI Studio (50K credits)
Advanced at $24.99/user/mo with portfolios, goals, AI Studio (75K credits)
Enterprise: SAML/SCIM, capacity planning, AI Studio (200K credits)
REST API: 1,500 req/min Paid, 150 req/min Free
Search API: 60 req/min
50 concurrent request cap
Webhooks for tasks, projects, comments
OAuth 2.0 and personal access tokens
Asana Connect for service accounts
Custom Fields API
Goals API for OKR tracking
Time Tracking and Workload management
AI Teammates and AI Studio
Approvals and proofing workflows
Salesforce, Tableau, Power BI integrations

Event Specifications

Asana Webhooks Events API

The Asana Webhooks Events API delivers real-time event notifications to your application when changes occur on Asana resources. Webhooks use HTTP POST to deliver events to a tar...

ASYNCAPI

Semantic Vocabularies

Asana Context

0 classes · 16 properties

JSON-LD

JSON Structure

Asana Structure

0 properties

JSON STRUCTURE

Resources

🔗
PostmanWorkspace
PostmanWorkspace
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
LinkedIn
LinkedIn
🔗
Specification
Specification
🔗
JSONLD
JSONLD
🔗
OpenAPI
OpenAPI
🔗
Explorer
Explorer
🔗
Sandbox
Sandbox
🚀
GettingStarted
GettingStarted
💬
FAQ
FAQ
🔑
Authentication
Authentication
🔗
OpenIDConnect
OpenIDConnect
🔗
Documentation
Documentation
📦
SDKs
SDKs
💻
Examples
Examples
🔗
PostmanCollection
PostmanCollection
📄
ChangeLog
ChangeLog
🔗
Components
Components
🔗
Applications
Applications
🔗
ApplicationDirectory
ApplicationDirectory
🔗
Guide
Guide
🔗
Partners
Partners
📰
Blog
Blog
🔗
Feedback
Feedback
📜
TermsOfService
TermsOfService
📜
PrivacyPolicy
PrivacyPolicy
🌐
DeveloperPortal
DeveloperPortal
💬
Support
Support
🔗
Forums
Forums
🔗
Contact
Contact
📝
Signup
Signup
🔗
Login
Login
🔑
OAuth
OAuth
🔑
OAuthScopes
OAuthScopes
🔗
RateLimits
RateLimits
🔗
Pagination
Pagination
💻
ErrorCodes
ErrorCodes
🔗
InputOutputOptions
InputOutputOptions
🔗
RichText
RichText
🔗
SCIM
SCIM
🔗
AuditLogEvents
AuditLogEvents
🔗
Deprecations
Deprecations
🔗
Documentation
Documentation
🔗
Webhooks
Webhooks
🔗
Documentation
Documentation
🔗
Guide
Guide
🔗
Guide
Guide
🔗
Website
Website
💰
Pricing
Pricing
🟢
StatusPage
StatusPage
👥
GitHubOrganization
GitHubOrganization
👥
StackOverflow
StackOverflow
🔗
Security
Security
👥
YouTube
YouTube
🔗
LlmsText
LlmsText

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Asana
  version: '1.0'
request:
  auth:
    type: bearer
    token: '{{bearerToken}}'
items:
- info:
    name: Allocations
    type: folder
  items:
  - info:
      name: Asana Get an allocation
      type: http
    http:
      method: GET
      url: https://app.asana.com/api/1.0/allocations/:allocation_gid
      params:
      - name: allocation_gid
        value: '77688'
        type: path
        description: Globally unique identifier for the allocation.
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
      - name: opt_fields
        value: assignee,assignee.name,created_by,created_by.name,effort,effort.type,effort.value,end_date,parent,parent.name,resource_subtype,start_date
        type: query
        description: This endpoint returns a compact resource, which excludes some properties by default. To include those
          optional properties, set this query parameter to a comma-separated list of the properties you wish to include.
    docs: Returns the complete allocation record for a single allocation.
  - info:
      name: Asana Update an allocation
      type: http
    http:
      method: PUT
      url: https://app.asana.com/api/1.0/allocations/:allocation_gid
      params:
      - name: allocation_gid
        value: '77688'
        type: path
        description: Globally unique identifier for the allocation.
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
      - name: opt_fields
        value: assignee,assignee.name,created_by,created_by.name,effort,effort.type,effort.value,end_date,parent,parent.name,resource_subtype,start_date
        type: query
        description: This endpoint returns a compact resource, which excludes some properties by default. To include those
          optional properties, set this query parameter to a comma-separated list of the properties you wish to include.
      body:
        type: json
        data: '{}'
    docs: 'An existing allocation can be updated by making a PUT request on the URL for

      that allocation. Only the fields provided in the `data` block will be updated;

      any unspecified fields will remain unchanged.


      Returns the complete updated allocation record.'
  - info:
      name: Asana Delete an allocation
      type: http
    http:
      method: DELETE
      url: https://app.asana.com/api/1.0/allocations/:allocation_gid
      params:
      - name: allocation_gid
        value: '77688'
        type: path
        description: Globally unique identifier for the allocation.
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
    docs: 'A specific, existing allocation can be deleted by making a DELETE request on the URL for that allocation.


      Returns an empty data record.'
  - info:
      name: Asana Get multiple allocations
      type: http
    http:
      method: GET
      url: https://app.asana.com/api/1.0/allocations
      params:
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
      - name: parent
        value: '77688'
        type: query
        description: Globally unique identifier for the project to filter allocations by.
      - name: assignee
        value: '12345'
        type: query
        description: Globally unique identifier for the user the allocation is assigned to.
      - name: workspace
        value: '98765'
        type: query
        description: Globally unique identifier for the workspace.
      - name: limit
        value: '50'
        type: query
        description: 'Results per page.

          The number of objects to return per page. The value must be between 1 and 100.'
      - name: offset
        value: eyJ0eXAiOJiKV1iQLCJhbGciOiJIUzI1NiJ9
        type: query
        description: 'Offset token.

          An offset to the next page returned by the API. A pagination request will return an offset token, which can be used
          as an input parameter to the next request. If an offset is not passed in, the API will return the first page of
          results.

          *Note: You can only pass in an offset that was returned to you via a previously paginated request.*'
      - name: opt_fields
        value: assignee,assignee.name,created_by,created_by.name,effort,effort.type,effort.value,end_date,offset,parent,parent.name,path,resource_subtype,start_date,uri
        type: query
        description: This endpoint returns a compact resource, which excludes some properties by default. To include those
          optional properties, set this query parameter to a comma-separated list of the properties you wish to include.
    docs: Returns a list of allocations filtered to a specific project or user.
  - info:
      name: Asana Create an allocation
      type: http
    http:
      method: POST
      url: https://app.asana.com/api/1.0/allocations
      params:
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
      - name: opt_fields
        value: assignee,assignee.name,created_by,created_by.name,effort,effort.type,effort.value,end_date,parent,parent.name,resource_subtype,start_date
        type: query
        description: This endpoint returns a compact resource, which excludes some properties by default. To include those
          optional properties, set this query parameter to a comma-separated list of the properties you wish to include.
      body:
        type: json
        data: '{}'
    docs: 'Creates a new allocation.


      Returns the full record of the newly created allocation.'
- info:
    name: Attachments
    type: folder
  items:
  - info:
      name: Asana Get an attachment
      type: http
    http:
      method: GET
      url: https://app.asana.com/api/1.0/attachments/:attachment_gid
      params:
      - name: attachment_gid
        value: '12345'
        type: path
        description: Globally unique identifier for the attachment.
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
      - name: opt_fields
        value: connected_to_app,created_at,download_url,host,name,parent,parent.created_by,parent.name,parent.resource_subtype,permanent_url,resource_subtype,size,view_url
        type: query
        description: This endpoint returns a compact resource, which excludes some properties by default. To include those
          optional properties, set this query parameter to a comma-separated list of the properties you wish to include.
    docs: Get the full record for a single attachment.
  - info:
      name: Asana Delete an attachment
      type: http
    http:
      method: DELETE
      url: https://app.asana.com/api/1.0/attachments/:attachment_gid
      params:
      - name: attachment_gid
        value: '12345'
        type: path
        description: Globally unique identifier for the attachment.
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
    docs: 'Deletes a specific, existing attachment.


      Returns an empty data record.'
  - info:
      name: Asana Get attachments from an object
      type: http
    http:
      method: GET
      url: https://app.asana.com/api/1.0/attachments
      params:
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
      - name: limit
        value: '50'
        type: query
        description: 'Results per page.

          The number of objects to return per page. The value must be between 1 and 100.'
      - name: offset
        value: eyJ0eXAiOJiKV1iQLCJhbGciOiJIUzI1NiJ9
        type: query
        description: 'Offset token.

          An offset to the next page returned by the API. A pagination request will return an offset token, which can be used
          as an input parameter to the next request. If an offset is not passed in, the API will return the first page of
          results.

          *Note: You can only pass in an offset that was returned to you via a previously paginated request.*'
      - name: parent
        value: '159874'
        type: query
        description: Globally unique identifier for object to fetch statuses from. Must be a GID for a `project`, `project_brief`,
          or `task`.
      - name: opt_fields
        value: connected_to_app,created_at,download_url,host,name,offset,parent,parent.created_by,parent.name,parent.resource_subtype,path,permanent_url,resource_subtype,size,uri,view_url
        type: query
        description: This endpoint returns a compact resource, which excludes some properties by default. To include those
          optional properties, set this query parameter to a comma-separated list of the properties you wish to include.
    docs: 'Returns the compact records for all attachments on the object.


      There are three possible `parent` values for this request: `project`, `project_brief`, and `task`. For a project, an
      attachment refers to a file uploaded to the "Key resources" section in the project Overview. For a project brief, an
      attachment refers to inline files in the project brief itself. For a task, an attachment refers to a file directly associated
      to that task.


      Note that within the Asana app, inline images in the task des'
  - info:
      name: Asana Upload an attachment
      type: http
    http:
      method: POST
      url: https://app.asana.com/api/1.0/attachments
      params:
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
      - name: opt_fields
        value: connected_to_app,created_at,download_url,host,name,parent,parent.created_by,parent.name,parent.resource_subtype,permanent_url,resource_subtype,size,view_url
        type: query
        description: This endpoint returns a compact resource, which excludes some properties by default. To include those
          optional properties, set this query parameter to a comma-separated list of the properties you wish to include.
      body:
        type: multipart-form
        data: []
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://app.asana.com/-/oauth_authorize
        accessTokenUrl: https://app.asana.com/-/oauth_token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: 'Upload an attachment.


      This method uploads an attachment on an object and returns the compact

      record for the created attachment object. This is possible by either:


      - Providing the URL of the external resource being attached, or

      - Downloading the file content first and then uploading it as any other attachment. Note that it is not possible to
      attach

      files from third party services such as Dropbox, Box, Vimeo & Google Drive via the API


      The 100MB size limit on attachments in Asana is enforced on '
- info:
    name: Audit Log API
    type: folder
  items:
  - info:
      name: Asana Get audit log events
      type: http
    http:
      method: GET
      url: https://app.asana.com/api/1.0/workspaces/:workspace_gid/audit_log_events
      params:
      - name: workspace_gid
        value: '12345'
        type: path
        description: Globally unique identifier for the workspace or organization.
      - name: start_at
        value: ''
        type: query
        description: Filter to events created after this time (inclusive).
      - name: end_at
        value: ''
        type: query
        description: Filter to events created before this time (exclusive).
      - name: event_type
        value: ''
        type: query
        description: 'Filter to events of this type.

          Refer to the [supported audit log events](/docs/audit-log-events#supported-audit-log-events) for a full list of
          values.'
      - name: actor_type
        value: ''
        type: query
        description: 'Filter to events with an actor of this type.

          This only needs to be included if querying for actor types without an ID. If `actor_gid` is included, this should
          be excluded.'
      - name: actor_gid
        value: ''
        type: query
        description: Filter to events triggered by the actor with this ID.
      - name: resource_gid
        value: ''
        type: query
        description: Filter to events with this resource ID.
      - name: limit
        value: '50'
        type: query
        description: 'Results per page.

          The number of objects to return per page. The value must be between 1 and 100.'
      - name: offset
        value: eyJ0eXAiOJiKV1iQLCJhbGciOiJIUzI1NiJ9
        type: query
        description: 'Offset token.

          An offset to the next page returned by the API. A pagination request will return an offset token, which can be used
          as an input parameter to the next request. If an offset is not passed in, the API will return the first page of
          results.

          *Note: You can only pass in an offset that was returned to you via a previously paginated request.*'
    docs: 'Retrieve the audit log events that have been captured in your domain.


      This endpoint will return a list of [AuditLogEvent](/reference/audit-log-api) objects, sorted by creation time in ascending
      order. Note that the Audit Log API captures events from October 8th, 2021 and later. Queries for events before this
      date will not return results.


      There are a number of query parameters (below) that can be used to filter the set of [AuditLogEvent](/reference/audit-log-api)
      objects that are returned in th'
- info:
    name: Batch API
    type: folder
  items:
  - info:
      name: Asana Submit parallel requests
      type: http
    http:
      method: POST
      url: https://app.asana.com/api/1.0/batch
      params:
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
      - name: opt_fields
        value: body,headers,status_code
        type: query
        description: This endpoint returns a compact resource, which excludes some properties by default. To include those
          optional properties, set this query parameter to a comma-separated list of the properties you wish to include.
      body:
        type: json
        data: '{}'
    docs: Make multiple requests in parallel to Asana's API.
- info:
    name: Custom Field Settings
    type: folder
  items:
  - info:
      name: Asana Get a project's custom fields
      type: http
    http:
      method: GET
      url: https://app.asana.com/api/1.0/projects/:project_gid/custom_field_settings
      params:
      - name: project_gid
        value: '1331'
        type: path
        description: Globally unique identifier for the project.
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
      - name: limit
        value: '50'
        type: query
        description: 'Results per page.

          The number of objects to return per page. The value must be between 1 and 100.'
      - name: offset
        value: eyJ0eXAiOJiKV1iQLCJhbGciOiJIUzI1NiJ9
        type: query
        description: 'Offset token.

          An offset to the next page returned by the API. A pagination request will return an offset token, which can be used
          as an input parameter to the next request. If an offset is not passed in, the API will return the first page of
          results.

          *Note: You can only pass in an offset that was returned to you via a previously paginated request.*'
      - name: opt_fields
        value: custom_field,custom_field.asana_created_field,custom_field.created_by,custom_field.created_by.name,custom_field.currency_code,custom_field.custom_label,custom_field.custom_label_position,custom_field.date_value,custom_field.date_value.date,custom_field.date_value.date_time,custom_field.description,custom_field.display_value,custom_field.enabled,custom_field.enum_options,custom_field.enum_options.color,custom_field.enum_options.enabled,custom_field.enum_options.name,custom_field.enum_value,custom_field.enum_value.color,custom_field.enum_value.enabled,custom_field.enum_value.name,custom_field.format,custom_field.has_notifications_enabled,custom_field.id_prefix,custom_field.is_formula_field,custom_field.is_global_to_workspace,custom_field.is_value_read_only,custom_field.multi_enum_values,custom_field.multi_enum_values.color,custom_field.multi_enum_values.enabled,custom_field.multi_enum_values.name,custom_field.name,custom_field.number_value,custom_field.people_value,custom_field.people_value.name,custom_field.precision,custom_field.representation_type,custom_field.resource_subtype,custom_field.text_value,custom_field.type,is_important,offset,parent,parent.name,path,project,project.name,uri
        type: query
        description: This endpoint returns a compact resource, which excludes some properties by default. To include those
          optional properties, set this query parameter to a comma-separated list of the properties you wish to include.
    docs: Returns a list of all of the custom fields settings on a project, in compact form. Note that, as in all queries
      to collections which return compact representation, `opt_fields` can be used to include more data than is returned in
      the compact representation. See the [documentation for input/output options](https://developers.asana.com/docs/inputoutput-options)
      for more information.
  - info:
      name: Asana Get a portfolio's custom fields
      type: http
    http:
      method: GET
      url: https://app.asana.com/api/1.0/portfolios/:portfolio_gid/custom_field_settings
      params:
      - name: portfolio_gid
        value: '12345'
        type: path
        description: Globally unique identifier for the portfolio.
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
      - name: limit
        value: '50'
        type: query
        description: 'Results per page.

          The number of objects to return per page. The value must be between 1 and 100.'
      - name: offset
        value: eyJ0eXAiOJiKV1iQLCJhbGciOiJIUzI1NiJ9
        type: query
        description: 'Offset token.

          An offset to the next page returned by the API. A pagination request will return an offset token, which can be used
          as an input parameter to the next request. If an offset is not passed in, the API will return the first page of
          results.

          *Note: You can only pass in an offset that was returned to you via a previously paginated request.*'
      - name: opt_fields
        value: custom_field,custom_field.asana_created_field,custom_field.created_by,custom_field.created_by.name,custom_field.currency_code,custom_field.custom_label,custom_field.custom_label_position,custom_field.date_value,custom_field.date_value.date,custom_field.date_value.date_time,custom_field.description,custom_field.display_value,custom_field.enabled,custom_field.enum_options,custom_field.enum_options.color,custom_field.enum_options.enabled,custom_field.enum_options.name,custom_field.enum_value,custom_field.enum_value.color,custom_field.enum_value.enabled,custom_field.enum_value.name,custom_field.format,custom_field.has_notifications_enabled,custom_field.id_prefix,custom_field.is_formula_field,custom_field.is_global_to_workspace,custom_field.is_value_read_only,custom_field.multi_enum_values,custom_field.multi_enum_values.color,custom_field.multi_enum_values.enabled,custom_field.multi_enum_values.name,custom_field.name,custom_field.number_value,custom_field.people_value,custom_field.people_value.name,custom_field.precision,custom_field.representation_type,custom_field.resource_subtype,custom_field.text_value,custom_field.type,is_important,offset,parent,parent.name,path,project,project.name,uri
        type: query
        description: This endpoint returns a compact resource, which excludes some properties by default. To include those
          optional properties, set this query parameter to a comma-separated list of the properties you wish to include.
    docs: Returns a list of all of the custom fields settings on a portfolio, in compact form.
- info:
    name: Custom Fields
    type: folder
  items:
  - info:
      name: Asana Create a custom field
      type: http
    http:
      method: POST
      url: https://app.asana.com/api/1.0/custom_fields
      params:
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
      - name: opt_fields
        value: asana_created_field,created_by,created_by.name,currency_code,custom_label,custom_label_position,date_value,date_value.date,date_value.date_time,description,display_value,enabled,enum_options,enum_options.color,enum_options.enabled,enum_options.name,enum_value,enum_value.color,enum_value.enabled,enum_value.name,format,has_notifications_enabled,id_prefix,is_formula_field,is_global_to_workspace,is_value_read_only,multi_enum_values,multi_enum_values.color,multi_enum_values.enabled,multi_enum_values.name,name,number_value,people_value,people_value.name,precision,representation_type,resource_subtype,text_value,type
        type: query
        description: This endpoint returns a compact resource, which excludes some properties by default. To include those
          optional properties, set this query parameter to a comma-separated list of the properties you wish to include.
      body:
        type: json
        data: '{}'
    docs: 'Creates a new custom field in a workspace. Every custom field is required

      to be created in a specific workspace, and this workspace cannot be

      changed once set.


      A custom field’s name must be unique within a workspace and not conflict

      with names of existing task properties such as `Due Date` or `Assignee`.

      A custom field’s type must be one of `text`, `enum`, `multi_enum`, `number`,

      `date`, or `people`.


      Returns the full record of the newly created custom field.'
  - info:
      name: Asana Get a custom field
      type: http
    http:
      method: GET
      url: https://app.asana.com/api/1.0/custom_fields/:custom_field_gid
      params:
      - name: custom_field_gid
        value: '12345'
        type: path
        description: Globally unique identifier for the custom field.
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
      - name: opt_fields
        value: asana_created_field,created_by,created_by.name,currency_code,custom_label,custom_label_position,date_value,date_value.date,date_value.date_time,description,display_value,enabled,enum_options,enum_options.color,enum_options.enabled,enum_options.name,enum_value,enum_value.color,enum_value.enabled,enum_value.name,format,has_notifications_enabled,id_prefix,is_formula_field,is_global_to_workspace,is_value_read_only,multi_enum_values,multi_enum_values.color,multi_enum_values.enabled,multi_enum_values.name,name,number_value,people_value,people_value.name,precision,representation_type,resource_subtype,text_value,type
        type: query
        description: This endpoint returns a compact resource, which excludes some properties by default. To include those
          optional properties, set this query parameter to a comma-separated list of the properties you wish to include.
    docs: 'Get the complete definition of a custom field’s metadata.


      Since custom fields can be defined for one of a number of types, and

      these types have different data and behaviors, there are fields that are

      relevant to a particular type. For instance, as noted above, enum_options

      is only relevant for the enum type and defines the set of choices that

      the enum could represent. The examples below show some of these

      type-specific custom field definitions.'
  - info:
      name: Asana Update a custom field
      type: http
    http:
      method: PUT
      url: https://app.asana.com/api/1.0/custom_fields/:custom_field_gid
      params:
      - name: custom_field_gid
        value: '12345'
        type: path
        description: Globally unique identifier for the custom field.
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
      - name: opt_fields
        value: asana_created_field,created_by,created_by.name,currency_code,custom_label,custom_label_position,date_value,date_value.date,date_value.date_time,description,display_value,enabled,enum_options,enum_options.color,enum_options.enabled,enum_options.name,enum_value,enum_value.color,enum_value.enabled,enum_value.name,format,has_notifications_enabled,id_prefix,is_formula_field,is_global_to_workspace,is_value_read_only,multi_enum_values,multi_enum_values.color,multi_enum_values.enabled,multi_enum_values.name,name,number_value,people_value,people_value.name,precision,representation_type,resource_subtype,text_value,type
        type: query
        description: This endpoint returns a compact resource, which excludes some properties by default. To include those
          optional properties, set this query parameter to a comma-separated list of the properties you wish to include.
      body:
        type: json
        data: '{}'
    docs: 'A specific, existing custom field can be updated by making a PUT request on the URL for that custom field. Only
      the fields provided in the `data` block will be updated; any unspecified fields will remain unchanged

      When using this method, it is best to specify only those fields you wish to change, or else you may overwrite changes
      made by another user since you last retrieved the custom field.

      A custom field’s `type` cannot be updated.

      An enum custom field’s `enum_options` cannot be updated with '
  - info:
      name: Asana Delete a custom field
      type: http
    http:
      method: DELETE
      url: https://app.asana.com/api/1.0/custom_fields/:custom_field_gid
      params:
      - name: custom_field_gid
        value: '12345'
        type: path
        description: Globally unique identifier for the custom field.
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
    docs: 'A specific, existing custom field can be deleted by making a DELETE request on the URL for that custom field.

      Locked custom fields can only be deleted by the user who locked the field.

      Returns an empty data record.'
  - info:
      name: Asana Get a workspace's custom fields
      type: http
    http:
      method: GET
      url: https://app.asana.com/api/1.0/workspaces/:workspace_gid/custom_fields
      params:
      - name: workspace_gid
        value: '12345'
        type: path
        description: Globally unique identifier for the workspace or organization.
      - name: opt_pretty
        value: 'true'
        type: query
        description: 'Provides “pretty” output.

          Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation
          to make it readable. This will take extra time and increase the response size so it is advisable only to use this
          during debugging.'
      - name: limit
        value: '50'
        type: query
        description: 'Results per page.

          The number of objects to return per page. The value must be between 1 and 100.'
      - name: offset
        value: eyJ0eXAiOJiKV1iQLCJhbGciOiJIUzI1NiJ9
        type: query
        description: 'Offset token.

          An offset to the next page returned by the API. A pagination request will return an offset token, which can be used
          as an input par

# --- truncated at 32 KB (420 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/asana/refs/heads/main/apis.yml