Introduction

The TeamWave API is organized around REST. Our API has predictable, resource-oriented URLs, and uses HTTP response codes to indicate API errors. We use built-in HTTP features, like HTTP authentication and HTTP verbs, which are understood by off-the-shelf HTTP clients. We support cross-origin resource sharing, allowing you to interact securely with our API from a client-side (though you should never expose your secret API key). This API reference provides information on available endpoints and how to interact with it. JSON is returned by all API responses, including errors, although our API libraries convert responses to appropriate language-specific objects.

Root Url https://app.teamwave.com/api/

Authentication

Authenticate your account when using the API by including your secret API key in the request. Your API keys carry many privileges, so be sure to keep them secret!

Get API Key

You can get your API key from your TeamWave Account Profile --> You --> API Key. Copy the API key.

All API requests must be made over HTTPS. Calls made over plain HTTP will fail. API requests without authentication(api_key) will also fail.

Status Codes

Our REST API uses the following status codes:

Status Code

Meaning

200

Request OK

201

Resource created

400

Bad Request – Your request is bad

401

Unauthorized – Your API key is wrong

402

Failed request

403

Forbidden – requested is hidden for administrators only

404

Not Found – The specified item could not be found

50x

Internal Server Error

Projects

Projects provides various project management related operations using the /projects resource and related sub-resources. Use projects for managing new projects and existing projects. You can also use sub-resources to get tasks, milestones, events, files, reports, timelog and notes related details.

Projects

Project Object

Sample Object

{"id":280,"name":"Explore AdHome","description":"This template will give you to create sample project","logo":"https://twprofile.s3.amazonaws.com/logo.jpg","owner":{"id":2,"name":"adhome","domain":"adhome","logo":null,"email":"sam@adhome.com","tenant_domain":"adhome.com","created_on":"2015-06-04","default_currency":"USD","default_currency_symbol":"$","label_txt":null,"orgkey":"adhome","status":"paying","trial_end_on":"2016-07-07"},"clients":[],"users":[537,3300,3692,3858,3633,491,493,58,4,8],"is_trashed":false,"start_date":null,"end_date":null,"budget":0.0,"privacy_enabled":false,"permissions":{"can_add_messages":true,"can_delete_messages":true,"can_add_tasks":true,"can_delete_tasks":true,"can_add_milestones":true,"can_delete_milestones":true,"can_add_timelogs":true,"can_delete_timelogs":true,"can_add_files":true,"can_delete_files":true,"can_add_notebooks":true,"can_delete_notebooks":true,"can_add_events":true,"can_delete_events":true,"project":280,"is_active":true,"calendar_enabled":true,"messages_enabled":true,"tasks_enabled":true,"notes_enabled":true,"milestones_enabled":true,"files_enabled":true,"time_enabled":true},"last_updated":"2016-07-22T09:36:11.442229Z","tasks_enabled":true,"created_by":8,"milestones_enabled":true,"messages_enabled":true,"files_enabled":true,"time_enabled":true,"notes_enabled":true,"calendar_enabled":true,"label_color":null,"label_txt":"Ex","created_on":"2015-10-15T07:49:41.957253Z","modified_on":"2015-10-15T07:49:43.119392Z","resource_url":"/projects/280","drive_access":null,"drop_box_access":null,"is_active":true,"owner_name":"adhome","is_template":false,"creating":false,"tags":null}

Create Project

{"name":"Explore AdHome","description":"Unified Platform for Collaboration, Sales,
Marketing & Support","logo":"https://twprofile.s3.amazonaws.com/image.jpg","Invite_data":[11],"Invite_note":"I invite you to work with me on this project.
Please feel free to share ideas, participate in discussions and give feedback. ","label_txt":"Ex","new_invite_data":[],"share_data":null,"share_note":"We invite you to collaborate with us on AdHome
for this project. We use AdHome to manage tasks, share ideas and discuss issues.","share_type":"c"}

Notes

Note Object

{"id":518,"name":"Creating a Template from an Existing Project","content":"<p>Create a template by copying the customizations of an existing project. <br/>You will be given option to either include or exclude the assigned tasks<br/> to the new template. The new template will have all the discussions, <br/>tasks, files, notes, milestones and team members of the existing <br/>project. The completed tasks will be reopened automatically in the new <br/>template.<br/></p>","modified_by":null,"resource_url":"/projects/1190/notes/518","is_trashed":false,"created_on":"2016-07-21T10:53:26.663830Z","modified_on":"2016-07-21T10:53:26.663857Z","comment_count":0,"created_by":{"id":1,"first_name":"sathish","last_name":"","label_txt":"s","is_crm_enabled":true,"is_crm_admin":true,"is_pm_enabled":true,"is_hrm_admin":true,"corp_email":true,"organization":{"id":1,"name":"Dsqqqqqqq ds 2123","domain":"adhome","logo":"https://twprofile.s3.amazonaws.com/logos/image.jpeg","email":"geo.jacob@adhome.com","tenant_domain":"adhome.com","created_on":"2015-03-10","default_currency":"USD","default_currency_symbol":"$","label_txt":null,"orgkey":"Dsq","status":"paying","trial_end_on":"2016-07-07"},"image":"https://twprofile.s3.amazonaws.com/users/image.jpg","email":"sathish@adhome.com","full_name":"sathish ","is_owner":true,"is_admin":true,"is_active":true,"last_login":"2016-07-21T06:24:04.037715Z","job_title":"Developer","time_zone":"Asia/Kolkata","uuid":"7452387e2f1d4eda952cb12ffbefb6b1","country":null,"is_noticeboard_enabled":true,"is_user_directory_enabled":true},"versions":[{"id":972,"name":"Creating a Template from an Existing Project","created_on":"2016-07-21T10:53:26.773477Z","version":1,"is_current":true,"created_by":{"id":1,"first_name":"sathish","last_name":"","label_txt":"s","is_crm_enabled":true,"is_crm_admin":true,"is_pm_enabled":true,"is_hrm_admin":true,"corp_email":true,"organization":{"id":1,"name":"Dsqqqqqqq ds 2123","domain":"adhome","logo":"https://twprofile.s3.amazonaws.com/logos/image.jpeg","email":"geo.jacob@adhome.com","tenant_domain":"adhome.com","created_on":"2015-03-10","default_currency":"USD","default_currency_symbol":"$","label_txt":null,"orgkey":"Dsq","status":"paying","trial_end_on":"2016-07-07"},"image":"https://twprofile.s3.amazonaws.com/users/image.jpg","email":"sathish@adhome.com","full_name":"sathish ","is_owner":true,"is_admin":true,"is_active":true,"last_login":"2016-07-21T06:24:04.037715Z","job_title":"Developer","time_zone":"Asia/Kolkata","uuid":"7452387e2f1d4eda952cb12ffbefb6b1","country":null,"is_noticeboard_enabled":true,"is_user_directory_enabled":true},"resource_url":"/projects/1190/notes/518/version/972"}],"is_private":false}

Create Note

{"project":"1190","name":"Creating a Template from an Existing Project","content":"<p>Create a template
by copying the customizations of an existing project. <br/>You will be given option to either include
or exclude the assigned tasks<br/> to the new template. The new template will have all the discussions
, <br/>tasks, files, notes, milestones and team members of the existing <br/>project. The completed tasks
will be reopened automatically in the new <br/>template.<br/>
</p>"}

POST api/projects/{project_id}/notes/{note_id}

Update Note

{"id":520,"name":"Creating a Template from an Existing Project","content":"<p><b>Create a template by
copying the customizations</b> of an existing project. <br/>You will be given option to either include
or exclude the assigned tasks<br/> to the new template. The new template will have all the discussions
, <br/>tasks, files, notes, milestones and team members of the existing <br/>project. The completed tasks
will be reopened automatically in the new <br/>template.<br/>
</p>","modified_by":null,"resource_url":"/projects/1190/notes/520","is_trashed":false,"created_on":"2016-07-21T11:08:40.692271Z","modified_on":"2016-07-21T11:08:40.692310Z","comment_count":0,"created_by":{"id":1,"first_name":"sathish","last_name":"","label_txt":"s","is_crm_enabled":true,"is_crm_admin":true,"is_pm_enabled":true,"is_hrm_admin":true,"corp_email":true,"organization":{"id":1,"name":"Dsqqqqqqq ds 2123","domain":"adhome","logo":"https://twprofile.s3.amazonaws.com/image.jpeg","email":"geo.jacob@adhome.com","tenant_domain":"adhome.com","created_on":"2015-03-10","default_currency":"USD","default_currency_symbol":"$","label_txt":null,"orgkey":"Dsq","status":"paying","trial_end_on":"2016-07-07"},"image":"https://twprofile.s3.amazonaws.com/image.jpg","email":"sathish@adhome.com","full_name":"sathish ","is_owner":true,"is_admin":true,"is_active":true,"last_login":"2016-07-21T06:24:04.037715Z","job_title":"Developer","time_zone":"Asia/Kolkata","uuid":"7452387e2f1d4eda952cb12ffbefb6b1","country":null,"is_noticeboard_enabled":true,"is_user_directory_enabled":true},"versions":[{"id":972,"name":"Creating a Template from an Existing Project","created_on":"2016-07-21T10:53:26.773477Z","version":1,"is_current":true,"created_by":{"id":1,"first_name":"sathish","last_name":"","label_txt":"s","is_crm_enabled":true,"is_crm_admin":true,"is_pm_enabled":true,"is_hrm_admin":true,"corp_email":true,"organization":{"id":1,"name":"Dsqqqqqqq ds 2123","domain":"adhome","logo":"https://twprofile.s3.amazonaws.com/image.jpeg","email":"geo.jacob@adhome.com","tenant_domain":"adhome.com","created_on":"2015-03-10","default_currency":"USD","default_currency_symbol":"$","label_txt":null,"orgkey":"Dsq","status":"paying","trial_end_on":"2016-07-07"},"image":"https://twprofile.s3.amazonaws.com/image.jpg","email":"sathish@adhome.com","full_name":"sathish ","is_owner":true,"is_admin":true,"is_active":true,"last_login":"2016-07-21T06:24:04.037715Z","job_title":"Developer","time_zone":"Asia/Kolkata","uuid":"7452387e2f1d4eda952cb12ffbefb6b1","country":null,"is_noticeboard_enabled":true,"is_user_directory_enabled":true},"resource_url":"/projects/1190/notes/518/version/972"}],"is_private":true,}

CRM

CRM provides various Customer related operations using the /crm resource and related sub-resources. Use HRM for managing new employees, timeoff, and automatic check-ins. You can also use sub-resources to get employees, timeoff, tasks and automatic check-ins related details.

HRMS

HRMS provides various HRM related operations using the /hrm resource and related sub-resources. Use HRM for managing new employees, timeoff, and automatic check-ins. You can also use sub-resources to get employees, timeoff, tasks and automatic check-ins related details.