In Sifter, projects are one of the central concepts. All issues, comments, etc. are centered around projects. Projects have issues, people, milestones, and categories.

Project Listing

This endpoint provides a listing of all the open(unarchived) projects to which the user is assigned.

/api/projects

You can optionally pass all=true in the query string to return a listing of all projects accessible to the user including archived projects. Also, if the user is an administrator, this list will include all projects for the account, even if the user is not assigned to the projects.

/api/projects?all=true

GET https://example.sifterapp.com/api/projects
 1 {
 2   "projects": [
 3     {
 4       "name": "Elephant",
 5       "primary_company_name": "Apple",
 6       "archived": false,
 7       "url": "https://example.sifterapp.com/projects/1",
 8       "issues_url": "https://example.sifterapp.com/projects/1/issues",
 9       "milestones_url": "https://example.sifterapp.com/projects/1/milestones",
10       "api_url": "https://example.sifterapp.com/api/projects/1",
11       "api_issues_url": "https://example.sifterapp.com/api/projects/1/issues",
12       "api_milestones_url": "https://example.sifterapp.com/api/projects/1/milestones",
13       "api_categories_url": "https://example.sifterapp.com/api/projects/1/categories",
14       "api_people_url": "https://example.sifterapp.com/api/projects/1/people"
15     },
16     {
17       "name": "Zebra",
18       "primary_company_name": "Google",
19       "archived": false,
20       "url": "https://example.sifterapp.com/projects/2",
21       "issues_url": "https://example.sifterapp.com/projects/2/issues",
22       "milestones_url": "https://example.sifterapp.com/projects/2/milestones",
23       "api_url": "https://example.sifterapp.com/api/projects/2",
24       "api_issues_url": "https://example.sifterapp.com/api/projects/2/issues",
25       "api_milestones_url": "https://example.sifterapp.com/api/projects/2/milestones",
26       "api_categories_url": "https://example.sifterapp.com/api/projects/2/categories",
27       "api_people_url": "https://example.sifterapp.com/api/projects/2/people"
28     }
29   ]
30 }

Project Detail

This endpoint provides the detail for a specific project.

/api/projects/{project_id}

GET https://example.sifterapp.com/api/projects/1
 1 {
 2   "name": "Elephant",
 3   "primary_company_name": "Apple",
 4   "archived": false,
 5   "url": "https://example.sifterapp.com/projects/1",
 6   "issues_url": "https://example.sifterapp.com/projects/1/issues",
 7   "milestones_url": "https://example.sifterapp.com/projects/1/milestones",
 8   "api_url": "https://example.sifterapp.com/api/projects/1",
 9   "api_issues_url": "https://example.sifterapp.com/api/projects/1/issues",
10   "api_milestones_url": "https://example.sifterapp.com/api/projects/1/milestones",
11   "api_categories_url": "https://example.sifterapp.com/api/projects/1/categories",
12   "api_people_url": "https://example.sifterapp.com/api/projects/1/people"
13 }

Project Milestones

This endpoint lists all of the active milestones for the specified project.

/api/projects/{project_id}/milestones

GET https://example.sifterapp.com/api/projects/1/milestones
 1 {
 2   "milestones": [
 3     {
 4       "name": "Private Release",
 5       "due_date": "2010/04/15",
 6       "issues_url": "https://example.sifterapp.com/projects/1/issues?m=1",
 7       "api_issues_url": "https://example.sifterapp.com/api/projects/1/issues?m=1"
 8     },
 9     {
10       "name": "Public Release",
11       "due_date": "2010/05/15",
12       "issues_url": "https://example.sifterapp.com/projects/1/issues?m=2",
13       "api_issues_url": "https://example.sifterapp.com/api/projects/1/issues?m=2"
14     }
15   ]
16 }

Project Categories

This endpoint lists all of the categories for the specified project.

/api/projects/{project_id}/categories

GET https://example.sifterapp.com/api/projects/1/categories
 1 {
 2   "categories": [
 3     {
 4       "name": "Bugs",
 5       "issues_url": "https://example.sifterapp.com/projects/1/issues?c=1",
 6       "api_issues_url": "https://example.sifterapp.com/api/projects/1/issues?c=1"
 7     },
 8     {
 9       "name": "Issues",
10       "issues_url": "https://example.sifterapp.com/projects/1/issues?c=2",
11       "api_issues_url": "https://example.sifterapp.com/api/projects/1/issues?c=2"
12     }
13   ]
14 }

Project People

This endpoint provides a listing of all people assigned to the specified project.

/api/projects/{project_id}/people

GET https://example.sifterapp.com/api/projects/1/people
 1 {
 2   "people": [
 3     {
 4       "username": "gdimon",
 5       "first_name": "Garrett",
 6       "last_name": "Dimon",
 7       "email": "garrett@nextupdate.com",
 8       "issues_url": "https://example.sifterapp.com/projects/1/issues?a=1",
 9       "api_issues_url": "https://example.sifterapp.com/api/projects/1/issues?a=1"
10     },
11     {
12       "username": "akeys",
13       "first_name": "Adam"
14       "last_name": "Keys",
15       "email": "adam@nextupdate.com",
16       "issues_url": "https://example.sifterapp.com/projects/1/issues?a=2",
17       "api_issues_url": "https://example.sifterapp.com/api/projects/1/issues?a=2"
18     }
19   ]
20 }