• FAQ
  • API
  • Projects
  • Getting the list of projects through API: get_projects

Getting the list of projects through API: get_projects


Sample get_projects request

?action=get_projects
Returns all projects info

Optional parameters:
  • filter — project state, possible values: active, pending, archived
  • extraadditional project info, possible values (can be specified with commas, for example extra=text,options,users):
  • text or html — description in text or html format
    options —  project restriction options
    users — project team members

Returned data on projects :
  • id — project ID
  • name — project name
  • status — project state
  • company — folder name, where the project is located
  • user_from and user_to — project author and project manager
  • text — project description (if request contains corresponding extra parameter)
  • date_added — creation date and time
  • date_closed — closing date and time (if project is archived) or previous closing date and time (if project is active)
  • date_start — start date (if specified)
  • date_end — due date (if specified)
  • options — project restriction options with 0/ 1 values — disabled/enabled (if request contains extra=options parameter): 
  • Assignee can:
  • options.allow_close — mark task as done
  • options.allow_give — transfer the responsibility 
  • options.allow_term — change the task terms
  • options.allow_limit — change the estimates
  • New task required fields PRO:
  • options.require_term — terms
  • options.require_tag — stages and labels
  • options.require_limit — estimates
  • options.require_hidden — visibility
  • Users are not permitted PRO:
  • options.deny_comments_edit — edit and delete comments
  • options.deny_task_edit — edit and delete tasks
  • options.deny_task_delete — delete tasks
  • Adding costs PRO:
  • options.time_require — mark as done with costs only
  • options.time_today — add for today only
  • options.timer_only — add from timer only
  • max_time and max_money — time and financial estimates (if specified)
  • tags — array in id: name format for project tags (if specified)
  • users — project team members (if request contains corresponding extra parameter)

Sample JSON response
If the request succeeds, the response will contain ok status and the following data:

{
    "status": "ok",
    "data": [  {
         "id": "PROJECT_ID_1",
         "name": "PROJECT_NAME",
         "page": "/project/PROJECT_ID/",
         "status": "active",
         "company": "FOLDER_NAME",
         "user_from": { "id": "USER_ID",
             "email": "USER_EMAIL",
             "name": "USER_NAME"
         },
         "user_to": { "id": "USER_ID",
             "email": "USER_EMAIL",
             "name": "USER_NAME"
         },
         "text": "PROJECT_TEXT",
         "date_added": "YYYY—MM—DD HH:II",
         "date_start": "YYYY—MM—DD",
         "date_end": "YYYY—MM—DD", "date_closed": "YYYY—MM—DD HH:II",
"options": { "allow_close": 0..1, "allow_give": 0..1,
"allow_term": 0..1,
"allow_limit": 0..1,
"require_term": 0..1,
"require_tag": 0..1,
"require_limit": 0..1,
"require_hidden": 0..1,
"deny_comments_edit": 0..1,
"deny_task_edit": 0..1,
"deny_task_delete": 0..1,
"time_require": 0..1,
"time_today": 0..1,
"timer_only": 0..1 },
         "max_time": 100,
         "max_money": 500,
         "users": [
             {
                 "id": "USER_ID", "email": "USER_EMAIL",
                 "name": "USER_NAME"
             },
             {
                 "id": "USER_ID", "email": "USER_EMAIL",
                 "name": "USER_NAME"
             },
             { "id": "USER_ID",
                 "email": "USER_EMAIL",
                 "name": "USER_NAME"
             },
             { "id": "USER_ID",
                 "email": "USER_EMAIL",
                 "name": "USER_NAME"
             }
         ]
     }, { "id": "PROJECT_ID_2",          "name": "PROJECT_NAME", ... ... ... } ]
}