API Documentation

API Endpoint

Projects

Projects

For more details on how to work with custom fields please refer to Working with custom fields guide.

Note: For archived projects, only the name and project_manager_id attributes can be updated. All other attributes will be ignored during update operations.

Supported filter params

  • id

  • project_type (1: internal, 2: client)

  • company_id (array)

  • responsible_id (array)

  • person_id (array)

  • status (1: active, 2: archived)

  • query

Filter operations are supported on this endpoint.

GET /api/v2/projects
Requestsreturns projects

GET  /api/v2/projects

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Responses200
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": [
    {
      "id": "804",
      "type": "projects",
      "attributes": {
        "name": "test project",
        "number": "1",
        "preferences": {},
        "project_number": "1",
        "project_type_id": 2,
        "project_color_id": null,
        "last_activity_at": "2025-09-23T06:07:15.000+02:00",
        "time_on_tasks": true,
        "tag_colors": {},
        "archived_at": null,
        "created_at": "2025-09-23T06:07:15.649+02:00",
        "template": false,
        "duplication_status": "idle",
        "custom_fields": null,
        "task_custom_fields_ids": null,
        "task_custom_fields_positions": null,
        "page_custom_fields_ids": null,
        "page_custom_fields_positions": null,
        "sample_data": false
      },
      "relationships": {
        "organization": {
          "data": {
            "type": "organizations",
            "id": "1000"
          }
        },
        "company": {
          "meta": {
            "included": false
          }
        },
        "project_manager": {
          "meta": {
            "included": false
          }
        },
        "last_actor": {
          "meta": {
            "included": false
          }
        },
        "workflow": {
          "meta": {
            "included": false
          }
        },
        "custom_field_people": {
          "meta": {
            "included": false
          }
        },
        "custom_field_attachments": {
          "meta": {
            "included": false
          }
        },
        "template_object": {
          "meta": {
            "included": false
          }
        }
      }
    },
    {
      "id": "806",
      "type": "projects",
      "attributes": {
        "name": "test project",
        "number": "3",
        "preferences": {},
        "project_number": "3",
        "project_type_id": 2,
        "project_color_id": null,
        "last_activity_at": "2025-09-23T06:07:15.000+02:00",
        "time_on_tasks": false,
        "tag_colors": {},
        "archived_at": null,
        "created_at": "2025-09-23T06:07:15.705+02:00",
        "template": false,
        "duplication_status": "idle",
        "custom_fields": null,
        "task_custom_fields_ids": null,
        "task_custom_fields_positions": null,
        "page_custom_fields_ids": null,
        "page_custom_fields_positions": null,
        "sample_data": false
      },
      "relationships": {
        "organization": {
          "data": {
            "type": "organizations",
            "id": "1000"
          }
        },
        "company": {
          "meta": {
            "included": false
          }
        },
        "project_manager": {
          "meta": {
            "included": false
          }
        },
        "last_actor": {
          "meta": {
            "included": false
          }
        },
        "workflow": {
          "meta": {
            "included": false
          }
        },
        "custom_field_people": {
          "meta": {
            "included": false
          }
        },
        "custom_field_attachments": {
          "meta": {
            "included": false
          }
        },
        "template_object": {
          "meta": {
            "included": false
          }
        }
      }
    },
    {
      "id": "807",
      "type": "projects",
      "attributes": {
        "name": "test project",
        "number": "4",
        "preferences": {},
        "project_number": "4",
        "project_type_id": 2,
        "project_color_id": null,
        "last_activity_at": "2025-09-23T06:07:15.000+02:00",
        "time_on_tasks": false,
        "tag_colors": {},
        "archived_at": null,
        "created_at": "2025-09-23T06:07:15.718+02:00",
        "template": false,
        "duplication_status": "idle",
        "custom_fields": null,
        "task_custom_fields_ids": null,
        "task_custom_fields_positions": null,
        "page_custom_fields_ids": null,
        "page_custom_fields_positions": null,
        "sample_data": false
      },
      "relationships": {
        "organization": {
          "data": {
            "type": "organizations",
            "id": "1000"
          }
        },
        "company": {
          "meta": {
            "included": false
          }
        },
        "project_manager": {
          "meta": {
            "included": false
          }
        },
        "last_actor": {
          "meta": {
            "included": false
          }
        },
        "workflow": {
          "meta": {
            "included": false
          }
        },
        "custom_field_people": {
          "meta": {
            "included": false
          }
        },
        "custom_field_attachments": {
          "meta": {
            "included": false
          }
        },
        "template_object": {
          "meta": {
            "included": false
          }
        }
      }
    }
  ],
  "links": {
    "first": "http://api-test.productive.io/api/v2/projects?page%5Bnumber%5D=1&page%5Bsize%5D=30",
    "last": "http://api-test.productive.io/api/v2/projects?page%5Bnumber%5D=1&page%5Bsize%5D=30"
  },
  "meta": {
    "current_page": 1,
    "total_pages": 1,
    "total_count": 3,
    "page_size": 30,
    "max_page_size": 200
  }
}

Get projects
GET/api/v2/projects


GET /api/v2/projects/1
Requestsreturns project

GET  /api/v2/projects/812

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Responses200
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "812",
    "type": "projects",
    "attributes": {
      "name": "test project",
      "number": "1",
      "preferences": {},
      "project_number": "1",
      "project_type_id": 2,
      "project_color_id": null,
      "last_activity_at": "2025-09-23T06:07:15.000+02:00",
      "time_on_tasks": true,
      "tag_colors": {},
      "archived_at": null,
      "created_at": "2025-09-23T06:07:15.942+02:00",
      "template": false,
      "duplication_status": "idle",
      "custom_fields": null,
      "task_custom_fields_ids": null,
      "task_custom_fields_positions": null,
      "page_custom_fields_ids": null,
      "page_custom_fields_positions": null,
      "sample_data": false
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "1002"
        }
      },
      "company": {
        "meta": {
          "included": false
        }
      },
      "project_manager": {
        "meta": {
          "included": false
        }
      },
      "last_actor": {
        "meta": {
          "included": false
        }
      },
      "workflow": {
        "meta": {
          "included": false
        }
      },
      "custom_field_people": {
        "meta": {
          "included": false
        }
      },
      "custom_field_attachments": {
        "meta": {
          "included": false
        }
      },
      "template_object": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

Gets a project
GET/api/v2/projects/{id}

URI Parameters
HideShow
id
number (required) Example: 1

project id


POST /api/v2/projects
Requestscreates project, tracks intercom event and calls Automations::Projects::Schedulerreturns error

POST  /api/v2/projects

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "name": "test name",
      "project_type_id": 2
    },
    "relationships": {
      "company": {
        "data": {
          "type": "companies",
          "id": "2655"
        }
      },
      "project_manager": {
        "data": {
          "type": "people",
          "id": "3605"
        }
      },
      "workflow": {
        "data": {
          "type": "workflows",
          "id": "906"
        }
      }
    }
  }
}
Responses201
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "814",
    "type": "projects",
    "attributes": {
      "name": "test name",
      "number": "2",
      "preferences": null,
      "project_number": "2",
      "project_type_id": 2,
      "project_color_id": null,
      "last_activity_at": "2025-09-23T06:07:16.000+02:00",
      "time_on_tasks": false,
      "tag_colors": {},
      "archived_at": null,
      "created_at": "2025-09-23T06:07:16.048+02:00",
      "template": false,
      "duplication_status": "idle",
      "custom_fields": null,
      "task_custom_fields_ids": null,
      "task_custom_fields_positions": {},
      "page_custom_fields_ids": null,
      "page_custom_fields_positions": {},
      "sample_data": false
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "1003"
        }
      },
      "company": {
        "meta": {
          "included": false
        }
      },
      "project_manager": {
        "meta": {
          "included": false
        }
      },
      "last_actor": {
        "meta": {
          "included": false
        }
      },
      "workflow": {
        "meta": {
          "included": false
        }
      },
      "custom_field_people": {
        "meta": {
          "included": false
        }
      },
      "custom_field_attachments": {
        "meta": {
          "included": false
        }
      },
      "template_object": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

POST  /api/v2/projects

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "name": ""
    }
  }
}
Responses422
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "errors": [
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "attribute is invalid",
      "source": {
        "pointer": "data/attributes/workflow"
      }
    }
  ]
}

Create a project
POST/api/v2/projects

URI Parameters
HideShow
name
string (required) Example: Name

name

project_manager_id
number (required) Example: 1

project manager id

company_id
number (required) Example: 1

company id

workflow_id
number (required) Example: 1

worfklow id


PATCH /api/v2/projects/1
Requestsupdates project and calls Automations::Projects::Schedulerupdates only name and project_managerreturns errordoes not change workflow

PATCH  /api/v2/projects/819

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "name": "new name"
    }
  }
}
Responses200
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "819",
    "type": "projects",
    "attributes": {
      "name": "new name",
      "number": "1",
      "preferences": {},
      "project_number": "1",
      "project_type_id": 2,
      "project_color_id": null,
      "last_activity_at": "2025-09-23T06:07:16.000+02:00",
      "time_on_tasks": true,
      "tag_colors": {},
      "archived_at": null,
      "created_at": "2025-09-23T06:07:16.393+02:00",
      "template": false,
      "duplication_status": "idle",
      "custom_fields": null,
      "task_custom_fields_ids": null,
      "task_custom_fields_positions": {},
      "page_custom_fields_ids": null,
      "page_custom_fields_positions": {},
      "sample_data": false
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "1008"
        }
      },
      "company": {
        "meta": {
          "included": false
        }
      },
      "project_manager": {
        "meta": {
          "included": false
        }
      },
      "last_actor": {
        "meta": {
          "included": false
        }
      },
      "workflow": {
        "meta": {
          "included": false
        }
      },
      "custom_field_people": {
        "meta": {
          "included": false
        }
      },
      "custom_field_attachments": {
        "meta": {
          "included": false
        }
      },
      "template_object": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

PATCH  /api/v2/projects/820

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "name": "new name",
      "project_manager_id": 3612,
      "project_type_id": 2,
      "project_color_id": 2
    }
  }
}
Responses200
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "820",
    "type": "projects",
    "attributes": {
      "name": "new name",
      "number": "1",
      "preferences": {},
      "project_number": "1",
      "project_type_id": 1,
      "project_color_id": 1,
      "last_activity_at": "2025-09-23T06:07:16.000+02:00",
      "time_on_tasks": false,
      "tag_colors": {},
      "archived_at": "2025-09-23T06:07:16.000+02:00",
      "created_at": "2025-09-23T06:07:16.475+02:00",
      "template": false,
      "duplication_status": "idle",
      "custom_fields": null,
      "task_custom_fields_ids": null,
      "task_custom_fields_positions": {},
      "page_custom_fields_ids": null,
      "page_custom_fields_positions": {},
      "sample_data": false
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "1009"
        }
      },
      "company": {
        "meta": {
          "included": false
        }
      },
      "project_manager": {
        "meta": {
          "included": false
        }
      },
      "last_actor": {
        "meta": {
          "included": false
        }
      },
      "workflow": {
        "meta": {
          "included": false
        }
      },
      "custom_field_people": {
        "meta": {
          "included": false
        }
      },
      "custom_field_attachments": {
        "meta": {
          "included": false
        }
      },
      "template_object": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

PATCH  /api/v2/projects/823

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "name": ""
    }
  }
}
Responses422
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "errors": [
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "can't be blank",
      "source": {
        "pointer": "data/attributes/name"
      }
    }
  ]
}

PATCH  /api/v2/projects/824

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "workflow_id": 921
    }
  }
}
Responses200
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "824",
    "type": "projects",
    "attributes": {
      "name": "test project",
      "number": "1",
      "preferences": {},
      "project_number": "1",
      "project_type_id": 2,
      "project_color_id": null,
      "last_activity_at": "2025-09-23T06:07:17.000+02:00",
      "time_on_tasks": true,
      "tag_colors": {},
      "archived_at": null,
      "created_at": "2025-09-23T06:07:17.011+02:00",
      "template": false,
      "duplication_status": "idle",
      "custom_fields": null,
      "task_custom_fields_ids": null,
      "task_custom_fields_positions": {},
      "page_custom_fields_ids": null,
      "page_custom_fields_positions": {},
      "sample_data": false
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "1012"
        }
      },
      "company": {
        "meta": {
          "included": false
        }
      },
      "project_manager": {
        "meta": {
          "included": false
        }
      },
      "last_actor": {
        "meta": {
          "included": false
        }
      },
      "workflow": {
        "meta": {
          "included": false
        }
      },
      "custom_field_people": {
        "meta": {
          "included": false
        }
      },
      "custom_field_attachments": {
        "meta": {
          "included": false
        }
      },
      "template_object": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

Update a project
PATCH/api/v2/projects/{id}

URI Parameters
HideShow
id
number (required) Example: 1

project id


PATCH /api/v2/projects/1/archive
Requestsarchives project and calls Automations::Projects::Scheduler

PATCH  /api/v2/projects/825/archive

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Responses200
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "825",
    "type": "projects",
    "attributes": {
      "name": "test project",
      "number": "1",
      "preferences": {},
      "project_number": "1",
      "project_type_id": 2,
      "project_color_id": null,
      "last_activity_at": "2025-09-23T06:07:17.000+02:00",
      "time_on_tasks": true,
      "tag_colors": {},
      "archived_at": "2025-09-23T06:07:17.000+02:00",
      "created_at": "2025-09-23T06:07:17.089+02:00",
      "template": false,
      "duplication_status": "idle",
      "custom_fields": null,
      "task_custom_fields_ids": null,
      "task_custom_fields_positions": null,
      "page_custom_fields_ids": null,
      "page_custom_fields_positions": null,
      "sample_data": false
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "1013"
        }
      },
      "company": {
        "meta": {
          "included": false
        }
      },
      "project_manager": {
        "meta": {
          "included": false
        }
      },
      "last_actor": {
        "meta": {
          "included": false
        }
      },
      "workflow": {
        "meta": {
          "included": false
        }
      },
      "custom_field_people": {
        "meta": {
          "included": false
        }
      },
      "custom_field_attachments": {
        "meta": {
          "included": false
        }
      },
      "template_object": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

Archives a project
PATCH/api/v2/projects/{id}/archive

URI Parameters
HideShow
id
number (required) Example: 1

project id


PATCH /api/v2/projects/1/restore
Requestsrestores project

PATCH  /api/v2/projects/826/restore

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Responses200
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "826",
    "type": "projects",
    "attributes": {
      "name": "test project",
      "number": "1",
      "preferences": {},
      "project_number": "1",
      "project_type_id": 2,
      "project_color_id": null,
      "last_activity_at": "2025-09-23T06:07:17.000+02:00",
      "time_on_tasks": false,
      "tag_colors": {},
      "archived_at": null,
      "created_at": "2025-09-23T06:07:17.169+02:00",
      "template": false,
      "duplication_status": "idle",
      "custom_fields": null,
      "task_custom_fields_ids": null,
      "task_custom_fields_positions": null,
      "page_custom_fields_ids": null,
      "page_custom_fields_positions": null,
      "sample_data": false
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "1014"
        }
      },
      "company": {
        "meta": {
          "included": false
        }
      },
      "project_manager": {
        "meta": {
          "included": false
        }
      },
      "last_actor": {
        "meta": {
          "included": false
        }
      },
      "workflow": {
        "meta": {
          "included": false
        }
      },
      "custom_field_people": {
        "meta": {
          "included": false
        }
      },
      "custom_field_attachments": {
        "meta": {
          "included": false
        }
      },
      "template_object": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

Restores a project
PATCH/api/v2/projects/{id}/restore

URI Parameters
HideShow
id
number (required) Example: 1

project id


DELETE /api/v2/projects/1
Requestsdeletes project and calls Automations::Projects::Scheduler

DELETE  /api/v2/projects/827

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Responses204
This response has no content.

Deletes a project
DELETE/api/v2/projects/{id}

URI Parameters
HideShow
id
number (required) Example: 1

project id


POST /api/v2/projects/copy
Requestscreates project and enqueues job with correct parameterscreates template project when creating template from projectcreates project when creating project from templatedoes not copy dealsreturns error

POST  /api/v2/projects/copy

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "name": "This is a name",
      "template_id": 828,
      "company_id": 2685,
      "project_type_id": 2,
      "copy_memberships": true,
      "copy_boards": true,
      "copy_task_lists": true,
      "copy_open_tasks": true,
      "copy_closed_tasks": false,
      "copy_task_comments": false,
      "copy_task_subscribers": false,
      "copy_assignees": false,
      "copy_tags": false,
      "copy_estimate": true,
      "copy_views": true
    }
  }
}
Responses201
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "829",
    "type": "projects",
    "attributes": {
      "name": "This is a name",
      "number": "2",
      "preferences": {},
      "project_number": "2",
      "project_color_id": null
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "1016"
        }
      },
      "company": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

POST  /api/v2/projects/copy

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "name": "This is a name",
      "description": "This is a description",
      "template_id": 831,
      "company_id": 2688,
      "project_type_id": 2,
      "copy_memberships": true,
      "copy_boards": true,
      "copy_task_lists": true,
      "copy_open_tasks": true,
      "copy_task_comments": false,
      "copy_task_subscribers": false,
      "copy_assignees": false,
      "copy_tags": false,
      "copy_estimate": true,
      "copy_views": true,
      "copy_as_template": true
    }
  }
}
Responses201
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "832",
    "type": "projects",
    "attributes": {
      "name": "This is a name",
      "number": null,
      "preferences": {},
      "project_number": null,
      "project_color_id": null
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "1017"
        }
      },
      "company": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

POST  /api/v2/projects/copy

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "name": "This is a name",
      "template_id": 835,
      "company_id": 2692,
      "project_type_id": 2,
      "copy_memberships": true,
      "copy_boards": true,
      "copy_task_lists": true,
      "copy_open_tasks": true,
      "copy_task_comments": false,
      "copy_task_subscribers": false,
      "copy_assignees": false,
      "copy_tags": false,
      "copy_estimate": true,
      "copy_views": true,
      "copy_as_template": false
    }
  }
}
Responses201
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "836",
    "type": "projects",
    "attributes": {
      "name": "This is a name",
      "number": "4",
      "preferences": {},
      "project_number": "4",
      "project_color_id": null
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "1018"
        }
      },
      "company": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

POST  /api/v2/projects/copy

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "name": "This is a name",
      "template_id": 837,
      "project_type_id": 1,
      "copy_deals": true
    }
  }
}
Responses201
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "838",
    "type": "projects",
    "attributes": {
      "name": "This is a name",
      "number": "2",
      "preferences": {},
      "project_number": "2",
      "project_color_id": null
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "1019"
        }
      },
      "company": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

POST  /api/v2/projects/copy

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {}
  }
}
Responses422
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "errors": [
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "can't be blank",
      "source": {
        "pointer": "data/attributes/name"
      }
    },
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "can't be blank",
      "source": {
        "pointer": "data/attributes/template"
      }
    },
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "can't be blank",
      "source": {
        "pointer": "data/attributes/project_type_id"
      }
    },
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "is not included in the list",
      "source": {
        "pointer": "data/attributes/project_type_id"
      }
    }
  ]
}

Copies a project
POST/api/v2/projects/copy


PATCH /api/v2/projects/change_workflow
Requestschanges project workflow and maps tasks and schedules automationsreturn errorreturn errorreturn errorreturn errorreturn error

PATCH  /api/v2/projects/852/change_workflow

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "map": {
        "1047": 1051,
        "1048": 1052,
        "1049": 1051
      }
    },
    "relationships": {
      "workflow": {
        "data": {
          "type": "workflows",
          "id": "947"
        }
      }
    }
  }
}
Responses200
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "852",
    "type": "projects",
    "attributes": {
      "name": "test project",
      "number": "1",
      "preferences": {},
      "project_number": "1",
      "project_type_id": 2,
      "project_color_id": null,
      "last_activity_at": "2025-09-23T06:07:18.000+02:00",
      "time_on_tasks": false,
      "tag_colors": {},
      "archived_at": null,
      "created_at": "2025-09-23T06:07:18.565+02:00",
      "template": false,
      "duplication_status": "idle",
      "custom_fields": null,
      "task_custom_fields_ids": null,
      "task_custom_fields_positions": null,
      "page_custom_fields_ids": null,
      "page_custom_fields_positions": null,
      "sample_data": false
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "1022"
        }
      },
      "company": {
        "meta": {
          "included": false
        }
      },
      "project_manager": {
        "meta": {
          "included": false
        }
      },
      "last_actor": {
        "meta": {
          "included": false
        }
      },
      "workflow": {
        "meta": {
          "included": false
        }
      },
      "custom_field_people": {
        "meta": {
          "included": false
        }
      },
      "custom_field_attachments": {
        "meta": {
          "included": false
        }
      },
      "template_object": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

PATCH  /api/v2/projects/863/change_workflow

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "map": {}
    },
    "relationships": {
      "workflow": {
        "data": {
          "type": "workflows",
          "id": "970"
        }
      }
    }
  }
}
Responses422
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "errors": [
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "can't be blank",
      "source": {
        "pointer": "data/attributes/map"
      }
    },
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "must have 2 (including one closed) or more workflow statuses defined",
      "source": {
        "pointer": "data/attributes/workflow"
      }
    },
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "doesn't contain all statuses from current project workflow",
      "source": {
        "pointer": "data/attributes/map"
      }
    }
  ]
}

PATCH  /api/v2/projects/874/change_workflow

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "map": {
        "1080": 1084,
        "1081": 1085,
        "1082": 1084
      }
    },
    "relationships": {
      "workflow": {
        "data": {
          "type": "workflows",
          "id": "0"
        }
      }
    }
  }
}
Responses422
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "errors": [
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "attribute is invalid",
      "source": {
        "pointer": "data/attributes/workflow"
      }
    }
  ]
}

PATCH  /api/v2/projects/885/change_workflow

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {},
    "relationships": {
      "workflow": {
        "data": {
          "type": "workflows",
          "id": "984"
        }
      }
    }
  }
}
Responses422
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "errors": [
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "can't be blank",
      "source": {
        "pointer": "data/attributes/map"
      }
    }
  ]
}

PATCH  /api/v2/projects/896/change_workflow

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "map": {
        "1112": 1116,
        "1113": 1117
      }
    },
    "relationships": {
      "workflow": {
        "data": {
          "type": "workflows",
          "id": "996"
        }
      }
    }
  }
}
Responses422
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "errors": [
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "doesn't contain all statuses from current project workflow",
      "source": {
        "pointer": "data/attributes/map"
      }
    }
  ]
}

PATCH  /api/v2/projects/907/change_workflow

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "map": {
        "1128": 1132,
        "1129": "0",
        "1130": 1132
      }
    },
    "relationships": {
      "workflow": {
        "data": {
          "type": "workflows",
          "id": "1008"
        }
      }
    }
  }
}
Responses422
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "errors": [
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "contains invalid statuses",
      "source": {
        "pointer": "data/attributes/map"
      }
    }
  ]
}

Changes workflow on project
PATCH/api/v2/projects/change_workflow

URI Parameters
HideShow
workflow_id
number (required) Example: 1

workflow id

map
json (required) Example: %7B+1%3A+5%2C+2%3A+6+%7D

mapping from current workflow statuses to new workflow statuses


PATCH /api/v2/projects/map_to_workflow
Requestsmaps tasks from task lists to statusesreturns errorreturns errorreturns error

PATCH  /api/v2/projects/923/map_to_workflow

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "map": {
        "136": 1156,
        "137": 1157,
        "138": 1155
      }
    }
  }
}
Responses200
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "923",
    "type": "projects",
    "attributes": {
      "name": "test project",
      "number": "1",
      "preferences": {},
      "project_number": "1",
      "project_type_id": 2,
      "project_color_id": null,
      "last_activity_at": "2025-09-23T06:07:23.000+02:00",
      "time_on_tasks": false,
      "tag_colors": {},
      "archived_at": null,
      "created_at": "2025-09-23T06:07:23.253+02:00",
      "template": false,
      "duplication_status": "idle",
      "custom_fields": null,
      "task_custom_fields_ids": null,
      "task_custom_fields_positions": null,
      "page_custom_fields_ids": null,
      "page_custom_fields_positions": null,
      "sample_data": false
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "1029"
        }
      },
      "company": {
        "meta": {
          "included": false
        }
      },
      "project_manager": {
        "meta": {
          "included": false
        }
      },
      "last_actor": {
        "meta": {
          "included": false
        }
      },
      "workflow": {
        "meta": {
          "included": false
        }
      },
      "custom_field_people": {
        "meta": {
          "included": false
        }
      },
      "custom_field_attachments": {
        "meta": {
          "included": false
        }
      },
      "template_object": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

PATCH  /api/v2/projects/927/map_to_workflow

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {}
  }
}
Responses422
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "errors": [
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "can't be blank",
      "source": {
        "pointer": "data/attributes/map"
      }
    }
  ]
}

PATCH  /api/v2/projects/931/map_to_workflow

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "map": {
        "0": 1171,
        "142": 1170
      }
    }
  }
}
Responses422
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "errors": [
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "contains invalid task_list_id",
      "source": {
        "pointer": "data/attributes/map"
      }
    }
  ]
}

PATCH  /api/v2/projects/935/map_to_workflow

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "projects",
    "attributes": {
      "map": {
        "145": 1181,
        "146": "0"
      }
    }
  }
}
Responses422
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "errors": [
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "contains invalid statuses",
      "source": {
        "pointer": "data/attributes/map"
      }
    }
  ]
}

Change workflow on project and map task lists to workflow statuses on project tasks
PATCH/api/v2/projects/map_to_workflow

URI Parameters
HideShow
workflow_id
number (required) Example: 1

workflow id

map
json (required) Example: %7B1%3A+5%2C+2%3A+6%7D

mapping from task lists to workflow statuses


Generated by aglio on 23 Sep 2025