Projects

In this article

Did this doc help you?

List organization projects

Lists the projects in an organization. Returns a 404 Not Found status if projects are disabled in the organization. If you do not have sufficient privileges to perform this action, a 401 Unauthorized or 410 Gone status is returned.

get /orgs/{org}/projects

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
org string path
state string query

Indicates the state of the projects to return. Can be either open, closed, or all.

per_page integer query

Results per page (max 100)

page integer query

Page number of the results to fetch.

Code samples

Shell
curl \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/orgs/ORG/projects
JavaScript (@octokit/core.js)
await octokit.request('GET /orgs/{org}/projects', {
  org: 'org',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 200 OK
[
  {
    "owner_url": "https://api.github.com/orgs/octocat",
    "url": "https://api.github.com/projects/1002605",
    "html_url": "https://github.com/orgs/api-playground/projects/1",
    "columns_url": "https://api.github.com/projects/1002605/columns",
    "id": 1002605,
    "node_id": "MDc6UHJvamVjdDEwMDI2MDU=",
    "name": "Organization Roadmap",
    "body": "High-level roadmap for the upcoming year.",
    "number": 1,
    "state": "open",
    "creator": {
      "login": "octocat",
      "id": 1,
      "node_id": "MDQ6VXNlcjE=",
      "avatar_url": "https://github.com/images/error/octocat_happy.gif",
      "gravatar_id": "",
      "url": "https://api.github.com/users/octocat",
      "html_url": "https://github.com/octocat",
      "followers_url": "https://api.github.com/users/octocat/followers",
      "following_url": "https://api.github.com/users/octocat/following{/other_user}",
      "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
      "organizations_url": "https://api.github.com/users/octocat/orgs",
      "repos_url": "https://api.github.com/users/octocat/repos",
      "events_url": "https://api.github.com/users/octocat/events{/privacy}",
      "received_events_url": "https://api.github.com/users/octocat/received_events",
      "type": "User",
      "site_admin": false
    },
    "created_at": "2011-04-11T20:09:31Z",
    "updated_at": "2014-03-04T18:58:10Z"
  }
]

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

Create an organization project

Creates an organization project board. Returns a 404 Not Found status if projects are disabled in the organization. If you do not have sufficient privileges to perform this action, a 401 Unauthorized or 410 Gone status is returned.

post /orgs/{org}/projects

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
org string path
name string body

Required. The name of the project.

body string body

The description of the project.

Code samples

Shell
curl \
  -X POST \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/orgs/ORG/projects \
  -d '{"name":"name"}'
JavaScript (@octokit/core.js)
await octokit.request('POST /orgs/{org}/projects', {
  org: 'org',
  name: 'name',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 201 Created
{
  "owner_url": "https://api.github.com/orgs/octocat",
  "url": "https://api.github.com/projects/1002605",
  "html_url": "https://github.com/orgs/api-playground/projects/1",
  "columns_url": "https://api.github.com/projects/1002605/columns",
  "id": 1002605,
  "node_id": "MDc6UHJvamVjdDEwMDI2MDU=",
  "name": "Organization Roadmap",
  "body": "High-level roadmap for the upcoming year.",
  "number": 1,
  "state": "open",
  "creator": {
    "login": "octocat",
    "id": 1,
    "node_id": "MDQ6VXNlcjE=",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "gravatar_id": "",
    "url": "https://api.github.com/users/octocat",
    "html_url": "https://github.com/octocat",
    "followers_url": "https://api.github.com/users/octocat/followers",
    "following_url": "https://api.github.com/users/octocat/following{/other_user}",
    "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
    "organizations_url": "https://api.github.com/users/octocat/orgs",
    "repos_url": "https://api.github.com/users/octocat/repos",
    "events_url": "https://api.github.com/users/octocat/events{/privacy}",
    "received_events_url": "https://api.github.com/users/octocat/received_events",
    "type": "User",
    "site_admin": false
  },
  "created_at": "2011-04-11T20:09:31Z",
  "updated_at": "2014-03-04T18:58:10Z"
}

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

Get a project

Gets a project by its id. Returns a 404 Not Found status if projects are disabled. If you do not have sufficient privileges to perform this action, a 401 Unauthorized or 410 Gone status is returned.

get /projects/{project_id}

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
project_id integer path

Code samples

Shell
curl \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/42
JavaScript (@octokit/core.js)
await octokit.request('GET /projects/{project_id}', {
  project_id: 42,
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 200 OK
{
  "owner_url": "https://api.github.com/repos/api-playground/projects-test",
  "url": "https://api.github.com/projects/1002604",
  "html_url": "https://github.com/api-playground/projects-test/projects/1",
  "columns_url": "https://api.github.com/projects/1002604/columns",
  "id": 1002604,
  "node_id": "MDc6UHJvamVjdDEwMDI2MDQ=",
  "name": "Projects Documentation",
  "body": "Developer documentation project for the developer site.",
  "number": 1,
  "state": "open",
  "creator": {
    "login": "octocat",
    "id": 1,
    "node_id": "MDQ6VXNlcjE=",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "gravatar_id": "",
    "url": "https://api.github.com/users/octocat",
    "html_url": "https://github.com/octocat",
    "followers_url": "https://api.github.com/users/octocat/followers",
    "following_url": "https://api.github.com/users/octocat/following{/other_user}",
    "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
    "organizations_url": "https://api.github.com/users/octocat/orgs",
    "repos_url": "https://api.github.com/users/octocat/repos",
    "events_url": "https://api.github.com/users/octocat/events{/privacy}",
    "received_events_url": "https://api.github.com/users/octocat/received_events",
    "type": "User",
    "site_admin": false
  },
  "created_at": "2011-04-10T20:09:31Z",
  "updated_at": "2014-03-03T18:58:10Z"
}

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

Update a project

Updates a project board's information. Returns a 404 Not Found status if projects are disabled. If you do not have sufficient privileges to perform this action, a 401 Unauthorized or 410 Gone status is returned.

patch /projects/{project_id}

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
project_id integer path
name string body

The name of the project.

body string body

The description of the project.

state string body

State of the project. Either open or closed.

organization_permission string body

The permission level that determines whether all members of the project's organization can see and/or make changes to the project. Setting organization_permission is only available for organization projects. If an organization member belongs to a team with a higher level of access or is a collaborator with a higher level of access, their permission level is not lowered by organization_permission. For information on changing access for a team or collaborator, see Add or update team project permissions or Add project collaborator.

Note: Updating a project's organization_permission requires admin access to the project.

Can be one of:
* read - Organization members can read, but not write to or administer this project.
* write - Organization members can read and write, but not administer this project.
* admin - Organization members can read, write and administer this project.
* none - Organization members can only see this project if it is public.

private boolean body

Sets the visibility of a project board. Setting private is only available for organization and user projects. Note: Updating a project's visibility requires admin access to the project.

Can be one of:
* false - Anyone can see the project.
* true - Only the user can view a project board created on a user account. Organization members with the appropriate organization_permission can see project boards in an organization account.

Code samples

Shell
curl \
  -X PATCH \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/42 \
  -d '{"name":"name"}'
JavaScript (@octokit/core.js)
await octokit.request('PATCH /projects/{project_id}', {
  project_id: 42,
  name: 'name',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 200 OK
{
  "owner_url": "https://api.github.com/repos/api-playground/projects-test",
  "url": "https://api.github.com/projects/1002604",
  "html_url": "https://github.com/api-playground/projects-test/projects/1",
  "columns_url": "https://api.github.com/projects/1002604/columns",
  "id": 1002604,
  "node_id": "MDc6UHJvamVjdDEwMDI2MDQ=",
  "name": "Projects Documentation",
  "body": "Developer documentation project for the developer site.",
  "number": 1,
  "state": "open",
  "creator": {
    "login": "octocat",
    "id": 1,
    "node_id": "MDQ6VXNlcjE=",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "gravatar_id": "",
    "url": "https://api.github.com/users/octocat",
    "html_url": "https://github.com/octocat",
    "followers_url": "https://api.github.com/users/octocat/followers",
    "following_url": "https://api.github.com/users/octocat/following{/other_user}",
    "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
    "organizations_url": "https://api.github.com/users/octocat/orgs",
    "repos_url": "https://api.github.com/users/octocat/repos",
    "events_url": "https://api.github.com/users/octocat/events{/privacy}",
    "received_events_url": "https://api.github.com/users/octocat/received_events",
    "type": "User",
    "site_admin": false
  },
  "created_at": "2011-04-10T20:09:31Z",
  "updated_at": "2014-03-03T18:58:10Z"
}

Response if the authenticated user does not have access to the project

Status: 404 Not Found

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

Delete a project

Deletes a project board. Returns a 404 Not Found status if projects are disabled.

delete /projects/{project_id}

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
project_id integer path

Code samples

Shell
curl \
  -X DELETE \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/42
JavaScript (@octokit/core.js)
await octokit.request('DELETE /projects/{project_id}', {
  project_id: 42,
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Response definition missing

Status: 418 I'm A Teapot

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

List repository projects

Lists the projects in a repository. Returns a 404 Not Found status if projects are disabled in the repository. If you do not have sufficient privileges to perform this action, a 401 Unauthorized or 410 Gone status is returned.

get /repos/{owner}/{repo}/projects

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
owner string path
repo string path
state string query

Indicates the state of the projects to return. Can be either open, closed, or all.

per_page integer query

Results per page (max 100)

page integer query

Page number of the results to fetch.

Code samples

Shell
curl \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/repos/octocat/hello-world/projects
JavaScript (@octokit/core.js)
await octokit.request('GET /repos/{owner}/{repo}/projects', {
  owner: 'octocat',
  repo: 'hello-world',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 200 OK
[
  {
    "owner_url": "https://api.github.com/repos/api-playground/projects-test",
    "url": "https://api.github.com/projects/1002604",
    "html_url": "https://github.com/api-playground/projects-test/projects/1",
    "columns_url": "https://api.github.com/projects/1002604/columns",
    "id": 1002604,
    "node_id": "MDc6UHJvamVjdDEwMDI2MDQ=",
    "name": "Projects Documentation",
    "body": "Developer documentation project for the developer site.",
    "number": 1,
    "state": "open",
    "creator": {
      "login": "octocat",
      "id": 1,
      "node_id": "MDQ6VXNlcjE=",
      "avatar_url": "https://github.com/images/error/octocat_happy.gif",
      "gravatar_id": "",
      "url": "https://api.github.com/users/octocat",
      "html_url": "https://github.com/octocat",
      "followers_url": "https://api.github.com/users/octocat/followers",
      "following_url": "https://api.github.com/users/octocat/following{/other_user}",
      "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
      "organizations_url": "https://api.github.com/users/octocat/orgs",
      "repos_url": "https://api.github.com/users/octocat/repos",
      "events_url": "https://api.github.com/users/octocat/events{/privacy}",
      "received_events_url": "https://api.github.com/users/octocat/received_events",
      "type": "User",
      "site_admin": false
    },
    "created_at": "2011-04-10T20:09:31Z",
    "updated_at": "2014-03-03T18:58:10Z"
  }
]

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

Create a repository project

Creates a repository project board. Returns a 404 Not Found status if projects are disabled in the repository. If you do not have sufficient privileges to perform this action, a 401 Unauthorized or 410 Gone status is returned.

post /repos/{owner}/{repo}/projects

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
owner string path
repo string path
name string body

Required. The name of the project.

body string body

The description of the project.

Code samples

Shell
curl \
  -X POST \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/repos/octocat/hello-world/projects \
  -d '{"name":"name"}'
JavaScript (@octokit/core.js)
await octokit.request('POST /repos/{owner}/{repo}/projects', {
  owner: 'octocat',
  repo: 'hello-world',
  name: 'name',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 201 Created
{
  "owner_url": "https://api.github.com/repos/api-playground/projects-test",
  "url": "https://api.github.com/projects/1002604",
  "html_url": "https://github.com/api-playground/projects-test/projects/1",
  "columns_url": "https://api.github.com/projects/1002604/columns",
  "id": 1002604,
  "node_id": "MDc6UHJvamVjdDEwMDI2MDQ=",
  "name": "Projects Documentation",
  "body": "Developer documentation project for the developer site.",
  "number": 1,
  "state": "open",
  "creator": {
    "login": "octocat",
    "id": 1,
    "node_id": "MDQ6VXNlcjE=",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "gravatar_id": "",
    "url": "https://api.github.com/users/octocat",
    "html_url": "https://github.com/octocat",
    "followers_url": "https://api.github.com/users/octocat/followers",
    "following_url": "https://api.github.com/users/octocat/following{/other_user}",
    "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
    "organizations_url": "https://api.github.com/users/octocat/orgs",
    "repos_url": "https://api.github.com/users/octocat/repos",
    "events_url": "https://api.github.com/users/octocat/events{/privacy}",
    "received_events_url": "https://api.github.com/users/octocat/received_events",
    "type": "User",
    "site_admin": false
  },
  "created_at": "2011-04-10T20:09:31Z",
  "updated_at": "2014-03-03T18:58:10Z"
}

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

post /user/projects

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
name string body

Required. The name of the project.

body string body

The description of the project.

Code samples

Shell
curl \
  -X POST \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/user/projects \
  -d '{"name":"name"}'
JavaScript (@octokit/core.js)
await octokit.request('POST /user/projects', {
  name: 'name',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 201 Created
{
  "owner_url": "https://api.github.com/users/octocat",
  "url": "https://api.github.com/projects/1002603",
  "html_url": "https://github.com/users/octocat/projects/1",
  "columns_url": "https://api.github.com/projects/1002603/columns",
  "id": 1002603,
  "node_id": "MDc6UHJvamVjdDEwMDI2MDM=",
  "name": "My Projects",
  "body": "A board to manage my personal projects.",
  "number": 1,
  "state": "open",
  "creator": {
    "login": "octocat",
    "id": 1,
    "node_id": "MDQ6VXNlcjE=",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "gravatar_id": "",
    "url": "https://api.github.com/users/octocat",
    "html_url": "https://github.com/octocat",
    "followers_url": "https://api.github.com/users/octocat/followers",
    "following_url": "https://api.github.com/users/octocat/following{/other_user}",
    "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
    "organizations_url": "https://api.github.com/users/octocat/orgs",
    "repos_url": "https://api.github.com/users/octocat/repos",
    "events_url": "https://api.github.com/users/octocat/events{/privacy}",
    "received_events_url": "https://api.github.com/users/octocat/received_events",
    "type": "User",
    "site_admin": false
  },
  "created_at": "2011-04-10T20:09:31Z",
  "updated_at": "2014-03-03T18:58:10Z"
}

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

get /users/{username}/projects

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
username string path
state string query

Indicates the state of the projects to return. Can be either open, closed, or all.

per_page integer query

Results per page (max 100)

page integer query

Page number of the results to fetch.

Code samples

Shell
curl \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/users/USERNAME/projects
JavaScript (@octokit/core.js)
await octokit.request('GET /users/{username}/projects', {
  username: 'username',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 200 OK
[
  {
    "owner_url": "https://api.github.com/users/octocat",
    "url": "https://api.github.com/projects/1002603",
    "html_url": "https://github.com/users/octocat/projects/1",
    "columns_url": "https://api.github.com/projects/1002603/columns",
    "id": 1002603,
    "node_id": "MDc6UHJvamVjdDEwMDI2MDM=",
    "name": "My Projects",
    "body": "A board to manage my personal projects.",
    "number": 1,
    "state": "open",
    "creator": {
      "login": "octocat",
      "id": 1,
      "node_id": "MDQ6VXNlcjE=",
      "avatar_url": "https://github.com/images/error/octocat_happy.gif",
      "gravatar_id": "",
      "url": "https://api.github.com/users/octocat",
      "html_url": "https://github.com/octocat",
      "followers_url": "https://api.github.com/users/octocat/followers",
      "following_url": "https://api.github.com/users/octocat/following{/other_user}",
      "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
      "organizations_url": "https://api.github.com/users/octocat/orgs",
      "repos_url": "https://api.github.com/users/octocat/repos",
      "events_url": "https://api.github.com/users/octocat/events{/privacy}",
      "received_events_url": "https://api.github.com/users/octocat/received_events",
      "type": "User",
      "site_admin": false
    },
    "created_at": "2011-04-10T20:09:31Z",
    "updated_at": "2014-03-03T18:58:10Z"
  }
]

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

Cards

get /projects/columns/cards/{card_id}

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
card_id integer path

Code samples

Shell
curl \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/columns/cards/42
JavaScript (@octokit/core.js)
await octokit.request('GET /projects/columns/cards/{card_id}', {
  card_id: 42,
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 200 OK
{
  "url": "https://api.github.com/projects/columns/cards/1478",
  "id": 1478,
  "node_id": "MDExOlByb2plY3RDYXJkMTQ3OA==",
  "note": "Add payload for delete Project column",
  "creator": {
    "login": "octocat",
    "id": 1,
    "node_id": "MDQ6VXNlcjE=",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "gravatar_id": "",
    "url": "https://api.github.com/users/octocat",
    "html_url": "https://github.com/octocat",
    "followers_url": "https://api.github.com/users/octocat/followers",
    "following_url": "https://api.github.com/users/octocat/following{/other_user}",
    "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
    "organizations_url": "https://api.github.com/users/octocat/orgs",
    "repos_url": "https://api.github.com/users/octocat/repos",
    "events_url": "https://api.github.com/users/octocat/events{/privacy}",
    "received_events_url": "https://api.github.com/users/octocat/received_events",
    "type": "User",
    "site_admin": false
  },
  "created_at": "2016-09-05T14:21:06Z",
  "updated_at": "2016-09-05T14:20:22Z",
  "archived": false,
  "column_url": "https://api.github.com/projects/columns/367",
  "content_url": "https://api.github.com/repos/api-playground/projects-test/issues/3",
  "project_url": "https://api.github.com/projects/120"
}

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

patch /projects/columns/cards/{card_id}

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
card_id integer path
note string body

The card's note content. Only valid for cards without another type of content, so this cannot be specified if the card already has a content_id and content_type.

archived boolean body

Use true to archive a project card. Specify false if you need to restore a previously archived project card.

Code samples

Shell
curl \
  -X PATCH \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/columns/cards/42 \
  -d '{"note":"note"}'
JavaScript (@octokit/core.js)
await octokit.request('PATCH /projects/columns/cards/{card_id}', {
  card_id: 42,
  note: 'note',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 200 OK
{
  "url": "https://api.github.com/projects/columns/cards/1478",
  "id": 1478,
  "node_id": "MDExOlByb2plY3RDYXJkMTQ3OA==",
  "note": "Add payload for delete Project column",
  "creator": {
    "login": "octocat",
    "id": 1,
    "node_id": "MDQ6VXNlcjE=",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "gravatar_id": "",
    "url": "https://api.github.com/users/octocat",
    "html_url": "https://github.com/octocat",
    "followers_url": "https://api.github.com/users/octocat/followers",
    "following_url": "https://api.github.com/users/octocat/following{/other_user}",
    "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
    "organizations_url": "https://api.github.com/users/octocat/orgs",
    "repos_url": "https://api.github.com/users/octocat/repos",
    "events_url": "https://api.github.com/users/octocat/events{/privacy}",
    "received_events_url": "https://api.github.com/users/octocat/received_events",
    "type": "User",
    "site_admin": false
  },
  "created_at": "2016-09-05T14:21:06Z",
  "updated_at": "2016-09-05T14:20:22Z",
  "archived": false,
  "column_url": "https://api.github.com/projects/columns/367",
  "content_url": "https://api.github.com/repos/api-playground/projects-test/issues/3",
  "project_url": "https://api.github.com/projects/120"
}

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

delete /projects/columns/cards/{card_id}

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
card_id integer path

Code samples

Shell
curl \
  -X DELETE \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/columns/cards/42
JavaScript (@octokit/core.js)
await octokit.request('DELETE /projects/columns/cards/{card_id}', {
  card_id: 42,
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default Response

Status: 204 No Content

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

post /projects/columns/cards/{card_id}/moves

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
card_id integer path
position string body

Required. Can be one of top, bottom, or after:<card_id>, where <card_id> is the id value of a card in the same column, or in the new column specified by column_id.

column_id integer body

The id value of a column in the same project.

Code samples

Shell
curl \
  -X POST \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/columns/cards/42/moves \
  -d '{"position":"position"}'
JavaScript (@octokit/core.js)
await octokit.request('POST /projects/columns/cards/{card_id}/moves', {
  card_id: 42,
  position: 'position',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Response

Status: 201 Created

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

get /projects/columns/{column_id}/cards

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
column_id integer path
archived_state string query

Filters the project cards that are returned by the card's state. Can be one of all,archived, or not_archived.

per_page integer query

Results per page (max 100)

page integer query

Page number of the results to fetch.

Code samples

Shell
curl \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/columns/42/cards
JavaScript (@octokit/core.js)
await octokit.request('GET /projects/columns/{column_id}/cards', {
  column_id: 42,
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 200 OK
[
  {
    "url": "https://api.github.com/projects/columns/cards/1478",
    "id": 1478,
    "node_id": "MDExOlByb2plY3RDYXJkMTQ3OA==",
    "note": "Add payload for delete Project column",
    "creator": {
      "login": "octocat",
      "id": 1,
      "node_id": "MDQ6VXNlcjE=",
      "avatar_url": "https://github.com/images/error/octocat_happy.gif",
      "gravatar_id": "",
      "url": "https://api.github.com/users/octocat",
      "html_url": "https://github.com/octocat",
      "followers_url": "https://api.github.com/users/octocat/followers",
      "following_url": "https://api.github.com/users/octocat/following{/other_user}",
      "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
      "organizations_url": "https://api.github.com/users/octocat/orgs",
      "repos_url": "https://api.github.com/users/octocat/repos",
      "events_url": "https://api.github.com/users/octocat/events{/privacy}",
      "received_events_url": "https://api.github.com/users/octocat/received_events",
      "type": "User",
      "site_admin": false
    },
    "created_at": "2016-09-05T14:21:06Z",
    "updated_at": "2016-09-05T14:20:22Z",
    "archived": false,
    "column_url": "https://api.github.com/projects/columns/367",
    "content_url": "https://api.github.com/repos/api-playground/projects-test/issues/3",
    "project_url": "https://api.github.com/projects/120"
  }
]

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

Create a project card

Note: GitHub's REST API v3 considers every pull request an issue, but not every issue is a pull request. For this reason, "Issues" endpoints may return both issues and pull requests in the response. You can identify pull requests by the pull_request key.

Be aware that the id of a pull request returned from "Issues" endpoints will be an issue id. To find out the pull request id, use the "List pull requests" endpoint.

post /projects/columns/{column_id}/cards

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
column_id integer path
note string body

The card's note content. Only valid for cards without another type of content, so you must omit when specifying content_id and content_type.

content_id integer body

The issue or pull request id you want to associate with this card. You can use the List repository issues and List pull requests endpoints to find this id.
Note: Depending on whether you use the issue id or pull request id, you will need to specify Issue or PullRequest as the content_type.

content_type string body

Required if you provide content_id. The type of content you want to associate with this card. Use Issue when content_id is an issue id and use PullRequest when content_id is a pull request id.

Code samples

Shell
curl \
  -X POST \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/columns/42/cards \
  -d '{"note":"note"}'
JavaScript (@octokit/core.js)
await octokit.request('POST /projects/columns/{column_id}/cards', {
  column_id: 42,
  note: 'note',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 201 Created
{
  "url": "https://api.github.com/projects/columns/cards/1478",
  "id": 1478,
  "node_id": "MDExOlByb2plY3RDYXJkMTQ3OA==",
  "note": "Add payload for delete Project column",
  "creator": {
    "login": "octocat",
    "id": 1,
    "node_id": "MDQ6VXNlcjE=",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "gravatar_id": "",
    "url": "https://api.github.com/users/octocat",
    "html_url": "https://github.com/octocat",
    "followers_url": "https://api.github.com/users/octocat/followers",
    "following_url": "https://api.github.com/users/octocat/following{/other_user}",
    "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
    "organizations_url": "https://api.github.com/users/octocat/orgs",
    "repos_url": "https://api.github.com/users/octocat/repos",
    "events_url": "https://api.github.com/users/octocat/events{/privacy}",
    "received_events_url": "https://api.github.com/users/octocat/received_events",
    "type": "User",
    "site_admin": false
  },
  "created_at": "2016-09-05T14:21:06Z",
  "updated_at": "2016-09-05T14:20:22Z",
  "archived": false,
  "column_url": "https://api.github.com/projects/columns/367",
  "content_url": "https://api.github.com/repos/api-playground/projects-test/issues/3",
  "project_url": "https://api.github.com/projects/120"
}

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

Collaborators

This API allows you to interact with an organization's projects.

List project collaborators

Lists the collaborators for an organization project. For a project, the list of collaborators includes outside collaborators, organization members that are direct collaborators, organization members with access through team memberships, organization members with access through default organization permissions, and organization owners. You must be an organization owner or a project admin to list collaborators.

get /projects/{project_id}/collaborators

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
project_id integer path
affiliation string query

Filters the collaborators by their affiliation. Can be one of:
* outside: Outside collaborators of a project that are not a member of the project's organization.
* direct: Collaborators with permissions to a project, regardless of organization membership status.
* all: All collaborators the authenticated user can see.

per_page integer query

Results per page (max 100)

page integer query

Page number of the results to fetch.

Code samples

Shell
curl \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/42/collaborators
JavaScript (@octokit/core.js)
await octokit.request('GET /projects/{project_id}/collaborators', {
  project_id: 42,
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 200 OK
[
  {
    "login": "octocat",
    "id": 1,
    "node_id": "MDQ6VXNlcjE=",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "gravatar_id": "",
    "url": "https://api.github.com/users/octocat",
    "html_url": "https://github.com/octocat",
    "followers_url": "https://api.github.com/users/octocat/followers",
    "following_url": "https://api.github.com/users/octocat/following{/other_user}",
    "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
    "organizations_url": "https://api.github.com/users/octocat/orgs",
    "repos_url": "https://api.github.com/users/octocat/repos",
    "events_url": "https://api.github.com/users/octocat/events{/privacy}",
    "received_events_url": "https://api.github.com/users/octocat/received_events",
    "type": "User",
    "site_admin": false
  }
]

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

Add project collaborator

Adds a collaborator to an organization project and sets their permission level. You must be an organization owner or a project admin to add a collaborator.

put /projects/{project_id}/collaborators/{username}

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
project_id integer path
username string path
permission string body

The permission to grant the collaborator. Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see "HTTP verbs." Can be one of:
* read - can read, but not write to or administer this project.
* write - can read and write, but not administer this project.
* admin - can read, write and administer this project.

Default: write

Code samples

Shell
curl \
  -X PUT \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/42/collaborators/USERNAME \
  -d '{"permission":"permission"}'
JavaScript (@octokit/core.js)
await octokit.request('PUT /projects/{project_id}/collaborators/{username}', {
  project_id: 42,
  username: 'username',
  permission: 'permission',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default Response

Status: 204 No Content

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

Remove project collaborator

Removes a collaborator from an organization project. You must be an organization owner or a project admin to remove a collaborator.

delete /projects/{project_id}/collaborators/{username}

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
project_id integer path
username string path

Code samples

Shell
curl \
  -X DELETE \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/42/collaborators/USERNAME
JavaScript (@octokit/core.js)
await octokit.request('DELETE /projects/{project_id}/collaborators/{username}', {
  project_id: 42,
  username: 'username',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default Response

Status: 204 No Content

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

Get project permission for a user

Returns the collaborator's permission level for an organization project. Possible values for the permission key: admin, write, read, none. You must be an organization owner or a project admin to review a user's permission level.

get /projects/{project_id}/collaborators/{username}/permission

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
project_id integer path
username string path

Code samples

Shell
curl \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/42/collaborators/USERNAME/permission
JavaScript (@octokit/core.js)
await octokit.request('GET /projects/{project_id}/collaborators/{username}/permission', {
  project_id: 42,
  username: 'username',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 200 OK
{
  "permission": "admin",
  "user": {
    "login": "octocat",
    "id": 1,
    "node_id": "MDQ6VXNlcjE=",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "gravatar_id": "",
    "url": "https://api.github.com/users/octocat",
    "html_url": "https://github.com/octocat",
    "followers_url": "https://api.github.com/users/octocat/followers",
    "following_url": "https://api.github.com/users/octocat/following{/other_user}",
    "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
    "organizations_url": "https://api.github.com/users/octocat/orgs",
    "repos_url": "https://api.github.com/users/octocat/repos",
    "events_url": "https://api.github.com/users/octocat/events{/privacy}",
    "received_events_url": "https://api.github.com/users/octocat/received_events",
    "type": "User",
    "site_admin": false
  }
}

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

Columns

get /projects/columns/{column_id}

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
column_id integer path

Code samples

Shell
curl \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/columns/42
JavaScript (@octokit/core.js)
await octokit.request('GET /projects/columns/{column_id}', {
  column_id: 42,
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 200 OK
{
  "url": "https://api.github.com/projects/columns/367",
  "project_url": "https://api.github.com/projects/120",
  "cards_url": "https://api.github.com/projects/columns/367/cards",
  "id": 367,
  "node_id": "MDEzOlByb2plY3RDb2x1bW4zNjc=",
  "name": "To Do",
  "created_at": "2016-09-05T14:18:44Z",
  "updated_at": "2016-09-05T14:22:28Z"
}

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

patch /projects/columns/{column_id}

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
column_id integer path
name string body

Required. The new name of the column.

Code samples

Shell
curl \
  -X PATCH \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/columns/42 \
  -d '{"name":"name"}'
JavaScript (@octokit/core.js)
await octokit.request('PATCH /projects/columns/{column_id}', {
  column_id: 42,
  name: 'name',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 200 OK
{
  "url": "https://api.github.com/projects/columns/367",
  "project_url": "https://api.github.com/projects/120",
  "cards_url": "https://api.github.com/projects/columns/367/cards",
  "id": 367,
  "node_id": "MDEzOlByb2plY3RDb2x1bW4zNjc=",
  "name": "To Do",
  "created_at": "2016-09-05T14:18:44Z",
  "updated_at": "2016-09-05T14:22:28Z"
}

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

delete /projects/columns/{column_id}

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
column_id integer path

Code samples

Shell
curl \
  -X DELETE \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/columns/42
JavaScript (@octokit/core.js)
await octokit.request('DELETE /projects/columns/{column_id}', {
  column_id: 42,
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default Response

Status: 204 No Content

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

post /projects/columns/{column_id}/moves

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
column_id integer path
position string body

Required. Can be one of first, last, or after:<column_id>, where <column_id> is the id value of a column in the same project.

Code samples

Shell
curl \
  -X POST \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/columns/42/moves \
  -d '{"position":"position"}'
JavaScript (@octokit/core.js)
await octokit.request('POST /projects/columns/{column_id}/moves', {
  column_id: 42,
  position: 'position',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Response

Status: 201 Created

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

get /projects/{project_id}/columns

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
project_id integer path
per_page integer query

Results per page (max 100)

page integer query

Page number of the results to fetch.

Code samples

Shell
curl \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/42/columns
JavaScript (@octokit/core.js)
await octokit.request('GET /projects/{project_id}/columns', {
  project_id: 42,
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 200 OK
[
  {
    "url": "https://api.github.com/projects/columns/367",
    "project_url": "https://api.github.com/projects/120",
    "cards_url": "https://api.github.com/projects/columns/367/cards",
    "id": 367,
    "node_id": "MDEzOlByb2plY3RDb2x1bW4zNjc=",
    "name": "To Do",
    "created_at": "2016-09-05T14:18:44Z",
    "updated_at": "2016-09-05T14:22:28Z"
  }
]

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

post /projects/{project_id}/columns

Parameters

Name Type In Description
accept string header

This API is under preview and subject to change.

See preview notice.
project_id integer path
name string body

Required. The name of the column.

Code samples

Shell
curl \
  -X POST \
  -H "Accept: application/vnd.github.inertia-preview+json" \
  https://{hostname}/projects/42/columns \
  -d '{"name":"name"}'
JavaScript (@octokit/core.js)
await octokit.request('POST /projects/{project_id}/columns', {
  project_id: 42,
  name: 'name',
  mediaType: {
    previews: [
      'inertia'
    ]
  }
})

Default response

Status: 200 OK
{
  "url": "https://api.github.com/projects/columns/367",
  "project_url": "https://api.github.com/projects/120",
  "cards_url": "https://api.github.com/projects/columns/367/cards",
  "id": 367,
  "node_id": "MDEzOlByb2plY3RDb2x1bW4zNjc=",
  "name": "To Do",
  "created_at": "2016-09-05T14:18:44Z",
  "updated_at": "2016-09-05T14:22:28Z"
}

Notes

Preview notice

The Projects API is currently available for developers to preview. During the preview period, the API may change without advance notice. Please see the blog post for full details. To access the API during the preview period, you must provide a custom media type in the Accept header:

application/vnd.github.inertia-preview+json
☝️ This header is required.

Did this doc help you?