A project represents a prioritized list of tasks in Asana or a board with columns of tasks represented as cards. A project exists in a single workspace or organization and is accessible to a subset of users in that workspace or organization, depending on its permissions.
Projects in organizations are shared with a single team. Currently, the team of a project cannot be changed via the API. Non-organization workspaces do not have teams and so you should not specify the team of project in a regular workspace.
Followers of a project are a subset of the members of that project. Followers of a project will receive all updates including tasks created, added and removed from that project. Members of the project have access to and will receive status updates of the project. Adding followers to a project will add them as members if they are not already, removing followers from a project will not affect membership.
Operating on user task lists
You can use certain project endpoints to operate on user task lists (My Tasks) by substituting the
{project_gid}
with the{user_task_list_gid}
. For example, you can perform operations on the custom fields of a user task list by using the following projects endpoints:
ProjectCompact
Property | Type | Description |
---|---|---|
gid | string | Globally unique identifier of the resource, as a string. |
resource_type | string | The base type of this resource. |
name | string | Name of the project. This is generally a short sentence fragment that fits on a line in the UI for maximum readability. However, it can be longer. |
Example JSON for ProjectCompact
:
{
"gid": "12345",
"resource_type": "project",
"name": "Stuff to buy"
}
Project
Property | Type | Description |
---|---|---|
gid | string | Globally unique identifier of the resource, as a string. |
resource_type | string | The base type of this resource. |
name | string | Name of the project. This is generally a short sentence fragment that fits on a line in the UI for maximum readability. However, it can be longer. |
archived | boolean | True if the project is archived, false if not. Archived projects do not show in the UI by default and may be treated differently for queries. |
color | string | Color of the project. Values can be: dark-pink , dark-green , dark-blue , dark-red , dark-teal , dark-brown , dark-orange , dark-purple , dark-warm-gray , light-pink , light-green , light-blue , light-red , light-teal , light-brown , light-orange , light-purple , light-warm-gray , none , null . |
created_at | string (date-time) | The time at which this resource was created. |
current_status | object | Deprecated: new integrations should prefer the current_status_update resource. |
current_status.gid | string | Globally unique identifier of the resource, as a string. |
current_status.resource_type | string | The base type of this resource. |
current_status.title | string | The title of the project status update. |
current_status.text | string | The text content of the status update. |
current_status.html_text | string | Opt In. The text content of the status update with formatting as HTML. |
current_status.color | string | The color associated with the status update. Values can be: green , yellow , red , blue , complete . |
current_status.author | object | A user object represents an account in Asana that can be given access to various workspaces, projects, and tasks. |
current_status.author.gid | string | Globally unique identifier of the resource, as a string. |
current_status.author.resource_type | string | The base type of this resource. |
current_status.author.name | string | Read-only except when same user as requester. The user’s name. |
current_status.created_at | string (date-time) | The time at which this resource was created. |
current_status.created_by | object | A user object represents an account in Asana that can be given access to various workspaces, projects, and tasks. |
current_status.created_by.gid | string | Globally unique identifier of the resource, as a string. |
current_status.created_by.resource_type | string | The base type of this resource. |
current_status.created_by.name | string | Read-only except when same user as requester. The user’s name. |
current_status.modified_at | string (date-time) | The time at which this project status was last modified. Note: This does not currently reflect any changes in associations such as comments that may have been added or removed from the project status. |
current_status_update | object | The latest status_update posted to this project. |
current_status_update.gid | string | Globally unique identifier of the resource, as a string. |
current_status_update.resource_type | string | The base type of this resource. |
current_status_update.title | string | The title of the status update. |
current_status_update.resource_subtype | string | The subtype of this resource. Different subtypes retain many of the same fields and behavior, but may render differently in Asana or represent resources with different semantic meaning. The resource_subtype s for status objects represent the type of their parent. Values can be: project_status_update , portfolio_status_update , goal_status_update . |
custom_field_settings | [object] | Full object requires scope: |
custom_field_settings[] | object | Custom Fields Settings objects represent the many-to-many join of the Custom Field and Project as well as stores information that is relevant to that particular pairing. |
custom_field_settings[].gid | string | Globally unique identifier of the resource, as a string. |
custom_field_settings[].resource_type | string | The base type of this resource. |
custom_field_settings[].project | object | Deprecated: new integrations should prefer the parent field. The id of the project that this custom field settings refers to. |
custom_field_settings[].project.gid | string | Globally unique identifier of the resource, as a string. |
custom_field_settings[].project.resource_type | string | The base type of this resource. |
custom_field_settings[].project.name | string | Name of the project. This is generally a short sentence fragment that fits on a line in the UI for maximum readability. However, it can be longer. |
custom_field_settings[].is_important | boolean | is_important is used in the Asana web application to determine if this custom field is displayed in the list/grid view of a project or portfolio. |
custom_field_settings[].parent | object | The parent to which the custom field is applied. This can be a project or portfolio and indicates that the tasks or projects that the parent contains may be given custom field values for this custom field. |
custom_field_settings[].parent.gid | string | Globally unique identifier of the resource, as a string. |
custom_field_settings[].parent.resource_type | string | The base type of this resource. |
custom_field_settings[].parent.name | string | Name of the project. This is generally a short sentence fragment that fits on a line in the UI for maximum readability. However, it can be longer. |
custom_field_settings[].custom_field | object | The custom field that is applied to the parent . |
custom_field_settings[].custom_field.gid | string | Globally unique identifier of the resource, as a string. |
custom_field_settings[].custom_field.resource_type | string | The base type of this resource. |
custom_field_settings[].custom_field.name | string | The name of the custom field. |
custom_field_settings[].custom_field.type | string | Deprecated: new integrations should prefer the resource_subtype field. The type of the custom field. Must be one of the given values. Values can be: text , enum , multi_enum , number , date , people . |
custom_field_settings[].custom_field.enum_options | [object] | Conditional. Only relevant for custom fields of type enum or multi_enum . This array specifies the possible values which an enum custom field can adopt. To modify the enum options, refer to working with enum options. |
custom_field_settings[].custom_field.enum_options[] | object | Enum options are the possible values which an enum custom field can adopt. An enum custom field must contain at least 1 enum option but no more than 500. You can add enum options to a custom field by using the POST /custom_fields/custom_field_gid/enum_options endpoint. It is not possible to remove or delete an enum option. Instead, enum options can be disabled by updating the enabled field to false with the PUT /enum_options/enum_option_gid endpoint. Other attributes can be updated similarly. On creation of an enum option, enabled is always set to true , meaning the enum option is a selectable value for the custom field. Setting enabled=false is equivalent to “trashing” the enum option in the Asana web app within the “Edit Fields” dialog. The enum option will no longer be selectable but, if the enum option value was previously set within a task, the task will retain the value. Enum options are an ordered list and by default new enum options are inserted at the end. Ordering in relation to existing enum options can be specified on creation by using insert_before or insert_after to reference an existing enum option. Only one of insert_before and insert_after can be provided when creating a new enum option. An enum options list can be reordered with the POST /custom_fields/custom_field_gid/enum_options/insert endpoint. |
custom_field_settings[].custom_field.enum_options[].gid | string | Globally unique identifier of the resource, as a string. |
custom_field_settings[].custom_field.enum_options[].resource_type | string | The base type of this resource. |
custom_field_settings[].custom_field.enum_options[].name | string | The name of the enum option. |
custom_field_settings[].custom_field.enum_options[].enabled | boolean | Whether or not the enum option is a selectable value for the custom field. |
custom_field_settings[].custom_field.enum_options[].color | string | The color of the enum option. Defaults to none . |
custom_field_settings[].custom_field.enabled | boolean | Conditional. Determines if the custom field is enabled or not. |
custom_field_settings[].custom_field.representation_type | string | This field tells the type of the custom field. Values can be: text , enum , multi_enum , number , date , people , formula , custom_id . |
custom_field_settings[].custom_field.id_prefix | string | This field is the unique custom ID string for the custom field. |
custom_field_settings[].custom_field.is_formula_field | boolean | Conditional. This flag describes whether a custom field is a formula custom field. |
custom_field_settings[].custom_field.date_value | object | Conditional. Only relevant for custom fields of type date . This object reflects the chosen date (and optionally, time) value of a date custom field. If no date is selected, the value of date_value will be null . |
custom_field_settings[].custom_field.date_value.date | string | A string representing the date in YYYY-MM-DD format. |
custom_field_settings[].custom_field.date_value.date_time | string | A string representing the date in ISO 8601 format. If no time value is selected, the value of date-time will be null . |
custom_field_settings[].custom_field.enum_value | object | Conditional. Only relevant for custom fields of type enum . This object is the chosen value of an enum custom field. |
custom_field_settings[].custom_field.enum_value.gid | string | Globally unique identifier of the resource, as a string. |
custom_field_settings[].custom_field.enum_value.resource_type | string | The base type of this resource. |
custom_field_settings[].custom_field.enum_value.name | string | The name of the enum option. |
custom_field_settings[].custom_field.enum_value.enabled | boolean | Whether or not the enum option is a selectable value for the custom field. |
custom_field_settings[].custom_field.enum_value.color | string | The color of the enum option. Defaults to none . |
custom_field_settings[].custom_field.multi_enum_values | [object] | Conditional. Only relevant for custom fields of type multi_enum . This object is the chosen values of a multi_enum custom field. |
custom_field_settings[].custom_field.multi_enum_values[] | object | Enum options are the possible values which an enum custom field can adopt. An enum custom field must contain at least 1 enum option but no more than 500. You can add enum options to a custom field by using the POST /custom_fields/custom_field_gid/enum_options endpoint. It is not possible to remove or delete an enum option. Instead, enum options can be disabled by updating the enabled field to false with the PUT /enum_options/enum_option_gid endpoint. Other attributes can be updated similarly. On creation of an enum option, enabled is always set to true , meaning the enum option is a selectable value for the custom field. Setting enabled=false is equivalent to “trashing” the enum option in the Asana web app within the “Edit Fields” dialog. The enum option will no longer be selectable but, if the enum option value was previously set within a task, the task will retain the value. Enum options are an ordered list and by default new enum options are inserted at the end. Ordering in relation to existing enum options can be specified on creation by using insert_before or insert_after to reference an existing enum option. Only one of insert_before and insert_after can be provided when creating a new enum option. An enum options list can be reordered with the POST /custom_fields/custom_field_gid/enum_options/insert endpoint. |
custom_field_settings[].custom_field.multi_enum_values[].gid | string | Globally unique identifier of the resource, as a string. |
custom_field_settings[].custom_field.multi_enum_values[].resource_type | string | The base type of this resource. |
custom_field_settings[].custom_field.multi_enum_values[].name | string | The name of the enum option. |
custom_field_settings[].custom_field.multi_enum_values[].enabled | boolean | Whether or not the enum option is a selectable value for the custom field. |
custom_field_settings[].custom_field.multi_enum_values[].color | string | The color of the enum option. Defaults to none . |
custom_field_settings[].custom_field.number_value | number | Conditional. This number is the value of a number custom field. |
custom_field_settings[].custom_field.text_value | string | Conditional. This string is the value of a text custom field. |
custom_field_settings[].custom_field.display_value | string | A string representation for the value of the custom field. Integrations that don't require the underlying type should use this field to read values. Using this field will future-proof an app against new custom field types. |
custom_field_settings[].custom_field.description | string | Opt In. The description of the custom field. |
custom_field_settings[].custom_field.precision | integer | Only relevant for custom fields of type Number . This field dictates the number of places after the decimal to round to, i.e. 0 is integer values, 1 rounds to the nearest tenth, and so on. Must be between 0 and 6, inclusive. For percentage format, this may be unintuitive, as a value of 0.25 has a precision of 0, while a value of 0.251 has a precision of 1. This is due to 0.25 being displayed as 25%. The identifier format will always have a precision of 0. |
custom_field_settings[].custom_field.format | string | The format of this custom field. Values can be: currency , identifier , percentage , custom , duration , none . |
custom_field_settings[].custom_field.currency_code | string | ISO 4217 currency code to format this custom field. This will be null if the format is not currency . |
custom_field_settings[].custom_field.custom_label | string | This is the string that appears next to the custom field value. This will be null if the format is not custom . |
custom_field_settings[].custom_field.custom_label_position | string | Only relevant for custom fields with custom format. This depicts where to place the custom label. This will be null if the format is not custom . Values can be: prefix , suffix , null . |
custom_field_settings[].custom_field.is_global_to_workspace | boolean | This flag describes whether this custom field is available to every container in the workspace. Before project-specific custom fields, this field was always true. |
custom_field_settings[].custom_field.has_notifications_enabled | boolean | Conditional. This flag describes whether a follower of a task with this field should receive inbox notifications from changes to this field. |
custom_field_settings[].custom_field.asana_created_field | string | Conditional. A unique identifier to associate this field with the template source of truth. Values can be: a_v_requirements , account_name , actionable , align_shipping_link , align_status , allotted_time , appointment , approval_stage , approved , article_series , board_committee , browser , campaign_audience , campaign_project_status , campaign_regions , channel_primary , client_topic_type , complete_by , contact , contact_email_address , content_channels , content_channels_needed , content_stage , content_type , contract , contract_status , cost , creation_stage , creative_channel , creative_needed , creative_needs , data_sensitivity , deal_size , delivery_appt , delivery_appt_date , department , department_responsible , design_request_needed , design_request_type , discussion_category , do_this_task , editorial_content_status , editorial_content_tag , editorial_content_type , effort , effort_level , est_completion_date , estimated_time , estimated_value , expected_cost , external_steps_needed , favorite_idea , feedback_type , financial , funding_amount , grant_application_process , hiring_candidate_status , idea_status , ids_link , ids_patient_link , implementation_stage , insurance , interview_area , interview_question_score , itero_scan_link , job_s_applied_to , lab , launch_status , lead_status , localization_language , localization_market_team , localization_status , meeting_minutes , meeting_needed , minutes , mrr , must_localize , name_of_foundation , need_to_follow_up , next_appointment , next_steps_sales , num_people , number_of_user_reports , office_location , onboarding_activity , owner , participants_needed , patient_date_of_birth , patient_email , patient_phone , patient_status , phone_number , planning_category , point_of_contact , position , post_format , prescription , priority , priority_level , product , product_stage , progress , project_size , project_status , proposed_budget , publish_status , reason_for_scan , referral , request_type , research_status , responsible_department , responsible_team , risk_assessment_status , room_name , sales_counterpart , sentiment , shipping_link , social_channels , stage , status , status_design , status_of_initiative , system_setup , task_progress , team , team_marketing , team_responsible , time_it_takes_to_complete_tasks , timeframe , treatment_type , type_work_requests_it , use_agency , user_name , vendor_category , vendor_type , word_count , null . |
custom_field_settings[].custom_field.is_value_read_only | boolean | Conditional. This flag describes whether a custom field is read only. |
custom_field_settings[].custom_field.created_by | object | A user object represents an account in Asana that can be given access to various workspaces, projects, and tasks. |
custom_field_settings[].custom_field.created_by.gid | string | Globally unique identifier of the resource, as a string. |
custom_field_settings[].custom_field.created_by.resource_type | string | The base type of this resource. |
custom_field_settings[].custom_field.created_by.name | string | Read-only except when same user as requester. The user’s name. |
custom_field_settings[].custom_field.people_value | [object] | Conditional. Only relevant for custom fields of type people . This array of compact user objects reflects the values of a people custom field. |
custom_field_settings[].custom_field.people_value[] | object | A user object represents an account in Asana that can be given access to various workspaces, projects, and tasks. |
custom_field_settings[].custom_field.people_value[].gid | string | Globally unique identifier of the resource, as a string. |
custom_field_settings[].custom_field.people_value[].resource_type | string | The base type of this resource. |
custom_field_settings[].custom_field.people_value[].name | string | Read-only except when same user as requester. The user’s name. |
custom_field_settings[].custom_field.privacy_setting | string | The privacy setting of the custom field. Note: Administrators in your organization may restrict the values of privacy_setting . Values can be: public_with_guests , public , private . |
custom_field_settings[].custom_field.default_access_level | string | The default access level when inviting new members to the custom field. This isn't applied when the privacy_setting is private , or the user is a guest. For local fields in a project or portfolio, the user must additionally have permission to modify the container itself. Values can be: admin , editor , user . |
custom_field_settings[].custom_field.resource_subtype | string | The type of the custom field. Must be one of the given values. Values can be: text , enum , multi_enum , number , date , people . |
default_view | string | The default view (list, board, calendar, or timeline) of a project. Values can be: list , board , calendar , timeline . |
due_date | string (date) | Deprecated: new integrations should prefer the due_on field. |
due_on | string (date) | The day on which this project is due. This takes a date with format YYYY-MM-DD. |
html_notes | string | Opt In. The notes of the project with formatting as HTML. |
members | [object] | Array of users who are members of this project. |
members[] | object | A user object represents an account in Asana that can be given access to various workspaces, projects, and tasks. |
members[].gid | string | Globally unique identifier of the resource, as a string. |
members[].resource_type | string | The base type of this resource. |
members[].name | string | Read-only except when same user as requester. The user’s name. |
modified_at | string (date-time) | The time at which this project was last modified. Note: This does not currently reflect any changes in associations such as tasks or comments that may have been added or removed from the project. |
notes | string | Free-form textual information associated with the project (ie., its description). |
public | boolean | Deprecated: new integrations use privacy_setting instead. |
privacy_setting | string | The privacy setting of the project. Note: Administrators in your organization may restrict the values of privacy_setting . Values can be: public_to_workspace , private_to_team , private . |
start_on | string (date) | The day on which work for this project begins, or null if the project has no start date. This takes a date with YYYY-MM-DD format. Note: due_on or due_at 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. |
default_access_level | string | The default access for users or teams who join or are added as members to the project. Values can be: admin , editor , commenter , viewer . |
minimum_access_level_for_customization | string | The minimum access level needed for project members to modify this project's workflow and appearance. Values can be: admin , editor . |
minimum_access_level_for_sharing | string | The minimum access level needed for project members to share the project and manage project memberships. Values can be: admin , editor . |
custom_fields | [object] | Full object requires scope: |
custom_fields[] | object | Custom Fields store the metadata that is used in order to add user-specified information to tasks in Asana. Be sure to reference the custom fields developer documentation for more information about how custom fields relate to various resources in Asana. Users in Asana can lock custom fields, which will make them read-only when accessed by other users. Attempting to edit a locked custom field will return HTTP error code 403 Forbidden . |
custom_fields[].gid | string | Globally unique identifier of the resource, as a string. |
custom_fields[].resource_type | string | The base type of this resource. |
custom_fields[].name | string | The name of the custom field. |
custom_fields[].type | string | Deprecated: new integrations should prefer the resource_subtype field. The type of the custom field. Must be one of the given values. Values can be: text , enum , multi_enum , number , date , people . |
custom_fields[].enum_options | [object] | Conditional. Only relevant for custom fields of type enum or multi_enum . This array specifies the possible values which an enum custom field can adopt. To modify the enum options, refer to working with enum options. |
custom_fields[].enum_options[] | object | Enum options are the possible values which an enum custom field can adopt. An enum custom field must contain at least 1 enum option but no more than 500. You can add enum options to a custom field by using the POST /custom_fields/custom_field_gid/enum_options endpoint. It is not possible to remove or delete an enum option. Instead, enum options can be disabled by updating the enabled field to false with the PUT /enum_options/enum_option_gid endpoint. Other attributes can be updated similarly. On creation of an enum option, enabled is always set to true , meaning the enum option is a selectable value for the custom field. Setting enabled=false is equivalent to “trashing” the enum option in the Asana web app within the “Edit Fields” dialog. The enum option will no longer be selectable but, if the enum option value was previously set within a task, the task will retain the value. Enum options are an ordered list and by default new enum options are inserted at the end. Ordering in relation to existing enum options can be specified on creation by using insert_before or insert_after to reference an existing enum option. Only one of insert_before and insert_after can be provided when creating a new enum option. An enum options list can be reordered with the POST /custom_fields/custom_field_gid/enum_options/insert endpoint. |
custom_fields[].enum_options[].gid | string | Globally unique identifier of the resource, as a string. |
custom_fields[].enum_options[].resource_type | string | The base type of this resource. |
custom_fields[].enum_options[].name | string | The name of the enum option. |
custom_fields[].enum_options[].enabled | boolean | Whether or not the enum option is a selectable value for the custom field. |
custom_fields[].enum_options[].color | string | The color of the enum option. Defaults to none . |
custom_fields[].enabled | boolean | Conditional. Determines if the custom field is enabled or not. |
custom_fields[].representation_type | string | This field tells the type of the custom field. Values can be: text , enum , multi_enum , number , date , people , formula , custom_id . |
custom_fields[].id_prefix | string | This field is the unique custom ID string for the custom field. |
custom_fields[].is_formula_field | boolean | Conditional. This flag describes whether a custom field is a formula custom field. |
custom_fields[].date_value | object | Conditional. Only relevant for custom fields of type date . This object reflects the chosen date (and optionally, time) value of a date custom field. If no date is selected, the value of date_value will be null . |
custom_fields[].date_value.date | string | A string representing the date in YYYY-MM-DD format. |
custom_fields[].date_value.date_time | string | A string representing the date in ISO 8601 format. If no time value is selected, the value of date-time will be null . |
custom_fields[].enum_value | object | Conditional. Only relevant for custom fields of type enum . This object is the chosen value of an enum custom field. |
custom_fields[].enum_value.gid | string | Globally unique identifier of the resource, as a string. |
custom_fields[].enum_value.resource_type | string | The base type of this resource. |
custom_fields[].enum_value.name | string | The name of the enum option. |
custom_fields[].enum_value.enabled | boolean | Whether or not the enum option is a selectable value for the custom field. |
custom_fields[].enum_value.color | string | The color of the enum option. Defaults to none . |
custom_fields[].multi_enum_values | [object] | Conditional. Only relevant for custom fields of type multi_enum . This object is the chosen values of a multi_enum custom field. |
custom_fields[].multi_enum_values[] | object | Enum options are the possible values which an enum custom field can adopt. An enum custom field must contain at least 1 enum option but no more than 500. You can add enum options to a custom field by using the POST /custom_fields/custom_field_gid/enum_options endpoint. It is not possible to remove or delete an enum option. Instead, enum options can be disabled by updating the enabled field to false with the PUT /enum_options/enum_option_gid endpoint. Other attributes can be updated similarly. On creation of an enum option, enabled is always set to true , meaning the enum option is a selectable value for the custom field. Setting enabled=false is equivalent to “trashing” the enum option in the Asana web app within the “Edit Fields” dialog. The enum option will no longer be selectable but, if the enum option value was previously set within a task, the task will retain the value. Enum options are an ordered list and by default new enum options are inserted at the end. Ordering in relation to existing enum options can be specified on creation by using insert_before or insert_after to reference an existing enum option. Only one of insert_before and insert_after can be provided when creating a new enum option. An enum options list can be reordered with the POST /custom_fields/custom_field_gid/enum_options/insert endpoint. |
custom_fields[].multi_enum_values[].gid | string | Globally unique identifier of the resource, as a string. |
custom_fields[].multi_enum_values[].resource_type | string | The base type of this resource. |
custom_fields[].multi_enum_values[].name | string | The name of the enum option. |
custom_fields[].multi_enum_values[].enabled | boolean | Whether or not the enum option is a selectable value for the custom field. |
custom_fields[].multi_enum_values[].color | string | The color of the enum option. Defaults to none . |
custom_fields[].number_value | number | Conditional. This number is the value of a number custom field. |
custom_fields[].text_value | string | Conditional. This string is the value of a text custom field. |
custom_fields[].display_value | string | A string representation for the value of the custom field. Integrations that don't require the underlying type should use this field to read values. Using this field will future-proof an app against new custom field types. |
completed | boolean | True if the project is currently marked complete, false if not. |
completed_at | string (date-time) | The time at which this project was completed, or null if the project is not completed. |
completed_by | object | The user that marked this project complete, or null if the project is not completed. |
completed_by.gid | string | Globally unique identifier of the resource, as a string. |
completed_by.resource_type | string | The base type of this resource. |
completed_by.name | string | Read-only except when same user as requester. The user’s name. |
followers | [object] | Array of users following this project. Followers are a subset of members who have opted in to receive "tasks added" notifications for a project. |
followers[] | object | A user object represents an account in Asana that can be given access to various workspaces, projects, and tasks. |
followers[].gid | string | Globally unique identifier of the resource, as a string. |
followers[].resource_type | string | The base type of this resource. |
followers[].name | string | Read-only except when same user as requester. The user’s name. |
owner | object | The current owner of the project, may be null. |
owner.gid | string | Globally unique identifier of the resource, as a string. |
owner.resource_type | string | The base type of this resource. |
owner.name | string | Read-only except when same user as requester. The user’s name. |
team | object | The team that this project is shared with. |
team.gid | string | Globally unique identifier of the resource, as a string. |
team.resource_type | string | The base type of this resource. |
team.name | string | The name of the team. |
icon | string | The icon for a project. Values can be: list , board , timeline , calendar , rocket , people , graph , star , bug , light_bulb , globe , gear , notebook , computer , check , target , html , megaphone , chat_bubbles , briefcase , page_layout , mountain_flag , puzzle , presentation , line_and_symbols , speed_dial , ribbon , shoe , shopping_basket , map , ticket , coins . |
permalink_url | string | A url that points directly to the object within Asana. |
project_brief | object | Opt In. The project brief associated with this project. |
project_brief.gid | string | Globally unique identifier of the resource, as a string. |
project_brief.resource_type | string | The base type of this resource. |
created_from_template | object | Opt In. The project template from which this project was created. If the project was not created from a template, this field will be null. |
created_from_template.gid | string | Globally unique identifier of the resource, as a string. |
created_from_template.resource_type | string | The base type of this resource. |
created_from_template.name | string | Name of the project template. |
workspace | object | Create-only. The workspace or organization this project is associated with. Once created, projects cannot be moved to a different workspace. This attribute can only be specified at creation time. If the workspace for your project is an organization, you must also supply a team in the request body. |
workspace.gid | string | Globally unique identifier of the resource, as a string. |
workspace.resource_type | string | The base type of this resource. |
workspace.name | string | The name of the workspace. |
Example JSON for Project
:
{
"gid": "12345",
"resource_type": "project",
"name": "Stuff to buy",
"archived": false,
"color": "light-green",
"created_at": "2012-02-22T02:06:58.147Z",
"current_status": {
"gid": "12345",
"resource_type": "project_status",
"title": "Status Update - Jun 15",
"text": "The project is moving forward according to plan...",
"html_text": "<body>The project <strong>is</strong> moving forward according to plan...</body>",
"color": "example string",
"author": {
"gid": "12345",
"resource_type": "user",
"name": "Greg Sanchez"
},
"created_at": "2012-02-22T02:06:58.147Z",
"created_by": {
"gid": "12345",
"resource_type": "user",
"name": "Greg Sanchez"
},
"modified_at": "2012-02-22T02:06:58.147Z"
},
"current_status_update": {
"gid": "12345",
"resource_type": "status_update",
"title": "Status Update - Jun 15",
"resource_subtype": "project_status_update"
},
"custom_field_settings": [
{
"gid": "12345",
"resource_type": "custom_field_setting",
"project": {
"gid": "12345",
"resource_type": "project",
"name": "Stuff to buy"
},
"is_important": false,
"parent": {
"gid": "12345",
"resource_type": "project",
"name": "Stuff to buy"
},
"custom_field": {
"gid": "12345",
"resource_type": "custom_field",
"name": "Status",
"type": "example string",
"enum_options": [
{
"gid": "12345",
"resource_type": "enum_option",
"name": "Low",
"enabled": true,
"color": "blue"
}
],
"enabled": true,
"representation_type": "number",
"id_prefix": "ID",
"is_formula_field": false,
"date_value": {
"date": "2024-08-23",
"date_time": "2024-08-23T22:00:00.000Z"
},
"enum_value": {
"gid": "12345",
"resource_type": "enum_option",
"name": "Low",
"enabled": true,
"color": "blue"
},
"multi_enum_values": [
{
"gid": "12345",
"resource_type": "enum_option",
"name": "Low",
"enabled": true,
"color": "blue"
}
],
"number_value": 5.2,
"text_value": "Some Value",
"display_value": "blue",
"description": "Development team priority",
"precision": 2,
"format": "custom",
"currency_code": "EUR",
"custom_label": "gold pieces",
"custom_label_position": "suffix",
"is_global_to_workspace": true,
"has_notifications_enabled": true,
"asana_created_field": "priority",
"is_value_read_only": false,
"created_by": {
"gid": "12345",
"resource_type": "user",
"name": "Greg Sanchez"
},
"people_value": [
{
"gid": "12345",
"resource_type": "user",
"name": "Greg Sanchez"
}
],
"privacy_setting": "public_with_guests",
"default_access_level": "user",
"resource_subtype": "text"
}
}
],
"default_view": "calendar",
"due_date": "2019-09-15",
"due_on": "2019-09-15",
"html_notes": "<body>These are things we need to purchase.</body>",
"members": [
{
"gid": "12345",
"resource_type": "user",
"name": "Greg Sanchez"
}
],
"modified_at": "2012-02-22T02:06:58.147Z",
"notes": "These are things we need to purchase.",
"public": false,
"privacy_setting": "public_to_workspace",
"start_on": "2019-09-14",
"default_access_level": "admin",
"minimum_access_level_for_customization": "admin",
"minimum_access_level_for_sharing": "admin",
"custom_fields": [
{
"gid": "12345",
"resource_type": "custom_field",
"name": "Status",
"type": "example string",
"enum_options": [
{
"gid": "12345",
"resource_type": "enum_option",
"name": "Low",
"enabled": true,
"color": "blue"
}
],
"enabled": true,
"representation_type": "number",
"id_prefix": "ID",
"is_formula_field": false,
"date_value": {
"date": "2024-08-23",
"date_time": "2024-08-23T22:00:00.000Z"
},
"enum_value": {
"gid": "12345",
"resource_type": "enum_option",
"name": "Low",
"enabled": true,
"color": "blue"
},
"multi_enum_values": [
{
"gid": "12345",
"resource_type": "enum_option",
"name": "Low",
"enabled": true,
"color": "blue"
}
],
"number_value": 5.2,
"text_value": "Some Value",
"display_value": "blue"
}
],
"completed": false,
"completed_at": "2012-02-22T02:06:58.147Z",
"completed_by": {
"gid": "12345",
"resource_type": "user",
"name": "Greg Sanchez"
},
"followers": [
{
"gid": "12345",
"resource_type": "user",
"name": "Greg Sanchez"
}
],
"owner": {
"gid": "12345",
"resource_type": "user",
"name": "Greg Sanchez"
},
"team": {
"gid": "12345",
"resource_type": "team",
"name": "Marketing"
},
"icon": "chat_bubbles",
"permalink_url": "https://app.asana.com/1/12345/project/123456789",
"project_brief": {
"gid": "12345",
"resource_type": "project_brief"
},
"created_from_template": {
"gid": "12345",
"resource_type": "project_template",
"name": "Packing list"
},
"workspace": {
"gid": "12345",
"resource_type": "workspace",
"name": "My Company Workspace"
}
}