API for Project
Welcome to the zipBoard platform REST API reference. This API is essential for connecting remotely with zipBoard, regardless of whether you are building an application, scripting interactions with zipBoard or
This page documents the REST resources available in the zipBoard platform, along with the expected HTTP response codes and sample requests for interacting with projects in zipBoard.
Before you start working with the API, you will need to generate an API key and also get an idea of the URI Structure that needs to be followed. Please follow this article for more information on that.
Get Projects
GET https://app.zipboard.co/api/v1/projects
- Returns a full representation of the project.
- A project JSON consists of the issue key, a collection of fields, a link to the workflow transition sub-resource, and (optionally) the HTML rendered values of any fields that support it
- For projects to be visible, the user must be logged in and authenticated. If no user is logged in, then the project data will not be visible.
HEADERS
Content-Type application/json
Authorization Authorization token
URL Params
Required:
None
Optional:
id: String id of the project to return for the project
Body Params
Required:
orgid: String org id of the project to return for the project
Optional:
projectid: String id of the project to return for the project
Role: String role to return for the project (owner, manager, reviewer)
owner: Boolean true to return project where user is owner
Request
var http = require('http'); Http.request({ method: 'GET', url: `https://app.zipboard.co/api/v1/projects`, body: {}, });
Response
{ "status": "Success", "status code": 200, "message": "Successfully retrieved projects.", "data": [ { "_id": "hoPjX5nfZomWKPsihw", "title": "project 1", "description": "", "createdOn": "2019-01-17T11:37:56.942Z", "ownerId": "N6dRgcj2RkAwBu948", "orgId": -1, "screenCount": 3, "taskCount": 2, "isEnabled": true, "projectId": "P00001", "collaborators": [ { "userId": "N6dRgcj2RkAwBu948", "userName": "Rahil", "role": "Owner" } ], "feeds": [ { "id": "b67c2b151780a616f2990bd0", "text": "created 'project 1'.", "createdAt": "2019-01-17T11:37:57.060Z", "userId": "N6dRgcj2RkAwBu948", "userName": "Rahil" }, { "id": "7187e34c272e99b149bb3e9b", "text": "Inserted url: http://google.com", "createdAt": "2019-01-17T11:38:08.089Z", "userId": "N6dRgcj2RkAwBu948", "userName": "Rahil" }, { "id": "b37aa5dd69b5cb6cb7586c96", "text": " created a new task:'<img/src=x onerror=alert(1)>'.", "createdAt": "2019-01-18T05:22:14.574Z", "userId": "N6dRgcj2RkAwBu948", "userName": "Rahil", "linkUrl": "/project/hoPjX5nfZomWKPsiw/-1/tasks/-1/30db1560d34b063ac5d19645" } ], "lastUpdated": "2019-01-18T05:22:14.847Z" } ] }
Create Projects
POST https://app.zipboard.co/api/v1/projects
- Creates a new project for the user.
- Returns the project data of the newly created project.
HEADERS
Content-Type application/json
Authorization Authorization token
URL Params
Required:
None
Optional:
None
Body Params
Required:
title: String Title for the project
Optional:
orgid: String org id where you want to create the project
description String Description for the project
projectid String Custom project id for the project
Request
var http = require('http'); Http.request({ method: 'POST', url: `https://app.zipboard.co/api/v1/projects`, body: { title: "text for title of project", orgid: '' //id of the org to be fetched from org api }, });
Response
{ "status": "Success", "status code": 201, "_id": "ai6h7kXa4qseu6mom", "message": "Project successfully created!", "data": [ { "_id": "ai6h7kXa4qseu6mom", "title": "text for title of project", "description": null, "createdOn": "2019-01-24T05:43:04.983Z", "ownerId": "N6dRgcj2RkAwBu948", "orgId": -1, "screenCount": 0, "taskCount": 1, "isEnabled": true, "projectId": "P00003", "collaborators": [ { "userId": "N6dRgcj2RkAwBu948", "userName": "Rahil", "role": "Owner" } ], "feeds": [ { "id": { "_str": "61de98d288444b9913ad4edb" }, "text": "created 'text for title of project'.", "createdAt": "2019-01-24T05:43:04.983Z", "userId": "N6dRgcj2RkAwBu948", "userName": "Rahil" } ] } ] }
Update Projects
PUT https://app.zipboard.co/api/v1/projects/:id
- Updates the existing project for the user, data required (projectId).
- To update a project, the role of the current user should be ‘Owner’ or ‘Manager’ (if he/she is a current project owner).
- Returns the updated project data.
HEADERS
Content-Type application/json
Authorization Authorization token // the key which we generate from the user
URL Params
Required:
id: String id of the project to be updated
Body Params
Required:
At least one is required from optional Body Params.
Optional:
title String Title for the project
description String description for the project
projectid String Custom project id for the project(P-0000001)
collabemail [String] email id of the collaborator in array
Request
var http = require('http'); Http.request({ method: 'PUT', url: `https://app.zipboard.co/api/v1/projects/ai6h7kXa4qseu6mom`, body: { title: "Project-1", projectid: 'P-0000001' collabemail: ['[email protected]', '[email protected]'] }, });
Response
{ "status": "Success", "status code": 200, "message": "Project successfully updated.", "data": [{ "_id": "ai6h7kXa4qseu6mom", "title": "Project-1", "description": null, "createdOn": "2019-01-24T05:43:04.983Z", "ownerId": "N6dRgcj2RkAwBu948", "orgId": -1, "screenCount": 0, "taskCount": 1, "isEnabled": true, "projectId": "P0003", "collaborators": [{ "userId": "N6dRgcj2RkAwBu948", "userName": "Rahil", "role": "Owner" }], "feeds": [{ "id": "61de98d288444b9913ad4edb", "text": "created 'text for title of project'.", "createdAt": "2019-01-24T05:43:04.983Z", "userId": "N6dRgcj2RkAwBu948", "userName": "Rahil" }] }] }
Delete Projects
DEL https://app.zipboard.co/api/v1/projects/:id
- Deletes the existing project for the user, data required (projectId).
- To delete the project role of the current user should be Owner or Manager (if he/she is a current project owner).
- Return project data of deleted project.
HEADERS
Content-Type application/json
Authorization Authorization token
URL Params
Required:
id: String id of the project to be deleted
Optional:
None
Body Params
Required:
None
Optional:
None
Request
var http = require('http'); Http.request({ method: 'DELETE', url: `https://app.zipboard.co/api/v1/projects/KnrhKgqLozPqrSSbm`, });
Response
{ "status": "Success", "status code": 200, "message": "Project successfully deleted." }
If you have any questions, you can check out our Forum.