Asana · Schema

ProjectBase

CollaborationProductivityProject ManagementProjectsTask ManagementTasksWorkflow
View JSON Schema on GitHub

JSON Schema

asana-projectbase-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/ProjectBase",
  "title": "ProjectBase",
  "allOf": [
    {
      "$ref": "#/components/schemas/ProjectCompact"
    },
    {
      "type": "object",
      "properties": {
        "archived": {
          "description": "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.",
          "type": "boolean",
          "example": false
        },
        "color": {
          "description": "Color of the project.",
          "type": "string",
          "nullable": true,
          "enum": [
            "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
          ],
          "example": "light-green"
        },
        "created_at": {
          "description": "The time at which this resource was created.",
          "type": "string",
          "format": "date-time",
          "readOnly": true,
          "example": "2012-02-22T02:06:58.147Z"
        },
        "current_status": {
          "allOf": [
            {
              "$ref": "#/components/schemas/ProjectStatusResponse"
            },
            {
              "type": "object",
              "nullable": true,
              "description": "*Deprecated: new integrations should prefer the `current_status_update` resource.*"
            }
          ]
        },
        "current_status_update": {
          "allOf": [
            {
              "$ref": "#/components/schemas/StatusUpdateCompact"
            },
            {
              "type": "object",
              "nullable": true,
              "description": "The latest `status_update` posted to this project."
            }
          ]
        },
        "custom_field_settings": {
          "description": "Array of Custom Field Settings (in compact form).",
          "readOnly": true,
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/CustomFieldSettingResponse"
          }
        },
        "default_view": {
          "description": "The default view (list, board, calendar, or timeline) of a project.",
          "type": "string",
          "enum": [
            "list",
            "board",
            "calendar",
            "timeline"
          ],
          "example": "calendar"
        },
        "due_date": {
          "description": "*Deprecated: new integrations should prefer the `due_on` field.*",
          "type": "string",
          "nullable": true,
          "format": "date",
          "example": "2019-09-15"
        },
        "due_on": {
          "description": "The day on which this project is due. This takes a date with format YYYY-MM-DD.",
          "type": "string",
          "nullable": true,
          "format": "date",
          "example": "2019-09-15"
        },
        "html_notes": {
          "description": "[Opt In](/docs/inputoutput-options). The notes of the project with formatting as HTML.",
          "type": "string",
          "example": "<body>These are things we need to purchase.</body>"
        },
        "members": {
          "description": "Array of users who are members of this project.",
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/UserCompact"
          },
          "readOnly": true
        },
        "modified_at": {
          "description": "The time at which this project was last modified.\n*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.*",
          "type": "string",
          "readOnly": true,
          "format": "date-time",
          "example": "2012-02-22T02:06:58.147Z"
        },
        "notes": {
          "description": "Free-form textual information associated with the project (ie., its description).",
          "type": "string",
          "example": "These are things we need to purchase."
        },
        "public": {
          "description": "*Deprecated:* new integrations use `privacy_setting` instead.",
          "type": "boolean",
          "deprecated": true,
          "example": false
        },
        "privacy_setting": {
          "description": "The privacy setting of the project. *Note: Administrators in your organization may restrict the values of `privacy_setting`.*",
          "type": "string",
          "enum": [
            "public_to_workspace",
            "private_to_team",
            "private"
          ],
          "example": "public_to_workspace"
        },
        "start_on": {
          "description": "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.*",
          "type": "string",
          "nullable": true,
          "format": "date",
          "example": "2019-09-14"
        },
        "default_access_level": {
          "description": "The default access for users or teams who join or are added as members to the project.",
          "type": "string",
          "enum": [
            "admin",
            "editor",
            "commenter",
            "viewer"
          ],
          "example": "admin"
        },
        "minimum_access_level_for_customization": {
          "description": "The minimum access level needed for project members to modify this project's workflow and appearance.",
          "type": "string",
          "enum": [
            "admin",
            "editor"
          ],
          "example": "admin"
        },
        "minimum_access_level_for_sharing": {
          "description": "The minimum access level needed for project members to share the project and manage project memberships.",
          "type": "string",
          "enum": [
            "admin",
            "editor"
          ],
          "example": "admin"
        }
      }
    }
  ]
}