Apollo API Documentation

Projects API calls


Get projects

GET /projects

Returns all accessible projects. This includes active, silent, template and archived projects.

Response

{
	"projects":[
		{
			"id":"787306",
			"name":"Get ready for public beta"
			...
		},
		{
			"id":"8435820",
			"name":"Website"
			...
		},
		...
	]
}

Project counts

GET /projects/count

Returns a count of all projects, by project status.

Response

{
	"count":{
		"active":160,
		"silent":9,
		"archived":291,
		"template":2
	}
}

Get project

GET /projects/#{project_id}

Returns a single project identified by its integer ID.

Response

{
	"project":{
		"id":"4873522",
		"name":"Website",
		...
	}
}

Create project

POST /projects

Creates a new project with the given name. Only administrative users may create projects.

Request

{
	"project": {
		"name": "Website",
		"category-id": "198674",
		"contact-id": "20976357",
		"deal-id": "19751092",
		"start-date": "2018-11-01",
		"due-date": "2019-03-31",
		"project-manager-id": "3981",
		"overview-page-announcement": "Here comes a new project!",
		"start-page": "messages",
		"no-email-notifications": "0",
		"display-announcement": "1",
		"allow-multiple-responsibles": "1",
		"status": "active",
		"allow-html-in-announcement": "0",
		"default-to-private": "0",
		"template-id": "435637"
	}
}

Response

Returns status code 201 (Created) on success. The response contain the new project ID. Failed requests will receive a 422 (Unprocessable Entity) or 500 (Server Error) status code in the response.

{
	"project-id":"7489273"
}

Update project

PUT /projects/#{project_id}

Updates attributes of the given project. Only administrative users may update project records. You only need to provide the attributes you wish to update; others ought to be omitted from the request.

Request

{
	"project":{
		"name":"Website",
		"category-id":"3887365"
	}
}

Response

Returns HTTP status code 200 on success, or any other code (and possibly error information in JSON format) on error.