Asana
  1. Portfolios
Asana
  • Attachments
    • Delete an attachment
      DELETE
    • Get an attachment
      GET
    • Get attachments for a task
      GET
    • Upload an attachment
      POST
  • Batch API
    • Submit parallel requests
      POST
  • Custom Fields
    • Create a custom field
      POST
    • Delete a custom field
      DELETE
    • Get a custom field
      GET
    • Update a custom field
      PUT
    • Create an enum option
      POST
    • Reorder a custom field's enum
      POST
    • Update an enum option
      PUT
    • Get a workspace's custom fields
      GET
  • Events
    • Get events on a resource
      GET
  • Goals
    • Get goals
    • Create a goal
    • Delete a goal
    • Get a goal
    • Update a goal
    • Add a collaborator to a goal
    • Add a subgoal to a parent goal
    • Add a project/portfolio as supporting work for a goal.
    • Get parent goals from a goal
    • Remove a collaborator from a goal
    • Remove a subgoal from a goal
    • Remove a project/portfolio as supporting work for a goal.
    • Create a goal metric
    • Update a goal metric
    • Get subgoals from a goal
    • Get supporting work from a goal
  • Jobs
    • Get a job by id
  • Organization Exports
    • Create an organization export request
    • Get details on an org export request
  • Teams
    • Get teams in an organization
    • Create a team
    • Get a team
    • Add a user to a team
    • Remove a user from a team
    • Get teams for a user
  • Portfolio Memberships
    • Get multiple portfolio memberships
    • Get a portfolio membership
    • Get memberships from a portfolio
  • Portfolios
    • Get multiple portfolios
      GET
    • Create a portfolio
      POST
    • Delete a portfolio
      DELETE
    • Get a portfolio
      GET
    • Update a portfolio
      PUT
    • Add a custom field to a portfolio
      POST
    • Add a portfolio item
      POST
    • Add users to a portfolio
      POST
    • Get portfolio items
      GET
    • Remove a custom field from a portfolio
      POST
    • Remove a portfolio item
      POST
    • Remove users from a portfolio
      POST
  • Custom Field Settings
    • Get a portfolio's custom fields
    • Get a project's custom fields
  • Project Memberships
    • Get a project membership
    • Get memberships from a project
  • Project Statuses
    • Delete a project status
    • Get a project status
    • Get statuses from a project
    • Create a project status
  • Projects
    • Get multiple projects
    • Create a project
    • Delete a project
    • Get a project
    • Update a project
    • Add a custom field to a project
    • Add followers to a project
    • Add users to a project
    • Duplicate a project
    • Remove a custom field from a project
    • Remove followers from a project
    • Remove users from a project
    • Get task count of a project
    • Get projects a task is in
    • Get a team's projects
    • Create a project in a team
    • Get all projects in a workspace
    • Create a project in a workspace
  • Sections
    • Get sections in a project
    • Create a section in a project
    • Move or Insert sections
    • Delete a section
    • Get a section
    • Update a section
    • Add task to section
  • Tasks
    • Get tasks from a project
    • Get tasks from a section
    • Get tasks from a tag
    • Get multiple tasks
    • Create a task
    • Delete a task
    • Get a task
    • Update a task
    • Set dependencies for a task
    • Set dependents for a task
    • Add followers to a task
    • Add a project to a task
    • Add a tag to a task
    • Get dependencies from a task
    • Get dependents from a task
    • Duplicate a task
    • Unlink dependencies from a task
    • Unlink dependents from a task
    • Remove followers from a task
    • Remove a project from a task
    • Remove a tag from a task
    • Set the parent of a task
    • Get subtasks from a task
    • Create a subtask
    • Get tasks from a user task list
    • Search tasks in a workspace
  • Stories
    • Delete a story
    • Get a story
    • Update a story
    • Get stories from a task
    • Create a story on a task
  • Tags
    • Get multiple tags
    • Create a tag
    • Delete a tag
    • Get a tag
    • Update a tag
    • Get a task's tags
    • Get tags in a workspace
    • Create a tag in a workspace
  • Team Memberships
    • Get team memberships
    • Get a team membership
    • Get memberships from a team
    • Get memberships from a user
  • Users
    • Get users in a team
    • Get multiple users
    • Get a user
    • Get a user's favorites
    • Get users in a workspace or organization
  • Time Periods
    • Get time periods
    • Get a time period
  • User Task Lists
    • Get a user task list
    • Get a user's task list
  • Workspace Memberships
    • Get workspace memberships for a user
    • Get a workspace membership
    • Get the workspace memberships for a workspace
  • Webhooks
    • Get multiple webhooks
    • Establish a webhook
    • Delete a webhook
    • Get a webhook
  • Workspaces
    • Get multiple workspaces
    • Get a workspace
    • Update a workspace
    • Add a user to a workspace or organization
    • Remove a user from a workspace or organization
  • Typeahead
    • Get objects via typeahead
  1. Portfolios

Create a portfolio

POST
/portfolios
Portfolios
Creates a new portfolio in the given workspace with the supplied name.
Note that portfolios created in the Asana UI may have some state
(like the “Priority” custom field) which is automatically added
to the portfolio when it is created. Portfolios created via our
API will not be created with the same initial state to allow
integrations to create their own starting state on a portfolio.
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://app.asana.com/api/1.0/portfolios' \
--header 'Content-Type: application/json' \
--data-raw '{
    "data": {
        "name": "Bug Portfolio",
        "color": "light-green",
        "members": [
            "52164",
            "15363"
        ],
        "workspace": "167589"
    }
}'
Response Response Example
201 - Example 1
{
    "data": {
        "gid": "12345",
        "resource_type": "task",
        "name": "Bug Portfolio",
        "color": "light-green",
        "created_at": "2012-02-22T02:06:58.147Z",
        "created_by": {
            "gid": "12345",
            "resource_type": "task",
            "name": "Greg Sanchez"
        },
        "custom_field_settings": [
            {
                "gid": "12345",
                "resource_type": "task",
                "custom_field": {
                    "gid": "12345",
                    "resource_type": "task",
                    "display_value": "blue",
                    "enabled": true,
                    "enum_options": [
                        {
                            "gid": "12345",
                            "resource_type": "task",
                            "color": "blue",
                            "enabled": true,
                            "name": "Low"
                        }
                    ],
                    "name": "Status",
                    "number_value": 5.2,
                    "resource_subtype": "text",
                    "text_value": "Some Value",
                    "type": "text",
                    "currency_code": "EUR",
                    "custom_label": "gold pieces",
                    "custom_label_position": "suffix",
                    "description": "Development team priority",
                    "format": "custom",
                    "has_notifications_enabled": true,
                    "is_global_to_workspace": true,
                    "precision": 2,
                    "created_by": {
                        "gid": "12345",
                        "resource_type": "task",
                        "name": "Greg Sanchez"
                    },
                    "enum_value": {
                        "gid": "12345",
                        "resource_type": "task",
                        "color": "blue",
                        "enabled": true,
                        "name": "Low"
                    },
                    "multi_enum_values": [
                        {
                            "gid": "12345",
                            "resource_type": "task",
                            "color": "blue",
                            "enabled": true,
                            "name": "Low"
                        }
                    ]
                },
                "is_important": false,
                "parent": {
                    "gid": "12345",
                    "resource_type": "task",
                    "name": "Stuff to buy"
                },
                "project": {
                    "gid": "12345",
                    "resource_type": "task",
                    "name": "Stuff to buy"
                }
            }
        ],
        "due_on": "2019-09-15",
        "members": [
            {
                "gid": "12345",
                "resource_type": "task",
                "name": "Greg Sanchez"
            }
        ],
        "owner": {
            "gid": "12345",
            "resource_type": "task",
            "name": "Greg Sanchez"
        },
        "permalink_url": "https://app.asana.com/0/resource/123456789/list",
        "start_on": "2019-09-14",
        "workspace": {
            "gid": "12345",
            "resource_type": "task",
            "name": "My Company Workspace"
        }
    }
}

Request

Body Params application/json
data
object (PortfolioRequest) 
optional
A portfolio gives a high-level overview of the status of multiple initiatives in Asana. Portfolios provide a dashboard overview of the state of multiple projects, including a progress report and the most recent project status update.
Portfolios have some restrictions on size. Each portfolio has a max of 250 items and, like projects, a max of 20 custom fields.
members
array[string]
optional
An array of strings identifying users. These can either be the string "me", an email, or the gid of a user.
Example:
["52164","15363"]
workspace
string 
optional
Gid of an object.
Example:
167589
color
enum<string> 
optional
Color of the portfolio.
Allowed values:
dark-pinkdark-greendark-bluedark-reddark-tealdark-browndark-orangedark-purpledark-warm-graylight-pinklight-greenlight-bluelight-redlight-teallight-brownlight-orangelight-purplelight-warm-gray
Example:
light-green
name
string 
optional
The name of the portfolio.
Example:
Bug Portfolio
Examples

Responses

🟢201Successfully created portfolio.
application/json
Body
data
object (PortfolioResponse) 
optional
A portfolio gives a high-level overview of the status of multiple initiatives in Asana. Portfolios provide a dashboard overview of the state of multiple projects, including a progress report and the most recent project status update.
Portfolios have some restrictions on size. Each portfolio has a max of 250 items and, like projects, a max of 20 custom fields.
created_at
string <date-time>
read-onlyoptional
The time at which this resource was created.
Example:
2012-02-22T02:06:58.147Z
created_by
object 
UserCompact
optional
A user object represents an account in Asana that can be given access to various workspaces, projects, and tasks.
custom_field_settings
array[object (CustomFieldSettingResponse) {6}] 
optional
Array of custom field settings applied to the portfolio.
due_on
string <date-time> | null 
optional
The localized day on which this portfolio is due. This takes a date with format YYYY-MM-DD.
Example:
2019-09-15
members
array[object (UserCompact) {3}] 
read-onlyoptional
owner
object 
UserCompact
optional
A user object represents an account in Asana that can be given access to various workspaces, projects, and tasks.
permalink_url
string 
read-onlyoptional
A url that points directly to the object within Asana.
Example:
https://app.asana.com/0/resource/123456789/list
start_on
string <date> | null 
optional
The day on which work for this portfolio begins, or null if the portfolio has no start date. This takes a date with YYYY-MM-DD format. Note: due_on must be present in the request when setting or unsetting the start_on parameter. Additionally, start_on and due_on cannot be the same date.
Example:
2019-09-14
workspace
object 
optional
Create-only. The workspace or organization that the portfolio belongs to.
color
enum<string> 
optional
Color of the portfolio.
Allowed values:
dark-pinkdark-greendark-bluedark-reddark-tealdark-browndark-orangedark-purpledark-warm-graylight-pinklight-greenlight-bluelight-redlight-teallight-brownlight-orangelight-purplelight-warm-gray
Example:
light-green
gid
string 
read-onlyoptional
Globally unique identifier of the resource, as a string.
Example:
12345
resource_type
string 
read-onlyoptional
The base type of this resource.
Example:
task
name
string 
optional
The name of the portfolio.
Example:
Bug Portfolio
🟠400400
🟠401401
🟠403403
🟠404404
🔴500500
Previous
Get multiple portfolios
Next
Delete a portfolio
Built with