Runrun.it API Documentation

How to authenticate to use the API

Every request to the API should be sent with the correct authentication headers, app_key and user_token:

    curl "https://runrun.it/api/v1.0/users" -X GET \
      -H "App-Key: f9c650c98eeb28e345e0a38a184d20cb" \
      -H "User-Token: roBknmkPI0ALmwkRuC1q"

Whenever you send the incorrect information on app_key or user_token, the response will be 401 Unauthorized. The user_token is unique to each user and allows an agent to act on behalf of that user on Runrun.it. The app_key identifies a whole account, and cannot be changed through the GUI.

How to access your API authentication keys

API access is a premium feature only available to customers of certain paid accounts. To see which plans include API access check here. However developers with ideas for apps taking advantage of Runrun.it are always welcome to contact help@runrun.it about setting up a test account with API access.

  1. Go to Integration and Apps on Runrun.it Integration and Apps
  2. Then look for "API and Webhooks" and click Open Api and Webhooks
  3. Your app_key will be displayed next to the user_token Get application key and user token

Data format

All responses will be valid JSON. Requests should be in JSON as well (although for most actions form-encoded data is accepted as well).

All dates will be in ISO 8601 format. The time zones, if specified, will take into account when doing date operations. Another thing to be mentioned is that you need to urlencode your dates if it does contain special characters like + to specify time zones.

Request limit

There is a maximum limit of 100 requests per minute. If this limit is reached, it will be necessary to wait 1 minute to make new requests. In this case, the response will return the HTTP status code 429 with the following headers:

  • "RateLimit-Limit" → request limit
  • "RateLimit-Remaining" → remaining requests to reach the limit
  • "RateLimit-Reset" → date when the limit will be restored

Excessive use of the API will result in the offending app_key being revoked to ensure the quality of service for other users.

Pagination

Overview

Runrun.it API uses pagination to manage large sets of data efficiently. This section explains the use of headers and query parameters for pagination, along with a practical guide for implementation.

Headers

  • X-Item-Range: Indicates the range of items in the current response. The format is items {first_position}-{last_position}/{total}.
  • Link: Provides hypermedia links for navigation:
    • rel="self": The current page.
    • rel="prev": The previous page (if applicable).
    • rel="next": The next page (if available).
    • rel="last": The last page in the dataset.
  • X-Item-Without-View-Permission (optional): Shows the count of items not viewable due to permissions.

Query Parameters

  • page: Specifies the page number (starts from 1). If out of range, defaults to 1.
  • limit: Limits the number of items per page. The default and maximum limit is 100.
  • offset: Determines the starting point for data retrieval.

Practical Usage

  1. Initial Request: Start with your API call without specific page, limit, or offset.
  2. Analyzing the Response: Check the X-Item-Range and Link headers. The Link header includes navigation links such as self, prev, next, and last.
  3. Navigating Through Pages: Use the URL in the rel="next" link from the Link header for subsequent requests. Continue until this link is absent, indicating the last page.
  4. Optional Parameters: Customize the limit to change the number of items per page and use offset to start from a specific point in the dataset.

Notes

  • Pagination is based on RFC 7233 and RFC 5988.
  • The API ensures efficient data retrieval and navigation through dynamic parameter validation and calculation.
  • Be mindful of rate limits and data usage when making successive API calls.

Examples

First Request

  curl "https://runrun.it/api/v1.0/clients" -X GET \
    -H "App-Key: f9c650c98eeb28e345e0a38a184d20cb" \
    -H "User-Token: roBknmkPI0ALmwkRuC1q" \
    -H "Content-Type: application/json"

Response Headers

  Link: </api/clients>; rel="self", </api/clients?page=2>; rel="next", </api/clients?page=2>; rel="last"
  X-Item-Range: items 1-100/155

Requesting the next page

  curl "https://runrun.it/api/v1.0/clients?page=2" -X GET \
    -H "App-Key: f9c650c98eeb28e345e0a38a184d20cb" \
    -H "User-Token: roBknmkPI0ALmwkRuC1q" \
    -H "Content-Type: application/json"

Webhooks

Manage Webhooks

On the API and Webhooks page, you can manage all webhooks on your account. To create or update a webhook, click on the + button, then select the event you want to listen to and enter the URL that will receive the HTTP POST payload. After creating a webhook, click Save to persist your changes.

Webhook section

To delete a webhook, click on the trash icon button and then "Delete".

Supported events

  • task:create → Triggered when a task is created.
  • task:update → Triggered when the following task attributes are updated: title, tags, desired delivery date, desired start date, points, custom fields.
  • task:destroy → Triggered when a task is deleted.
  • task:deliver → Triggered when a task is delivered, that is, moved from an open stage to a closed stage.
  • task:reopen → Triggered when a task is reopened, that is, when it is moved from a closed step to an open step.
  • task:move → Triggered when a task is moved between stages without changing its state (open/closed).
  • task:add_manual_work_period → Triggered when a user adds hours manually to a task.
  • task:remove_manual_work_period → Triggered when a user removes hours manually to a task.
  • task:change_time_worked → Triggered when the total time worked on a task changes.
  • task:mark_as_urgent → Triggered when a task is marked as urgent.
  • task:unmark_as_urgent → Triggered when a task is unmarked as urgent.
  • task:desired_start_date_upcoming → Triggered when task desired start date is upcoming.
  • task_assignment:play → Triggered when an assignee clicks on the play button.
  • task_assignment:pause → Triggered when an assignee clicks on the pause button.
  • task:change_evaluation_status → Triggered when the task evaluation status changes.
  • task:evaluations:create → Triggered when new evaluation requests are created.
  • task:evaluations:reset → Triggered when existing evaluation requests are requested again.
  • task:evaluations:destroy → Triggered when existing evaluation requests are deleted.
  • task:evaluation:approve → Triggered when an evaluation request is approved.
  • task:evaluation:reject → Triggered when an evaluation request is rejected.
  • task:evaluation:reset → Triggered when an evaluation request is reseted.
  • task:assignments:create → Triggered when new assignees are added to a task.
  • task:description:update → Triggered when task description is updated.
  • task:comment:create → Triggered when a comment on a task is created by a user.
  • task:comment:update → Triggered when a comment on a task is edited by a user.
  • project:create → Triggered when a project is created.
  • project:change_time_worked → Triggered when the total time worked on a project changes.
  • project:comment:create → Triggered when a comment on a project is created by a user.
  • project:comment:update → Triggered when a comment on a project is edited by a user.
  • client:create → Triggered when a client is created.
  • team:comment:create → Triggered when a comment on a team bulletin is created by a user.
  • team:comment:update → Triggered when a comment on a team bulletin is edited by a user.
  • enterprise:comment:create → Triggered when a comment on the enterprise bulletin is created by a user.
  • enterprise:comment:update → Triggered when a comment on the enterprise bulletin is edited by a user.
  • document:comment:create → Triggered when a comment on an attachment is created by a user.
  • document:comment:update → Triggered when a comment on an attachment is edited by a user.

Response

Here are some examples of the HTTP POST payload:

  • task:create
    {
      "event": "task:create",
      "happened_at": "2024-10-08 11:15:32 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 0,
          "evaluation_status": nil,
          "assignees": [],
          "assignments": [],
          "user": { "id": "john-snow", "email": "john.snow@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": nil,
          "desired_date": nil,
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }
  • task:update
  {
    "event": "task:update",
    "happened_at": "2024-10-08 11:21:34 -0300",
    "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
    "data": {
      "task": {
        "id": 1696,
        "title": "task 1",
        "board": { "id": 25 },
        "board_stage": { "id": 254 },
        "project": nil,
        "time_worked": 0,
        "evaluation_status": nil,
        "assignees": [],
        "assignments": [],
        "user": { "id": "john-snow", "email": "john.snow@runrun.it" },
        "points": nil,
        "tags_data": [],
        "desired_start_date": nil,
        "desired_date": nil,
        "is_urgent": false,
        "custom_fields": {},
        "url": "http://localhost:3000/pt-BR/tasks/1696"
      }
    }
  }
  • task:destroy
    {
      "event": "task:destroy",
      "happened_at": "2024-10-08 11:25:24 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 0,
          "evaluation_status": nil,
          "assignees": [],
          "assignments": [],
          "user": { "id": "john-snow", "email": "john.snow@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": nil,
          "desired_date": nil,
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }
  • task:deliver
    {
      "event": "task:deliver",
      "happened_at": "2024-10-08 11:28:46 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 246303,
          "evaluation_status": nil,
          "assignees": [
            { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
          ],
          "assignments": [
            {
              "assignee": { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
            }
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": nil,
          "desired_date": nil,
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }
  • task:reopen
    {
      "event": "task:reopen",
      "happened_at": "2024-10-08 13:52:52 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 246303,
          "evaluation_status": nil,
          "assignees": [
            { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
          ],
          "assignments": [
            {
              "assignee": { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
            }
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": nil,
          "desired_date": nil,
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }

  • task:move
    {
      "event": "task:move",
      "happened_at": "2024-10-08 14:06:40 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 246303,
          "evaluation_status": nil,
          "assignees": [
            { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
          ],
          "assignments": [
            {
              "assignee": { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
            }
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": nil,
          "desired_date": nil,
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }
  • task:add_manual_work_period
    {
      "event": "task:add_manual_work_period",
      "happened_at": "2024-10-08 14:09:20 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 249903,
          "evaluation_status": nil,
          "assignees": [
            { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
          ],
          "assignments": [
            {
              "assignee": { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
            }
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": nil,
          "desired_date": nil,
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }
  • task:remove_manual_work_period
    {
      "event": "task:remove_manual_work_period",
      "happened_at": "2024-10-08 14:10:43 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 246303,
          "evaluation_status": nil,
          "assignees": [
            { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
          ],
          "assignments": [
            {
              "assignee": { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
            }
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": nil,
          "desired_date": nil,
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }
  • task:change_time_worked
    {
      "event": "task:change_time_worked",
      "happened_at": "2024-10-08 14:23:44 -0300",
      "performer": nil,
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 158,
          "evaluation_status": nil,
          "assignees": [
            { "id": "john-snow", "email": "john.snow@runrun.it" },
            {"id": "ned-stark", "email": "ned.stark@runrun.it"}
          ],
          "assignments": [
            {
              "assignee": { "id": "john-snow", "email": "john.snow@runrun.it" }
            },
            {
              "assignee": {"id": "ned-stark", "email": "ned.stark@runrun.it"}
            }
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": "2024-10-08 15:00:00 -0300",
          "desired_date": "2024-10-08 23:59:00 -0300",
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }
  • task:mark_as_urgent
    {
      "event": "task:mark_as_urgent",
      "happened_at": "2024-10-08 14:07:40 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 246303,
          "evaluation_status": nil,
          "assignees": [
            { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
          ],
          "assignments": [
            {
              "assignee": { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
            }
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": nil,
          "desired_date": nil,
          "is_urgent": true,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }

  • task:unmark_as_urgent
    {
      "event": "task:unmark_as_urgent",
      "happened_at": "2024-10-08 14:08:23 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 246303,
          "evaluation_status": nil,
          "assignees": [
            { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
          ],
          "assignments": [
            {
              "assignee": { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
            }
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": nil,
          "desired_date": nil,
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }
  • task:desired_start_date_upcoming
    {
      "event": "task:desired_start_date_upcoming",
      "happened_at": "2024-10-08 14:15:36 -0300",
      "performer": nil,
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 246303,
          "evaluation_status": nil,
          "assignees": [
            { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
          ],
          "assignments": [
            {
              "assignee": { "id": "petey-cruiser", "email": "petey.cruiser@runrun.it" }
            }
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": "2024-10-08 15:00:00 -0300",
          "desired_date": "2024-10-08 23:59:00 -0300",
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }
  • task_assignment:play
    {
      "event": "task_assignment:play",
      "happened_at": "2024-10-08 14:57:35 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 158,
          "evaluation_status": "pending",
          "assignees": [
            { "id": "john-snow", "email": "john.snow@runrun.it" },
            {"id": "ned-stark", "email": "ned.stark@runrun.it"}
          ],
          "assignments": [
            {
              "assignee": { "id": "john-snow", "email": "john.snow@runrun.it" }
            },
            {
              "assignee": {"id": "ned-stark", "email": "ned.stark@runrun.it"}
            }
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": "2024-10-08 15:00:00 -0300",
          "desired_date": "2024-10-08 23:59:00 -0300",
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }
  • task_assignment:pause
    {
      "event": "task_assignment:pause",
      "happened_at": "2024-10-08 14:58:12 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 197,
          "evaluation_status": "pending",
          "assignees": [
            { "id": "john-snow", "email": "john.snow@runrun.it" },
            {"id": "ned-stark", "email": "ned.stark@runrun.it"}
          ],
          "assignments": [
            {
              "assignee": { "id": "john-snow", "email": "john.snow@runrun.it" }
            },
            {
              "assignee": {"id": "ned-stark", "email": "ned.stark@runrun.it"}
            }
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": "2024-10-08 15:00:00 -0300",
          "desired_date": "2024-10-08 23:59:00 -0300",
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }
  • task:change_evaluation_status
    {
      "event": "task:change_evaluation_status",
      "happened_at": "2024-10-08 14:30:52 -0300",
      "performer": nil,
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 158,
          "evaluation_status": "approved",
          "assignees": [
            { "id": "john-snow", "email": "john.snow@runrun.it" },
            {"id": "ned-stark", "email": "ned.stark@runrun.it"}
          ],
          "assignments": [
            {
              "assignee": { "id": "john-snow", "email": "john.snow@runrun.it" }
            },
            {
              "assignee": {"id": "ned-stark", "email": "ned.stark@runrun.it"}
            }
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": "2024-10-08 15:00:00 -0300",
          "desired_date": "2024-10-08 23:59:00 -0300",
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }
  • task:evaluations:create
    {
      "event": "task:evaluations:create",
      "happened_at": "2024-10-08 14:25:03 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 158,
          "evaluation_status": "pending",
          "assignees": [
            { "id": "john-snow", "email": "john.snow@runrun.it" },
            {"id": "ned-stark", "email": "ned.stark@runrun.it"}
          ],
          "assignments": [
            {
              "assignee": { "id": "john-snow", "email": "john.snow@runrun.it" }
            },
            {
              "assignee": {"id": "ned-stark", "email": "ned.stark@runrun.it"}
            }
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": "2024-10-08 15:00:00 -0300",
          "desired_date": "2024-10-08 23:59:00 -0300",
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        },
        "evaluations": [
          {
            "state": "pending",
            "evaluator": {"id": "antonio-carlos-soares", "email": "acsoares@runrun.it"}
          }
        ]
      }
    }
  • task:evaluations:reset
    {
      "event": "task:evaluations:reset",
      "happened_at": "2024-10-08 14:29:21 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 158,
          "evaluation_status": "pending",
          "assignees": [
            { "id": "john-snow", "email": "john.snow@runrun.it"
            },
            {"id": "ned-stark", "email": "ned.stark@runrun.it"}],
          "assignments":
            [{"assignee":
              { "id": "john-snow", "email": "john.snow@runrun.it" }},
            {"assignee":
              {"id": "ned-stark", "email": "ned.stark@runrun.it"}}],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": "2024-10-08 15:00:00 -0300",
          "desired_date": "2024-10-08 23:59:00 -0300",
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"},
        "evaluations":
          [{"state": "pending",
            "evaluator":
            { "id": "john-snow", "email": "john.snow@runrun.it" }}]}}

  • task:evaluations:destroy
    {
      "event": "task:evaluations:destroy",
      "happened_at": "2024-10-08 14:26:45 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 158,
          "evaluation_status": nil,
          "assignees": [
            { "id": "john-snow", "email": "john.snow@runrun.it" },
            {"id": "ned-stark", "email": "ned.stark@runrun.it"}
          ],
          "assignments": [
            {"assignee": { "id": "john-snow", "email": "john.snow@runrun.it" }},
            {"assignee": {"id": "ned-stark", "email": "ned.stark@runrun.it"}}
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": "2024-10-08 15:00:00 -0300",
          "desired_date": "2024-10-08 23:59:00 -0300",
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"},
        "evaluations": [
          {
            "state": "pending",
            "evaluator": {"id": "antonio-carlos-soares", "email": "acsoares@runrun.it"}
          }
        ]
      }
    }
  • task:evaluation:approve
    {
      "event": "task:evaluation:approve",
      "happened_at": "2024-10-08 14:28:01 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "evaluation": {
          "state": "approved",
          "evaluator": { "id": "john-snow", "email": "john.snow@runrun.it" }
        },
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 158,
          "evaluation_status": "approved",
          "assignees": [
            { "id": "john-snow", "email": "john.snow@runrun.it" },
            {"id": "ned-stark", "email": "ned.stark@runrun.it"}
          ],
          "assignments": [
            {"assignee": { "id": "john-snow", "email": "john.snow@runrun.it" }},
            {"assignee": {"id": "ned-stark", "email": "ned.stark@runrun.it"}}
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": "2024-10-08 15:00:00 -0300",
          "desired_date": "2024-10-08 23:59:00 -0300",
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }

  • task:evaluation:reject
    {
      "event": "task:evaluation:reject",
      "happened_at": "2024-10-08 14:43:03 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "evaluation": {
          "state": "rejected",
          "evaluator": { "id": "john-snow", "email": "john.snow@runrun.it" }
        },
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 158,
          "evaluation_status": "rejected",
          "assignees": [
            { "id": "john-snow", "email": "john.snow@runrun.it" },
            {"id": "ned-stark", "email": "ned.stark@runrun.it"}
          ],
          "assignments": [
            {"assignee": { "id": "john-snow", "email": "john.snow@runrun.it" }},
            {"assignee": {"id": "ned-stark", "email": "ned.stark@runrun.it"}}
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": "2024-10-08 15:00:00 -0300",
          "desired_date": "2024-10-08 23:59:00 -0300",
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }
  • task:evaluation:reset
    {
      "event": "task:evaluation:reset",
      "happened_at": "2024-10-08 14:55:47 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "evaluation": {
          "state": "pending",
          "evaluator": { "id": "john-snow", "email": "john.snow@runrun.it" }
        },
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 158,
          "evaluation_status": "pending",
          "assignees": [
            { "id": "john-snow", "email": "john.snow@runrun.it" },
            {"id": "ned-stark", "email": "ned.stark@runrun.it"}
          ],
          "assignments": [
            {"assignee": { "id": "john-snow", "email": "john.snow@runrun.it" }},
            {"assignee": {"id": "ned-stark", "email": "ned.stark@runrun.it"}}
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": "2024-10-08 15:00:00 -0300",
          "desired_date": "2024-10-08 23:59:00 -0300",
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"
        }
      }
    }
  • task:assignments:create
    {
      "event": "task:assignments:create",
      "happened_at": "2024-10-08 14:45:54 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 158,
          "evaluation_status": "pending",
          "assignees": [
            { "id": "john-snow", "email": "john.snow@runrun.it" },
            {"id": "ned-stark", "email": "ned.stark@runrun.it"}
          ],
          "assignments": [
            {"assignee": { "id": "john-snow", "email": "john.snow@runrun.it" }},
            {"assignee": {"id": "ned-stark", "email": "ned.stark@runrun.it"}}
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": "2024-10-08 15:00:00 -0300",
          "desired_date": "2024-10-08 23:59:00 -0300",
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"},
        "assignments": [
          {"assignee": {"id": "ned-stark", "email": "ned.stark@runrun.it"}}
        ]
      }
    }
  • task:description:update
    {
      "event": "task:description:update",
      "happened_at": "2024-10-08 14:49:06 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "task": {
          "id": 1696,
          "title": "task 1",
          "board": { "id": 25 },
          "board_stage": { "id": 254 },
          "project": nil,
          "time_worked": 158,
          "evaluation_status": "pending",
          "assignees": [
            { "id": "john-snow", "email": "john.snow@runrun.it" },
            {"id": "ned-stark", "email": "ned.stark@runrun.it"}
          ],
          "assignments": [
            {"assignee": { "id": "john-snow", "email": "john.snow@runrun.it" }},
            {"assignee": {"id": "ned-stark", "email": "ned.stark@runrun.it"}}
          ],
          "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
          "points": nil,
          "tags_data": [],
          "desired_start_date": "2024-10-08 15:00:00 -0300",
          "desired_date": "2024-10-08 23:59:00 -0300",
          "is_urgent": false,
          "custom_fields": {},
          "url": "http://localhost:3000/pt-BR/tasks/1696"},
        "description": {"description": "<p>description</p>"}
      }
    }
  • task:comment:create
    {
      "event": "task:comment:create",
      "happened_at": "2024-10-08 14:50:39 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "comment": {
          "id": 569252855,
          "commentable_type": "Task",
          "commentable": {
            "id": 1696,
            "title": "task 1",
            "board": { "id": 25 },
            "board_stage": { "id": 254 },
            "project": nil,
            "time_worked": 158,
            "evaluation_status": "pending",
            "assignees": [
              { "id": "john-snow", "email": "john.snow@runrun.it" },
              {"id": "ned-stark", "email": "ned.stark@runrun.it"}
            ],
            "assignments": [
              {"assignee": { "id": "john-snow", "email": "john.snow@runrun.it" }},
              {"assignee": {"id": "ned-stark","email": "ned.stark@runrun.it"}}
            ],
            "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
            "points": nil,
            "tags_data": [],
            "desired_start_date": "2024-10-08 15:00:00 -0300",
            "desired_date": "2024-10-08 23:59:00 -0300",
            "is_urgent": false,
            "custom_fields": {},
            "url": "http://localhost:3000/pt-BR/tasks/1696"
          },
          "text": "new comment",
          "channel_name": nil,
          "created_at": "2024-10-08 14:50:34 -0300",
          "edited_at": nil,
          "user": { "id": "john-snow", "email": "john.snow@runrun.it" },
          "guest": nil,
          "mentions": {
            "users": [],
            "tasks": []
          }
        }
      }
    }
  • task:comment:update
    {
      "event": "task:comment:update",
      "happened_at": "2024-10-08 14:51:38 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "comment": {
          "id": 569252855,
          "commentable_type": "Task",
          "commentable": {
            "id": 1696,
            "title": "task 1",
            "board": { "id": 25 },
            "board_stage": { "id": 254 },
            "project": nil,
            "time_worked": 158,
            "evaluation_status": "pending",
            "assignees": [
              { "id": "john-snow", "email": "john.snow@runrun.it" },
              {"id": "ned-stark", "email": "ned.stark@runrun.it"}
            ],
            "assignments": [
              {"assignee": { "id": "john-snow", "email": "john.snow@runrun.it" }},
              {"assignee": {"id": "ned-stark", "email": "ned.stark@runrun.it"}}
            ],
            "user": { "id": "anna-mull", "email": "anna.mull@runrun.it" },
            "points": nil,
            "tags_data": [],
            "desired_start_date": "2024-10-08 15:00:00 -0300",
            "desired_date": "2024-10-08 23:59:00 -0300",
            "is_urgent": false,
            "custom_fields": {},
            "url": "http://localhost:3000/pt-BR/tasks/1696"
          },
          "text": "new comment edited",
          "channel_name": nil,
          "created_at": "2024-10-08 14:50:34 -0300",
          "edited_at": "2024-10-08 14:51:34 -0300",
          "user": { "id": "john-snow", "email": "john.snow@runrun.it" },
          "guest": nil,
          "mentions": {
            "users": [],
            "tasks": []
          }
        }
      }
    }
  • project:create
    {
      "event": "project:create",
      "happened_at": "2024-10-09 08:51:58 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "project": {
          "id": 985,
          "project_sub_group": { "id": 3846 },
          "project_group": { "id": 6528 },
          "time_worked": 0,
          "client": { "id": 5849 },
          "url": "http://localhost:3000/pt-BR/company/projects/985"
        }
      }
    }
  • project:change_time_worked
    {
      "event": "project:change_time_worked",
      "happened_at": "2024-10-09 08:56:03 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "project": {
          "id": 985,
          "project_sub_group": { "id": 3846 },
          "project_group": { "id": 6528 },
          "time_worked": 0,
          "client": { "id": 5849 },
          "url": "http://localhost:3000/pt-BR/company/projects/985"
        }
      }
    }
  • project:comment:create
    {
      "event": "project:comment:create",
      "happened_at": "2024-10-09 08:53:04 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "comment": {
          "id": 8548,
          "commentable_type": "Project",
          "commentable": {
            "id": 985,
            "project_sub_group": { "id": 3846 },
            "project_group": { "id": 6528 },
            "time_worked": 0,
            "client": { "id": 5849 },
            "url": "http://localhost:3000/pt-BR/company/projects/985"
          },
          "text": "New comment",
          "channel_name": nil,
          "created_at": "2024-10-09 08:53:04 -0300",
          "edited_at": nil,
          "user": { "id": "john-snow", "email": "john.snow@runrun.it" },
          "guest": nil,
          "mentions": {
            "users": [],
            "tasks": []
          }
        }
      }
    }
  • project:comment:update
    {
      "event": "project:comment:update",
      "happened_at": "2024-10-09 08:53:54 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "comment": {
          "id": 8548,
          "commentable_type": "Project",
          "commentable": {
            "id": 985,
            "project_sub_group": { "id": 3846 },
            "project_group": { "id": 6528 },
            "time_worked": 0,
            "client": { "id": 5849 },
            "url": "http://localhost:3000/pt-BR/company/projects/985"
          },
          "text": "New comment edited.",
          "channel_name": nil,
          "created_at": "2024-10-09 08:53:04 -0300",
          "edited_at": "2024-10-09 08:53:54 -0300",
          "user": { "id": "john-snow", "email": "john.snow@runrun.it" },
          "guest": nil,
          "mentions": {
            "users": [],
            "tasks": []
          }
        }
      }
    }
  • client:create
    {
      "event": "client:create",
      "happened_at": "2024-10-09 08:50:38 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "client": {
          "id": 5849,
          "url": "http://localhost:3000/pt-BR/company/clients/5849"
        }
      }
    }
  • team:comment:create
    {
      "event": "team:comment:create",
      "happened_at": "2024-10-09 08:57:28 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "comment": {
          "id": 3655,
          "commentable_type": "Team",
          "commentable": { "id": 254, "name": "Team name" },
          "text": "New comment",
          "channel_name": nil,
          "created_at": "2024-10-09 08:57:26 -0300",
          "edited_at": nil,
          "user": { "id": "john-snow", "email": "john.snow@runrun.it" },
          "guest": nil,
          "mentions": {
            "users": [],
            "tasks": []
          }
        }
      }
    }
  • team:comment:update
    {
      "event": "team:comment:update",
      "happened_at": "2024-10-09 08:58:42 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "comment": {
          "id": 3655,
          "commentable_type": "Team",
          "commentable": { "id": 254, "name": "Team name" },
          "text": "New comment edited",
          "channel_name": nil,
          "created_at": "2024-10-09 08:57:26 -0300",
          "edited_at": "2024-10-09 08:58:40 -0300",
          "user": { "id": "john-snow", "email": "john.snow@runrun.it" },
          "guest": nil,
          "mentions": {
            "users": [],
            "tasks": []
          }
        }
      }
    }
  • enterprise:comment:create
    {
      "event": "enterprise:comment:create",
      "happened_at": "2024-10-09 09:00:55 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "comment": {
          "id": 25478,
          "commentable_type": "Enterprise",
          "commentable": {"id": "runrun-it", "name": "Runrun.it"},
          "text": "New Comment",
          "channel_name": nil,
          "created_at": "2024-10-09 08:59:19 -0300",
          "edited_at": nil,
          "user": { "id": "john-snow", "email": "john.snow@runrun.it" },
          "guest": nil,
          "mentions": {
            "users": [],
            "tasks": []
          }
        }
      }
    }
  • enterprise:comment:update
    {
      "event": "enterprise:comment:update",
      "happened_at": "2024-10-09 09:03:45 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "comment": {
          "id": 25478,
          "commentable_type": "Enterprise",
          "commentable": {"id": "runrun-it", "name": "Runrun.it"},
          "text": "New Comment edited",
          "channel_name": nil,
          "created_at": "2024-10-09 08:59:19 -0300",
          "edited_at": "2024-10-09 09:02:15 -0300",
          "user": { "id": "john-snow", "email": "john.snow@runrun.it" },
          "guest": nil,
          "mentions": {
            "users": [],
            "tasks": []
          }
        }
      }
    }
  • document:comment:create
    {
      "event": "document:comment:create",
      "happened_at": "2024-10-09 09:06:23 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "comment": {
          "id": 25415,
          "commentable_type": "Document",
          "commentable": {"id": 35155, "file_name": "Document.pdf"},
          "text": "Comment text",
          "channel_name": "guest",
          "created_at": "2024-10-09 09:06:20 -0300",
          "edited_at": nil,
          "user": { "id": "john-snow", "email": "john.snow@runrun.it" },
          "guest": nil,
          "mentions": {
            "users": [],
            "tasks": []
          }
        }
      }
    }
  • document:comment:update
    {
      "event": "document:comment:update",
      "happened_at": "2024-10-09 09:09:03 -0300",
      "performer": { "id": "john-snow", "email": "john.snow@runrun.it" },
      "data": {
        "comment": {
          "id": 25415,
          "commentable_type": "Document",
          "commentable": {"id": 35155, "file_name": "Document.pdf"},
          "text": "Comment text",
          "channel_name": "guest",
          "created_at": "2024-10-09 09:06:20 -0300",
          "edited_at": nil,
          "user": { "id": "john-snow", "email": "john.snow@runrun.it" },
          "guest": nil,
          "mentions": {
            "users": [],
            "tasks": []
          }
        }
      }
    }

Contacting API Support

If you have any trouble using the API, you can email us at help@runrun.it.

Filters

GET

/api/v1.0/projects/filters

List all projects filters

List all projects filters that the current user can view.

Request

Route

GET /api/v1.0/projects/filters

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/projects/filters" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 1783

Body

[
  {
    "id": "all",
    "name": "All projects",
    "status": "all",
    "restriction": [

    ],
    "conditions": [

    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "activities",
        "dir": "desc"
      }
    ],
    "sort": {
      "column_id": "activities",
      "dir": "desc"
    },
    "valid": true,
    "default": true,
    "preset": true
  },
  {
    "id": "open",
    "name": "Open projects",
    "status": "all",
    "restriction": [
      {
        "column_id": "open",
        "operator": "is_true",
        "value": null,
        "valid": true
      }
    ],
    "conditions": [
      {
        "column_id": "open",
        "operator": "is_true",
        "value": null,
        "valid": true
      }
    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "activities",
        "dir": "desc",
        "valid": true
      }
    ],
    "sort": {
      "column_id": "activities",
      "dir": "desc",
      "valid": true
    },
    "valid": true,
    "default": false,
    "preset": true
  },
  {
    "id": "closed",
    "name": "Closed projects",
    "status": "all",
    "restriction": [
      {
        "column_id": "open",
        "operator": "is_false",
        "value": null,
        "valid": true
      }
    ],
    "conditions": [
      {
        "column_id": "open",
        "operator": "is_false",
        "value": null,
        "valid": true
      }
    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "close_date",
        "dir": "desc",
        "valid": true
      }
    ],
    "sort": {
      "column_id": "close_date",
      "dir": "desc",
      "valid": true
    },
    "valid": true,
    "default": false,
    "preset": true
  },
  {
    "id": 1,
    "name": "Amazing Projects",
    "status": "all",
    "restriction": [
      {
        "column_id": "open",
        "operator": "is_false",
        "value": null,
        "valid": true
      },
      {
        "column_id": "desired_date",
        "operator": "up_to",
        "value": "2016-10-02",
        "valid": true
      },
      {
        "column_id": "time_total",
        "operator": "greater_than",
        "value": 1000,
        "valid": true
      }
    ],
    "conditions": [
      {
        "column_id": "open",
        "operator": "is_false",
        "value": null,
        "valid": true
      },
      {
        "column_id": "desired_date",
        "operator": "up_to",
        "value": "2016-10-02",
        "valid": true
      },
      {
        "column_id": "time_total",
        "operator": "greater_than",
        "value": 1000,
        "valid": true
      }
    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "desired_date",
        "dir": "desc",
        "valid": true
      }
    ],
    "sort": {
      "column_id": "desired_date",
      "dir": "desc",
      "valid": true
    },
    "valid": true,
    "default": false,
    "preset": false
  }
]
GET

/api/v1.0/projects/filters/:id

Show a project filter

Request

Route

GET /api/v1.0/projects/filters/1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/projects/filters/1" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 729

Body

{
  "id": 1,
  "name": "Amazing Projects",
  "status": "all",
  "restriction": [
    {
      "column_id": "open",
      "operator": "is_false",
      "value": null,
      "valid": true
    },
    {
      "column_id": "desired_date",
      "operator": "up_to",
      "value": "2016-10-02",
      "valid": true
    },
    {
      "column_id": "time_total",
      "operator": "greater_than",
      "value": 1000,
      "valid": true
    }
  ],
  "conditions": [
    {
      "column_id": "open",
      "operator": "is_false",
      "value": null,
      "valid": true
    },
    {
      "column_id": "desired_date",
      "operator": "up_to",
      "value": "2016-10-02",
      "valid": true
    },
    {
      "column_id": "time_total",
      "operator": "greater_than",
      "value": 1000,
      "valid": true
    }
  ],
  "parameters": {
  },
  "sorting": [
    {
      "column_id": "desired_date",
      "dir": "desc",
      "valid": true
    }
  ],
  "sort": {
    "column_id": "desired_date",
    "dir": "desc",
    "valid": true
  },
  "valid": true,
  "default": false,
  "preset": false
}
DELETE

/api/v1.0/projects/filters/:id

Destroy a project filter

Destroy a filter record.

Request

Route

DELETE /api/v1.0/projects/filters/1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl "https://runrun.it/api/v1.0/projects/filters/1" -d '' -X DELETE \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

204

Headers

GET

/api/v1.0/tasks/filters

List all tasks filters

List all tasks filters that the current user can view.

Request

Route

GET /api/v1.0/tasks/filters

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/tasks/filters" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 6436

Body

[
  {
    "id": "all",
    "name": "All",
    "status": "all",
    "restriction": [

    ],
    "conditions": [

    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "activities",
        "dir": "desc"
      }
    ],
    "sort": {
      "column_id": "activities",
      "dir": "desc"
    },
    "valid": true,
    "default": true,
    "preset": true
  },
  {
    "id": "not_assigned",
    "name": "No responsible",
    "status": "all",
    "restriction": [
      {
        "column_id": "assignees",
        "operator": "is_empty",
        "value": [

        ],
        "valid": true
      },
      {
        "column_id": "state",
        "operator": "is_not",
        "value": {
          "id": "closed",
          "name": "completed"
        },
        "valid": true
      }
    ],
    "conditions": [
      {
        "column_id": "assignees",
        "operator": "is_empty",
        "value": [

        ],
        "valid": true
      },
      {
        "column_id": "state",
        "operator": "is_not",
        "value": {
          "id": "closed",
          "name": "completed"
        },
        "valid": true
      }
    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "priority",
        "dir": "asc",
        "valid": true
      }
    ],
    "sort": {
      "column_id": "priority",
      "dir": "asc",
      "valid": true
    },
    "valid": true,
    "default": false,
    "preset": true
  },
  {
    "id": "queued",
    "name": "Assigned (Pending)",
    "status": "all",
    "restriction": [
      {
        "column_id": "state",
        "operator": "is",
        "value": {
          "id": "queued",
          "name": "pending"
        },
        "valid": true
      }
    ],
    "conditions": [
      {
        "column_id": "state",
        "operator": "is",
        "value": {
          "id": "queued",
          "name": "pending"
        },
        "valid": true
      }
    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "activities",
        "dir": "desc",
        "valid": true
      }
    ],
    "sort": {
      "column_id": "activities",
      "dir": "desc",
      "valid": true
    },
    "valid": true,
    "default": false,
    "preset": true
  },
  {
    "id": "working_on",
    "name": "Assigned (In development)",
    "status": "all",
    "restriction": [
      {
        "column_id": "state",
        "operator": "is",
        "value": {
          "id": "working_on",
          "name": "in development"
        },
        "valid": true
      }
    ],
    "conditions": [
      {
        "column_id": "state",
        "operator": "is",
        "value": {
          "id": "working_on",
          "name": "in development"
        },
        "valid": true
      }
    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "activities",
        "dir": "desc",
        "valid": true
      }
    ],
    "sort": {
      "column_id": "activities",
      "dir": "desc",
      "valid": true
    },
    "valid": true,
    "default": false,
    "preset": true
  },
  {
    "id": "open",
    "name": "Opened",
    "status": "all",
    "restriction": [
      {
        "column_id": "state",
        "operator": "is_not",
        "value": {
          "id": "closed",
          "name": "completed"
        },
        "valid": true
      }
    ],
    "conditions": [
      {
        "column_id": "state",
        "operator": "is_not",
        "value": {
          "id": "closed",
          "name": "completed"
        },
        "valid": true
      }
    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "priority",
        "dir": "asc",
        "valid": true
      }
    ],
    "sort": {
      "column_id": "priority",
      "dir": "asc",
      "valid": true
    },
    "valid": true,
    "default": false,
    "preset": true
  },
  {
    "id": "delivered",
    "name": "Delivered",
    "status": "all",
    "restriction": [
      {
        "column_id": "state",
        "operator": "is",
        "value": {
          "id": "closed",
          "name": "completed"
        },
        "valid": true
      }
    ],
    "conditions": [
      {
        "column_id": "state",
        "operator": "is",
        "value": {
          "id": "closed",
          "name": "completed"
        },
        "valid": true
      }
    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "close_date",
        "dir": "desc",
        "valid": true
      }
    ],
    "sort": {
      "column_id": "close_date",
      "dir": "desc",
      "valid": true
    },
    "valid": true,
    "default": false,
    "preset": true
  },
  {
    "id": "delivered_in_the_last_7_days",
    "name": "Delivered in the last 7 days",
    "status": "all",
    "restriction": [
      {
        "column_id": "close_date",
        "operator": "in_the_last",
        "value": "seven_days",
        "valid": true
      },
      {
        "column_id": "state",
        "operator": "is",
        "value": {
          "id": "closed",
          "name": "completed"
        },
        "valid": true
      }
    ],
    "conditions": [
      {
        "column_id": "close_date",
        "operator": "in_the_last",
        "value": "seven_days",
        "valid": true
      },
      {
        "column_id": "state",
        "operator": "is",
        "value": {
          "id": "closed",
          "name": "completed"
        },
        "valid": true
      }
    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "close_date",
        "dir": "desc",
        "valid": true
      }
    ],
    "sort": {
      "column_id": "close_date",
      "dir": "desc",
      "valid": true
    },
    "valid": true,
    "default": false,
    "preset": true
  },
  {
    "id": "estimated_delivery_in_the_next_7_days",
    "name": "To be delivered in the next 7 days",
    "status": "all",
    "restriction": [
      {
        "column_id": "estimated_delivery_date",
        "operator": "in_the_next",
        "value": "seven_days",
        "valid": true
      },
      {
        "column_id": "state",
        "operator": "is_not",
        "value": {
          "id": "closed",
          "name": "completed"
        },
        "valid": true
      }
    ],
    "conditions": [
      {
        "column_id": "estimated_delivery_date",
        "operator": "in_the_next",
        "value": "seven_days",
        "valid": true
      },
      {
        "column_id": "state",
        "operator": "is_not",
        "value": {
          "id": "closed",
          "name": "completed"
        },
        "valid": true
      }
    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "activities",
        "dir": "desc",
        "valid": true
      }
    ],
    "sort": {
      "column_id": "activities",
      "dir": "desc",
      "valid": true
    },
    "valid": true,
    "default": false,
    "preset": true
  },
  {
    "id": "overdue",
    "name": "Overdue",
    "status": "all",
    "restriction": [
      {
        "column_id": "overdue",
        "operator": "is",
        "value": {
          "id": "hard_overdue",
          "name": "with delay"
        },
        "valid": true
      },
      {
        "column_id": "state",
        "operator": "is_not",
        "value": {
          "id": "closed",
          "name": "completed"
        },
        "valid": true
      }
    ],
    "conditions": [
      {
        "column_id": "overdue",
        "operator": "is",
        "value": {
          "id": "hard_overdue",
          "name": "with delay"
        },
        "valid": true
      },
      {
        "column_id": "state",
        "operator": "is_not",
        "value": {
          "id": "closed",
          "name": "completed"
        },
        "valid": true
      }
    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "desired_date",
        "dir": "asc",
        "valid": true
      }
    ],
    "sort": {
      "column_id": "desired_date",
      "dir": "asc",
      "valid": true
    },
    "valid": true,
    "default": false,
    "preset": true
  },
  {
    "id": "overdue_estimated",
    "name": "With overdue estimated",
    "status": "all",
    "restriction": [
      {
        "column_id": "overdue",
        "operator": "is",
        "value": {
          "id": "soft_overdue",
          "name": "estimated delay"
        },
        "valid": true
      },
      {
        "column_id": "state",
        "operator": "is_not",
        "value": {
          "id": "closed",
          "name": "completed"
        },
        "valid": true
      }
    ],
    "conditions": [
      {
        "column_id": "overdue",
        "operator": "is",
        "value": {
          "id": "soft_overdue",
          "name": "estimated delay"
        },
        "valid": true
      },
      {
        "column_id": "state",
        "operator": "is_not",
        "value": {
          "id": "closed",
          "name": "completed"
        },
        "valid": true
      }
    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "desired_date",
        "dir": "asc",
        "valid": true
      }
    ],
    "sort": {
      "column_id": "desired_date",
      "dir": "asc",
      "valid": true
    },
    "valid": true,
    "default": false,
    "preset": true
  },
  {
    "id": "shared",
    "name": "Shared",
    "status": "all",
    "restriction": [
      {
        "column_id": "is_shared",
        "operator": "is_true",
        "value": null,
        "valid": true
      }
    ],
    "conditions": [
      {
        "column_id": "is_shared",
        "operator": "is_true",
        "value": null,
        "valid": true
      }
    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "activities",
        "dir": "desc",
        "valid": true
      }
    ],
    "sort": {
      "column_id": "activities",
      "dir": "desc",
      "valid": true
    },
    "valid": true,
    "default": false,
    "preset": true
  },
  {
    "id": 1,
    "name": "Amazing Tasks",
    "status": "all",
    "restriction": [
      {
        "column_id": "title",
        "operator": "contains",
        "value": "Test",
        "valid": true
      },
      {
        "column_id": "state",
        "operator": "is",
        "value": {
          "id": "queued",
          "name": "pending"
        },
        "valid": true
      }
    ],
    "conditions": [
      {
        "column_id": "title",
        "operator": "contains",
        "value": "Test",
        "valid": true
      },
      {
        "column_id": "state",
        "operator": "is",
        "value": {
          "id": "queued",
          "name": "pending"
        },
        "valid": true
      }
    ],
    "parameters": {
    },
    "sorting": [
      {
        "column_id": "title",
        "dir": "asc",
        "valid": true
      }
    ],
    "sort": {
      "column_id": "title",
      "dir": "asc",
      "valid": true
    },
    "valid": true,
    "default": false,
    "preset": false
  }
]
GET

/api/v1.0/tasks/filters/:id

Show a task filter

Request

Route

GET /api/v1.0/tasks/filters/1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/tasks/filters/1" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 578

Body

{
  "id": 1,
  "name": "Amazing Tasks",
  "status": "all",
  "restriction": [
    {
      "column_id": "title",
      "operator": "contains",
      "value": "Test",
      "valid": true
    },
    {
      "column_id": "state",
      "operator": "is",
      "value": {
        "id": "queued",
        "name": "pending"
      },
      "valid": true
    }
  ],
  "conditions": [
    {
      "column_id": "title",
      "operator": "contains",
      "value": "Test",
      "valid": true
    },
    {
      "column_id": "state",
      "operator": "is",
      "value": {
        "id": "queued",
        "name": "pending"
      },
      "valid": true
    }
  ],
  "parameters": {
  },
  "sorting": [
    {
      "column_id": "title",
      "dir": "asc",
      "valid": true
    }
  ],
  "sort": {
    "column_id": "title",
    "dir": "asc",
    "valid": true
  },
  "valid": true,
  "default": false,
  "preset": false
}
DELETE

/api/v1.0/tasks/filters/:id

Destroy a task filter

Destroy a filter record.

Request

Route

DELETE /api/v1.0/tasks/filters/1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl "https://runrun.it/api/v1.0/tasks/filters/1" -d '' -X DELETE \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

204

Headers

Justifications

POST

/api/v1.0/justifications

Create an arbitrary Justification

Request

Route

POST /api/v1.0/justifications

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "text": "New Justification 1",
  "date": "2025-10-14"
}

cURL

curl "https://runrun.it/api/v1.0/justifications" -d '{"text":"New Justification 1","date":"2025-10-14"}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

201

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 113

Body

{
  "id": 1,
  "user_id": "coyote-647",
  "date": "2025-10-14",
  "text": "New Justification 1",
  "task_id": null,
  "task_title": null
}
POST

/api/v1.0/justifications

Create an arbitrary Justification for a task

Request

Route

POST /api/v1.0/justifications

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "text": "New Justification 2",
  "date": "2025-10-14",
  "task_id": 592
}

cURL

curl "https://runrun.it/api/v1.0/justifications" -d '{"text":"New Justification 2","date":"2025-10-14","task_id":592}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

201

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 113

Body

{
  "id": 1,
  "user_id": "coyote-648",
  "date": "2025-10-14",
  "text": "New Justification 2",
  "task_id": null,
  "task_title": null
}
PUT

/api/v1.0/justifications/:justification_id

Update the text of a justification

Parameters

Name Description type
user_id required

User's id

integer

date required

Justification's date

date

text

Justification's text

string

task_id

Task's id

integer

task_title

Task title

string

Request

Route

PUT /api/v1.0/justifications/1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "text": "Old justification with a new text"
}

cURL

curl "https://runrun.it/api/v1.0/justifications/1" -d '{"text":"Old justification with a new text"}' -X PUT \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 127

Body

{
  "id": 1,
  "user_id": "coyote-650",
  "date": "2025-10-13",
  "text": "Old justification with a new text",
  "task_id": null,
  "task_title": null
}

Project Description

PUT

/api/v1.0/projects/:project_id/description

Update the project description

Parameters

Name Description type
description

The text of the description

text

current_editor_id

ID of user that is editing the description

string

current_editor_name

Name of user that is editing the description

string

edited_at

Datetime the description has been edited

datetime

locked_at

Datetime the description has been locked by the current editor

datetime

Request

Route

PUT /api/v1.0/projects/1/description

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "description": {
    "id": 1,
    "describable_id": 1,
    "describable_type": "Project",
    "description": "My description",
    "created_at": "2025-10-15T16:55:57-03:00",
    "updated_at": "2025-10-15T16:55:57-03:00",
    "edited_at": "2025-10-15T16:55:57-03:00",
    "current_editor_id": null,
    "locked_at": null,
    "enterprise_id": 1
  },
  "project_description": {
    "id": null,
    "describable_id": 1,
    "describable_type": "Project",
    "description": "Gorgeous!",
    "created_at": null,
    "updated_at": null,
    "edited_at": null,
    "current_editor_id": null,
    "locked_at": null,
    "enterprise_id": null
  }
}

cURL

curl "https://runrun.it/api/v1.0/projects/1/description" -d '{"description":{"id":1,"describable_id":1,"describable_type":"Project","description":"My description","created_at":"2025-10-15T16:55:57-03:00","updated_at":"2025-10-15T16:55:57-03:00","edited_at":"2025-10-15T16:55:57-03:00","current_editor_id":null,"locked_at":null,"enterprise_id":1},"project_description":{"id":null,"describable_id":1,"describable_type":"Project","description":"Gorgeous!","created_at":null,"updated_at":null,"edited_at":null,"current_editor_id":null,"locked_at":null,"enterprise_id":null}}' -X PUT \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 143

Body

{
  "id": 1,
  "description": "Gorgeous!",
  "current_editor_id": null,
  "current_editor_name": null,
  "edited_at": "2025-10-15T16:55:57-03:00",
  "locked_at": null
}

Project Sub Groups

GET

/api/v1.0/project_groups/:project_group_id/project_sub_groups

List all Project Sub Groups using Project Group id

Request

Route

GET /api/v1.0/project_groups/2/project_sub_groups?sort_dir=desc&search_term=Project+Sub+Group+1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Query Parameters

sort_dir=desc
search_term=Project Sub Group 1

cURL

curl -g "https://runrun.it/api/v1.0/project_groups/2/project_sub_groups?sort_dir=desc&search_term=Project+Sub+Group+1" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 614

Body

[
  {
    "id": 3,
    "name": "Project Sub Group 1",
    "is_default": false,
    "project_group_id": 2,
    "client_name": "Test client 463",
    "client_id": 1,
    "project_group_name": "Project Group 1",
    "project_group_is_default": false,
    "projects_count": 0,
    "time_worked": 0,
    "time_pending_not_assigned": 0,
    "time_pending_queued": 0,
    "time_pending": 0,
    "time_total": 0,
    "time_progress": 0.0,
    "cost_worked": 0.0,
    "cost_pending": 0.0,
    "cost_total": 0.0,
    "activities_6_days_ago": 0,
    "activities_5_days_ago": 0,
    "activities_4_days_ago": 0,
    "activities_3_days_ago": 0,
    "activities_2_days_ago": 0,
    "activities_1_days_ago": 0,
    "activities_0_days_ago": 0,
    "activities": 0,
    "time_pending_backlog": 0
  }
]
GET

/api/v1.0/clients/:client_id/project_sub_groups

List all Project Sub Groups using Client id

Request

Route

GET /api/v1.0/clients/1/project_sub_groups?sort_dir=desc&search_term=Project+Sub+Group+2

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Query Parameters

sort_dir=desc
search_term=Project Sub Group 2

cURL

curl -g "https://runrun.it/api/v1.0/clients/1/project_sub_groups?sort_dir=desc&search_term=Project+Sub+Group+2" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 614

Body

[
  {
    "id": 3,
    "name": "Project Sub Group 2",
    "is_default": false,
    "project_group_id": 2,
    "client_name": "Test client 464",
    "client_id": 1,
    "project_group_name": "Project Group 2",
    "project_group_is_default": false,
    "projects_count": 0,
    "time_worked": 0,
    "time_pending_not_assigned": 0,
    "time_pending_queued": 0,
    "time_pending": 0,
    "time_total": 0,
    "time_progress": 0.0,
    "cost_worked": 0.0,
    "cost_pending": 0.0,
    "cost_total": 0.0,
    "activities_6_days_ago": 0,
    "activities_5_days_ago": 0,
    "activities_4_days_ago": 0,
    "activities_3_days_ago": 0,
    "activities_2_days_ago": 0,
    "activities_1_days_ago": 0,
    "activities_0_days_ago": 0,
    "activities": 0,
    "time_pending_backlog": 0
  }
]
GET

/api/v1.0/project_groups/:project_group_id/project_sub_groups/:id

Show a Project Sub Group

Request

Route

GET /api/v1.0/project_groups/2/project_sub_groups/3

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/project_groups/2/project_sub_groups/3" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 612

Body

{
  "id": 3,
  "name": "Project Sub Group 3",
  "is_default": false,
  "project_group_id": 2,
  "client_name": "Test client 465",
  "client_id": 1,
  "project_group_name": "Project Group 3",
  "project_group_is_default": false,
  "projects_count": 0,
  "time_worked": 0,
  "time_pending_not_assigned": 0,
  "time_pending_queued": 0,
  "time_pending": 0,
  "time_total": 0,
  "time_progress": 0.0,
  "cost_worked": 0.0,
  "cost_pending": 0.0,
  "cost_total": 0.0,
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "time_pending_backlog": 0
}
POST

/api/v1.0/project_groups/:project_group_id/project_sub_groups

Create a Project Sub Group

When creating a project sub group the name must be unique among project groups belonging to the same client.

Parameters

Name Description type
name

Name of project group

string

is_default

Project group is default for that client?

boolean

Request

Route

POST /api/v1.0/project_groups/2/project_sub_groups

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "project_sub_group": {
    "name": "Project Sub Group 4",
    "is_default": false
  }
}

cURL

curl "https://runrun.it/api/v1.0/project_groups/2/project_sub_groups" -d '{"project_sub_group":{"name":"Project Sub Group 4","is_default":false}}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

201

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 612

Body

{
  "id": 3,
  "name": "Project Sub Group 4",
  "is_default": false,
  "project_group_id": 2,
  "client_name": "Test client 466",
  "client_id": 1,
  "project_group_name": "Project Group 4",
  "project_group_is_default": false,
  "projects_count": 0,
  "time_worked": 0,
  "time_pending_not_assigned": 0,
  "time_pending_queued": 0,
  "time_pending": 0,
  "time_total": 0,
  "time_progress": 0.0,
  "cost_worked": 0.0,
  "cost_pending": 0.0,
  "cost_total": 0.0,
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "time_pending_backlog": 0
}
PUT

/api/v1.0/project_groups/:project_group_id/project_sub_groups/:id

Update a Project Sub Group

When updating a project sub group the name must be unique among project groups belonging to the same client.

Request

Route

PUT /api/v1.0/project_groups/2/project_sub_groups/3

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "project_sub_group": {
    "name": "New Name"
  }
}

cURL

curl "https://runrun.it/api/v1.0/project_groups/2/project_sub_groups/3" -d '{"project_sub_group":{"name":"New Name"}}' -X PUT \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 601

Body

{
  "id": 3,
  "name": "New Name",
  "is_default": false,
  "project_group_id": 2,
  "client_name": "Test client 469",
  "client_id": 1,
  "project_group_name": "Project Group 6",
  "project_group_is_default": false,
  "projects_count": 0,
  "time_worked": 0,
  "time_pending_not_assigned": 0,
  "time_pending_queued": 0,
  "time_pending": 0,
  "time_total": 0,
  "time_progress": 0.0,
  "cost_worked": 0.0,
  "cost_pending": 0.0,
  "cost_total": 0.0,
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "time_pending_backlog": 0
}
DELETE

/api/v1.0/project_groups/:project_group_id/project_sub_groups/:id

Destroy a Project Sub Group

Request

Route

DELETE /api/v1.0/project_groups/2/project_sub_groups/3

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl "https://runrun.it/api/v1.0/project_groups/2/project_sub_groups/3" -d '' -X DELETE \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

204

Headers

POST

/api/v1.0/project_sub_groups/:id/move

Move project sub group to another project group

Request

Route

POST /api/v1.0/project_sub_groups/3/move

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "project_group_id": 4
}

cURL

curl "https://runrun.it/api/v1.0/project_sub_groups/3/move" -d '{"project_group_id":4}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 605

Body

{
  "id": 3,
  "name": "Project Sub Group 9",
  "is_default": false,
  "project_group_id": 4,
  "client_name": "Client B",
  "client_id": 2,
  "project_group_name": "Project Group B",
  "project_group_is_default": false,
  "projects_count": 0,
  "time_worked": 0,
  "time_pending_not_assigned": 0,
  "time_pending_queued": 0,
  "time_pending": 0,
  "time_total": 0,
  "time_progress": 0.0,
  "cost_worked": 0.0,
  "cost_pending": 0.0,
  "cost_total": 0.0,
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "time_pending_backlog": 0
}

Project Templates

GET

/api/v1.0/project_templates

List all Project Templates

Request

Route

GET /api/v1.0/project_templates

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/project_templates" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 2

Body

[

]
GET

/api/v1.0/project_templates/:id

Show a Project Template

Request

Route

GET /api/v1.0/project_templates/1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/project_templates/1" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 41

Body

{
  "id": 1,
  "name": "Test project template 1"
}
POST

/api/v1.0/project_templates/

Create a Project Template

When creating a project template the name must be unique among projects belonging to the same client.

Parameters

Name Description type
name

Name of project template

string

Request

Route

POST /api/v1.0/project_templates/

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "project_template": {
    "name": "Test project template 2"
  }
}

cURL

curl "https://runrun.it/api/v1.0/project_templates/" -d '{"project_template":{"name":"Test project template 2"}}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

201

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 41

Body

{
  "id": 1,
  "name": "Test project template 2"
}
PUT

/api/v1.0/project_templates/:id

Update a Project Template

When updating a project template the name must be unique among projects belonging to the same client.

Request

Route

PUT /api/v1.0/project_templates/1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "project_template": {
    "name": "New Name"
  }
}

cURL

curl "https://runrun.it/api/v1.0/project_templates/1" -d '{"project_template":{"name":"New Name"}}' -X PUT \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 26

Body

{
  "id": 1,
  "name": "New Name"
}
DELETE

/api/v1.0/project_templates/:id

Destroy a Project Template

Request

Route

DELETE /api/v1.0/project_templates/1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl "https://runrun.it/api/v1.0/project_templates/1" -d '' -X DELETE \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

204

Headers

Projects

GET

/api/v1.0/projects

List all projects

Request

Route

GET /api/v1.0/projects

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/projects" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 1445

Body

[
  {
    "id": 1,
    "name": "Project_A",
    "start_date": null,
    "close_date": null,
    "is_closed": false,
    "client_id": 1,
    "project_group_id": 1,
    "project_sub_group_id": 1,
    "budgeted_cost": 0.0,
    "desired_date": null,
    "created_at": "2025-10-15T16:52:34-03:00",
    "is_public": true,
    "is_shared": false,
    "sharing_details": [

    ],
    "use_new_permissions": true,
    "board_stage_id": null,
    "client_name": "Test client 436",
    "project_group_name": "No group",
    "project_group_is_default": true,
    "project_sub_group_name": "No subgroup",
    "project_sub_group_is_default": true,
    "tasks_count": 0,
    "tasks_count_progress": 0.0,
    "tasks_not_assigned_count": 0,
    "tasks_queued_count": 0,
    "tasks_working_on_count": 0,
    "tasks_closed_count": 0,
    "task_points_sum": 0,
    "task_points_progress": null,
    "task_points_not_assigned_sum": 0,
    "task_points_queued_sum": 0,
    "task_points_working_on_sum": 0,
    "task_points_closed_sum": 0,
    "time_worked": 0,
    "time_pending": 0,
    "time_pending_not_assigned": 0,
    "time_pending_queued": 0,
    "time_total": 0,
    "time_progress": 0.0,
    "overdue": "on_schedule",
    "cost_worked": 0.0,
    "cost_pending": 0.0,
    "extra_costs": 0.0,
    "cost_total": 0.0,
    "cost_progress": null,
    "over_budget": "on_budget",
    "activities_6_days_ago": 0,
    "activities_5_days_ago": 0,
    "activities_4_days_ago": 0,
    "activities_3_days_ago": 0,
    "activities_2_days_ago": 0,
    "activities_1_days_ago": 0,
    "activities_0_days_ago": 0,
    "activities": 0,
    "estimated_delivery_date": null,
    "board_stage_name": null,
    "board_stage_color": null,
    "activities_7_days_ago": 0,
    "time_pending_backlog": 0,
    "tasks_backlog_count": 0,
    "is_active": true
  }
]
GET

/api/v1.0/projects/:id

Show a Project

Request

Route

GET /api/v1.0/projects/1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/projects/1" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 1443

Body

{
  "id": 1,
  "name": "Project_A",
  "start_date": null,
  "close_date": null,
  "is_closed": false,
  "client_id": 1,
  "project_group_id": 1,
  "project_sub_group_id": 1,
  "budgeted_cost": 0.0,
  "desired_date": null,
  "created_at": "2025-10-15T16:52:37-03:00",
  "is_public": true,
  "is_shared": false,
  "sharing_details": [

  ],
  "use_new_permissions": true,
  "board_stage_id": null,
  "client_name": "Test client 440",
  "project_group_name": "No group",
  "project_group_is_default": true,
  "project_sub_group_name": "No subgroup",
  "project_sub_group_is_default": true,
  "tasks_count": 0,
  "tasks_count_progress": 0.0,
  "tasks_not_assigned_count": 0,
  "tasks_queued_count": 0,
  "tasks_working_on_count": 0,
  "tasks_closed_count": 0,
  "task_points_sum": 0,
  "task_points_progress": null,
  "task_points_not_assigned_sum": 0,
  "task_points_queued_sum": 0,
  "task_points_working_on_sum": 0,
  "task_points_closed_sum": 0,
  "time_worked": 0,
  "time_pending": 0,
  "time_pending_not_assigned": 0,
  "time_pending_queued": 0,
  "time_total": 0,
  "time_progress": 0.0,
  "overdue": "on_schedule",
  "cost_worked": 0.0,
  "cost_pending": 0.0,
  "extra_costs": 0.0,
  "cost_total": 0.0,
  "cost_progress": null,
  "over_budget": "on_budget",
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "estimated_delivery_date": null,
  "board_stage_name": null,
  "board_stage_color": null,
  "activities_7_days_ago": 0,
  "time_pending_backlog": 0,
  "tasks_backlog_count": 0,
  "is_active": true
}
POST

/api/v1.0/projects/

Create a Project

Request

Route

POST /api/v1.0/projects/

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "project": {
    "name": "New Project",
    "client_id": 1,
    "start_date": "2025-01-01",
    "desired_date": "2025-01-31"
  }
}

cURL

curl "https://runrun.it/api/v1.0/projects/" -d '{"project":{"name":"New Project","client_id":1,"start_date":"2025-01-01","desired_date":"2025-01-31"}}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

201

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 1492

Body

{
  "id": 1,
  "name": "New Project",
  "start_date": "2025-01-01T00:00:00-03:00",
  "close_date": null,
  "is_closed": false,
  "client_id": 1,
  "project_group_id": 1,
  "project_sub_group_id": 1,
  "budgeted_cost": 0.0,
  "desired_date": "2025-01-31T00:00:00-03:00",
  "created_at": "2025-10-15T16:52:38-03:00",
  "is_public": true,
  "is_shared": false,
  "sharing_details": [

  ],
  "use_new_permissions": true,
  "board_stage_id": null,
  "client_name": "Test client 441",
  "project_group_name": "No group",
  "project_group_is_default": true,
  "project_sub_group_name": "No subgroup",
  "project_sub_group_is_default": true,
  "tasks_count": 0,
  "tasks_count_progress": 0.0,
  "tasks_not_assigned_count": 0,
  "tasks_queued_count": 0,
  "tasks_working_on_count": 0,
  "tasks_closed_count": 0,
  "task_points_sum": 0,
  "task_points_progress": null,
  "task_points_not_assigned_sum": 0,
  "task_points_queued_sum": 0,
  "task_points_working_on_sum": 0,
  "task_points_closed_sum": 0,
  "time_worked": 0,
  "time_pending": 0,
  "time_pending_not_assigned": 0,
  "time_pending_queued": 0,
  "time_total": 0,
  "time_progress": 0.0,
  "overdue": "hard_overdue",
  "cost_worked": 0.0,
  "cost_pending": 0.0,
  "extra_costs": 0.0,
  "cost_total": 0.0,
  "cost_progress": null,
  "over_budget": "on_budget",
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "estimated_delivery_date": null,
  "board_stage_name": null,
  "board_stage_color": null,
  "activities_7_days_ago": 0,
  "time_pending_backlog": 0,
  "tasks_backlog_count": 0,
  "is_active": true
}
PUT

/api/v1.0/projects/:id

Deliver the project

Parameters

Name Description type
id required

The unique identifier of the project to be updated.

integer

is_active required

Defines whether the project is active (true) or delivered (false).

boolean

Request

Route

PUT /api/v1.0/projects/1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "is_active": false
}

cURL

curl "https://runrun.it/api/v1.0/projects/1" -d '{"is_active":false}' -X PUT \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 1466

Body

{
  "id": 1,
  "name": "Project_A",
  "start_date": null,
  "close_date": "2025-10-15T16:52:40-03:00",
  "is_closed": true,
  "client_id": 1,
  "project_group_id": 1,
  "project_sub_group_id": 1,
  "budgeted_cost": 0.0,
  "desired_date": null,
  "created_at": "2025-10-15T16:52:40-03:00",
  "is_public": true,
  "is_shared": false,
  "sharing_details": [

  ],
  "use_new_permissions": true,
  "board_stage_id": null,
  "client_name": "Test client 444",
  "project_group_name": "No group",
  "project_group_is_default": true,
  "project_sub_group_name": "No subgroup",
  "project_sub_group_is_default": true,
  "tasks_count": 0,
  "tasks_count_progress": 0.0,
  "tasks_not_assigned_count": 0,
  "tasks_queued_count": 0,
  "tasks_working_on_count": 0,
  "tasks_closed_count": 0,
  "task_points_sum": 0,
  "task_points_progress": null,
  "task_points_not_assigned_sum": 0,
  "task_points_queued_sum": 0,
  "task_points_working_on_sum": 0,
  "task_points_closed_sum": 0,
  "time_worked": 0,
  "time_pending": 0,
  "time_pending_not_assigned": 0,
  "time_pending_queued": 0,
  "time_total": 0,
  "time_progress": 0.0,
  "overdue": "on_schedule",
  "cost_worked": 0.0,
  "cost_pending": 0.0,
  "extra_costs": 0.0,
  "cost_total": 0.0,
  "cost_progress": null,
  "over_budget": "on_budget",
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "estimated_delivery_date": null,
  "board_stage_name": null,
  "board_stage_color": null,
  "activities_7_days_ago": 0,
  "time_pending_backlog": 0,
  "tasks_backlog_count": 0,
  "is_active": false
}
PUT

/api/v1.0/projects/:id

Reopen the project

Parameters

Name Description type
id required

The unique identifier of the project to be updated.

integer

is_active required

Defines whether the project is active (true) or delivered (false).

boolean

Request

Route

PUT /api/v1.0/projects/1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "is_active": true
}

cURL

curl "https://runrun.it/api/v1.0/projects/1" -d '{"is_active":true}' -X PUT \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 1443

Body

{
  "id": 1,
  "name": "Project_A",
  "start_date": null,
  "close_date": null,
  "is_closed": false,
  "client_id": 1,
  "project_group_id": 1,
  "project_sub_group_id": 1,
  "budgeted_cost": 0.0,
  "desired_date": null,
  "created_at": "2025-10-15T16:52:40-03:00",
  "is_public": true,
  "is_shared": false,
  "sharing_details": [

  ],
  "use_new_permissions": true,
  "board_stage_id": null,
  "client_name": "Test client 445",
  "project_group_name": "No group",
  "project_group_is_default": true,
  "project_sub_group_name": "No subgroup",
  "project_sub_group_is_default": true,
  "tasks_count": 0,
  "tasks_count_progress": 0.0,
  "tasks_not_assigned_count": 0,
  "tasks_queued_count": 0,
  "tasks_working_on_count": 0,
  "tasks_closed_count": 0,
  "task_points_sum": 0,
  "task_points_progress": null,
  "task_points_not_assigned_sum": 0,
  "task_points_queued_sum": 0,
  "task_points_working_on_sum": 0,
  "task_points_closed_sum": 0,
  "time_worked": 0,
  "time_pending": 0,
  "time_pending_not_assigned": 0,
  "time_pending_queued": 0,
  "time_total": 0,
  "time_progress": 0.0,
  "overdue": "on_schedule",
  "cost_worked": 0.0,
  "cost_pending": 0.0,
  "extra_costs": 0.0,
  "cost_total": 0.0,
  "cost_progress": null,
  "over_budget": "on_budget",
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "estimated_delivery_date": null,
  "board_stage_name": null,
  "board_stage_color": null,
  "activities_7_days_ago": 0,
  "time_pending_backlog": 0,
  "tasks_backlog_count": 0,
  "is_active": true
}
POST

/api/v1.0/projects/:id/move

Move project to another client

Request

Route

POST /api/v1.0/projects/1/move

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "client_id": 2
}

cURL

curl "https://runrun.it/api/v1.0/projects/1/move" -d '{"client_id":2}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 1436

Body

{
  "id": 1,
  "name": "Project A",
  "start_date": null,
  "close_date": null,
  "is_closed": false,
  "client_id": 2,
  "project_group_id": 3,
  "project_sub_group_id": 4,
  "budgeted_cost": 0.0,
  "desired_date": null,
  "created_at": "2025-10-15T16:52:42-03:00",
  "is_public": true,
  "is_shared": false,
  "sharing_details": [

  ],
  "use_new_permissions": true,
  "board_stage_id": null,
  "client_name": "Client B",
  "project_group_name": "No group",
  "project_group_is_default": true,
  "project_sub_group_name": "No subgroup",
  "project_sub_group_is_default": true,
  "tasks_count": 0,
  "tasks_count_progress": 0.0,
  "tasks_not_assigned_count": 0,
  "tasks_queued_count": 0,
  "tasks_working_on_count": 0,
  "tasks_closed_count": 0,
  "task_points_sum": 0,
  "task_points_progress": null,
  "task_points_not_assigned_sum": 0,
  "task_points_queued_sum": 0,
  "task_points_working_on_sum": 0,
  "task_points_closed_sum": 0,
  "time_worked": 0,
  "time_pending": 0,
  "time_pending_not_assigned": 0,
  "time_pending_queued": 0,
  "time_total": 0,
  "time_progress": 0.0,
  "overdue": "on_schedule",
  "cost_worked": 0.0,
  "cost_pending": 0.0,
  "extra_costs": 0.0,
  "cost_total": 0.0,
  "cost_progress": null,
  "over_budget": "on_budget",
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "estimated_delivery_date": null,
  "board_stage_name": null,
  "board_stage_color": null,
  "activities_7_days_ago": 0,
  "time_pending_backlog": 0,
  "tasks_backlog_count": 0,
  "is_active": true
}
POST

/api/v1.0/projects/:id/move

Move project to another project group

Request

Route

POST /api/v1.0/projects/1/move

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "project_group_id": 4
}

cURL

curl "https://runrun.it/api/v1.0/projects/1/move" -d '{"project_group_id":4}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 1444

Body

{
  "id": 1,
  "name": "Project A",
  "start_date": null,
  "close_date": null,
  "is_closed": false,
  "client_id": 2,
  "project_group_id": 4,
  "project_sub_group_id": 5,
  "budgeted_cost": 0.0,
  "desired_date": null,
  "created_at": "2025-10-15T16:52:42-03:00",
  "is_public": true,
  "is_shared": false,
  "sharing_details": [

  ],
  "use_new_permissions": true,
  "board_stage_id": null,
  "client_name": "Client B",
  "project_group_name": "Project Group B",
  "project_group_is_default": false,
  "project_sub_group_name": "No subgroup",
  "project_sub_group_is_default": true,
  "tasks_count": 0,
  "tasks_count_progress": 0.0,
  "tasks_not_assigned_count": 0,
  "tasks_queued_count": 0,
  "tasks_working_on_count": 0,
  "tasks_closed_count": 0,
  "task_points_sum": 0,
  "task_points_progress": null,
  "task_points_not_assigned_sum": 0,
  "task_points_queued_sum": 0,
  "task_points_working_on_sum": 0,
  "task_points_closed_sum": 0,
  "time_worked": 0,
  "time_pending": 0,
  "time_pending_not_assigned": 0,
  "time_pending_queued": 0,
  "time_total": 0,
  "time_progress": 0.0,
  "overdue": "on_schedule",
  "cost_worked": 0.0,
  "cost_pending": 0.0,
  "extra_costs": 0.0,
  "cost_total": 0.0,
  "cost_progress": null,
  "over_budget": "on_budget",
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "estimated_delivery_date": null,
  "board_stage_name": null,
  "board_stage_color": null,
  "activities_7_days_ago": 0,
  "time_pending_backlog": 0,
  "tasks_backlog_count": 0,
  "is_active": true
}
POST

/api/v1.0/projects/:id/move

Move project to another project sub group

Request

Route

POST /api/v1.0/projects/1/move

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "project_sub_group_id": 6
}

cURL

curl "https://runrun.it/api/v1.0/projects/1/move" -d '{"project_sub_group_id":6}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 1453

Body

{
  "id": 1,
  "name": "Project A",
  "start_date": null,
  "close_date": null,
  "is_closed": false,
  "client_id": 2,
  "project_group_id": 4,
  "project_sub_group_id": 6,
  "budgeted_cost": 0.0,
  "desired_date": null,
  "created_at": "2025-10-15T16:52:43-03:00",
  "is_public": true,
  "is_shared": false,
  "sharing_details": [

  ],
  "use_new_permissions": true,
  "board_stage_id": null,
  "client_name": "Client B",
  "project_group_name": "Project Group B",
  "project_group_is_default": false,
  "project_sub_group_name": "Project Sub Group B",
  "project_sub_group_is_default": false,
  "tasks_count": 0,
  "tasks_count_progress": 0.0,
  "tasks_not_assigned_count": 0,
  "tasks_queued_count": 0,
  "tasks_working_on_count": 0,
  "tasks_closed_count": 0,
  "task_points_sum": 0,
  "task_points_progress": null,
  "task_points_not_assigned_sum": 0,
  "task_points_queued_sum": 0,
  "task_points_working_on_sum": 0,
  "task_points_closed_sum": 0,
  "time_worked": 0,
  "time_pending": 0,
  "time_pending_not_assigned": 0,
  "time_pending_queued": 0,
  "time_total": 0,
  "time_progress": 0.0,
  "overdue": "on_schedule",
  "cost_worked": 0.0,
  "cost_pending": 0.0,
  "extra_costs": 0.0,
  "cost_total": 0.0,
  "cost_progress": null,
  "over_budget": "on_budget",
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "estimated_delivery_date": null,
  "board_stage_name": null,
  "board_stage_color": null,
  "activities_7_days_ago": 0,
  "time_pending_backlog": 0,
  "tasks_backlog_count": 0,
  "is_active": true
}
POST

/api/v1.0/projects/:id/share

Share the project

Share the project with guests.

Parameters

Name Description type
id required

ID of project

integer

comment

Comment

string

guests_params

List of objects with guest data

array

sharing_details

List of optional information to be shared. Options: "tasks", "desired_date", "board_stage", "time_progress", "tasks_count_progress"

array

Request

Route

POST /api/v1.0/projects/1/share

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "sharing_details": [
    "desired_date"
  ],
  "guests_params": [
    {
      "email": "guest1@email.com"
    },
    {
      "email": "guest2@email.com"
    }
  ]
}

cURL

curl "https://runrun.it/api/v1.0/projects/1/share" -d '{"sharing_details":["desired_date"],"guests_params":[{"email":"guest1@email.com"},{"email":"guest2@email.com"}]}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 1456

Body

{
  "id": 1,
  "name": "Project_A",
  "start_date": null,
  "close_date": null,
  "is_closed": false,
  "client_id": 1,
  "project_group_id": 1,
  "project_sub_group_id": 1,
  "budgeted_cost": 0.0,
  "desired_date": null,
  "created_at": "2025-10-15T16:52:43-03:00",
  "is_public": true,
  "is_shared": true,
  "sharing_details": [
    "desired_date"
  ],
  "use_new_permissions": true,
  "board_stage_id": null,
  "client_name": "Test client 447",
  "project_group_name": "No group",
  "project_group_is_default": true,
  "project_sub_group_name": "No subgroup",
  "project_sub_group_is_default": true,
  "tasks_count": 0,
  "tasks_count_progress": 0.0,
  "tasks_not_assigned_count": 0,
  "tasks_queued_count": 0,
  "tasks_working_on_count": 0,
  "tasks_closed_count": 0,
  "task_points_sum": 0,
  "task_points_progress": null,
  "task_points_not_assigned_sum": 0,
  "task_points_queued_sum": 0,
  "task_points_working_on_sum": 0,
  "task_points_closed_sum": 0,
  "time_worked": 0,
  "time_pending": 0,
  "time_pending_not_assigned": 0,
  "time_pending_queued": 0,
  "time_total": 0,
  "time_progress": 0.0,
  "overdue": "on_schedule",
  "cost_worked": 0.0,
  "cost_pending": 0.0,
  "extra_costs": 0.0,
  "cost_total": 0.0,
  "cost_progress": null,
  "over_budget": "on_budget",
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "estimated_delivery_date": null,
  "board_stage_name": null,
  "board_stage_color": null,
  "activities_7_days_ago": 0,
  "time_pending_backlog": 0,
  "tasks_backlog_count": 0,
  "is_active": true
}
POST

/api/v1.0/projects/:id/unshare

Unshare the project

Parameters

Name Description type
id required

ID of project

integer

Request

Route

POST /api/v1.0/projects/1/unshare

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl "https://runrun.it/api/v1.0/projects/1/unshare" -d '' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 1443

Body

{
  "id": 1,
  "name": "Project_A",
  "start_date": null,
  "close_date": null,
  "is_closed": false,
  "client_id": 1,
  "project_group_id": 1,
  "project_sub_group_id": 1,
  "budgeted_cost": 0.0,
  "desired_date": null,
  "created_at": "2025-10-15T16:52:44-03:00",
  "is_public": true,
  "is_shared": false,
  "sharing_details": [

  ],
  "use_new_permissions": true,
  "board_stage_id": null,
  "client_name": "Test client 448",
  "project_group_name": "No group",
  "project_group_is_default": true,
  "project_sub_group_name": "No subgroup",
  "project_sub_group_is_default": true,
  "tasks_count": 0,
  "tasks_count_progress": 0.0,
  "tasks_not_assigned_count": 0,
  "tasks_queued_count": 0,
  "tasks_working_on_count": 0,
  "tasks_closed_count": 0,
  "task_points_sum": 0,
  "task_points_progress": null,
  "task_points_not_assigned_sum": 0,
  "task_points_queued_sum": 0,
  "task_points_working_on_sum": 0,
  "task_points_closed_sum": 0,
  "time_worked": 0,
  "time_pending": 0,
  "time_pending_not_assigned": 0,
  "time_pending_queued": 0,
  "time_total": 0,
  "time_progress": 0.0,
  "overdue": "on_schedule",
  "cost_worked": 0.0,
  "cost_pending": 0.0,
  "extra_costs": 0.0,
  "cost_total": 0.0,
  "cost_progress": null,
  "over_budget": "on_budget",
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "estimated_delivery_date": null,
  "board_stage_name": null,
  "board_stage_color": null,
  "activities_7_days_ago": 0,
  "time_pending_backlog": 0,
  "tasks_backlog_count": 0,
  "is_active": true
}
POST

/api/v1.0/projects/:id/clone

Clone a Project

Request

Route

POST /api/v1.0/projects/1/clone

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "new_project": {
    "name": "Cloned Project"
  }
}

cURL

curl "https://runrun.it/api/v1.0/projects/1/clone" -d '{"new_project":{"name":"Cloned Project"}}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json
Content-Length: 0
POST

/api/v1.0/projects/:id/change_board_stage

Change a project board stage

Request

Route

POST /api/v1.0/projects/1/change_board_stage

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "board_stage_id": 1
}

cURL

curl "https://runrun.it/api/v1.0/projects/1/change_board_stage" -d '{"board_stage_id":1}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 1455

Body

{
  "id": 1,
  "name": "Project_A",
  "start_date": null,
  "close_date": null,
  "is_closed": false,
  "client_id": 1,
  "project_group_id": 1,
  "project_sub_group_id": 1,
  "budgeted_cost": 0.0,
  "desired_date": null,
  "created_at": "2025-10-15T16:52:45-03:00",
  "is_public": true,
  "is_shared": false,
  "sharing_details": [

  ],
  "use_new_permissions": true,
  "board_stage_id": 1,
  "client_name": "Test client 450",
  "project_group_name": "No group",
  "project_group_is_default": true,
  "project_sub_group_name": "No subgroup",
  "project_sub_group_is_default": true,
  "tasks_count": 0,
  "tasks_count_progress": 0.0,
  "tasks_not_assigned_count": 0,
  "tasks_queued_count": 0,
  "tasks_working_on_count": 0,
  "tasks_closed_count": 0,
  "task_points_sum": 0,
  "task_points_progress": null,
  "task_points_not_assigned_sum": 0,
  "task_points_queued_sum": 0,
  "task_points_working_on_sum": 0,
  "task_points_closed_sum": 0,
  "time_worked": 0,
  "time_pending": 0,
  "time_pending_not_assigned": 0,
  "time_pending_queued": 0,
  "time_total": 0,
  "time_progress": 0.0,
  "overdue": "on_schedule",
  "cost_worked": 0.0,
  "cost_pending": 0.0,
  "extra_costs": 0.0,
  "cost_total": 0.0,
  "cost_progress": null,
  "over_budget": "on_budget",
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "estimated_delivery_date": null,
  "board_stage_name": "test stage 1",
  "board_stage_color": "#FFFFFF",
  "activities_7_days_ago": 0,
  "time_pending_backlog": 0,
  "tasks_backlog_count": 0,
  "is_active": true
}

Tags

GET

/api/v1.0/tags

Query tags

Parameters

Name Description type
search_term required

Search term for tag name. For a given term will be return a list of tags that match fully or partially with tag name.

string

Request

Route

GET /api/v1.0/tags?search_term=tag

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Query Parameters

search_term=tag

cURL

curl -g "https://runrun.it/api/v1.0/tags?search_term=tag" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 2

Body

[

]

Task Evaluations

POST

/api/v1.0/tasks/:task_id/evaluations

Updates the task evaluations

Request

Route

POST /api/v1.0/tasks/1/evaluations

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "evaluations": [
    {
      "evaluator_id": "coyote-593"
    },
    {
      "evaluator_id": "coyote-594"
    }
  ]
}

cURL

curl "https://runrun.it/api/v1.0/tasks/1/evaluations" -d '{"evaluations":[{"evaluator_id":"coyote-593"},{"evaluator_id":"coyote-594"}]}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

201

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 3276

Body

{
  "id": 1,
  "title": "Bla 399",
  "is_working_on": false,
  "user_id": "coyote-592",
  "guest_id": null,
  "type_id": 1,
  "project_id": 1,
  "team_id": null,
  "board_id": 1,
  "board_stage_id": 1,
  "board_stage_position": 70368744177664,
  "subtask_parent_position": null,
  "desired_date": null,
  "desired_date_with_time": null,
  "estimated_start_date": null,
  "estimated_delivery_date": null,
  "gantt_bar_start_date": null,
  "gantt_bar_end_date": null,
  "close_date": null,
  "was_reopened": false,
  "is_closed": false,
  "is_assigned": true,
  "on_going": false,
  "estimate_updated": false,
  "estimated_at": null,
  "queue_position": 1,
  "created_at": "2025-10-15T16:56:10-03:00",
  "start_date": null,
  "desired_start_date": null,
  "current_estimate_seconds": 3600,
  "evaluation_status": "pending",
  "attachments_count": 0,
  "tags_data": [

  ],
  "client_name": "Test client 475",
  "client_id": 1,
  "project_name": "Test project 475",
  "project_group_name": "No group",
  "project_group_id": 1,
  "project_group_is_default": true,
  "project_sub_group_name": "No subgroup",
  "project_sub_group_id": 1,
  "project_sub_group_is_default": true,
  "type_name": "TaskType 491",
  "user_name": "Coyote 592",
  "guest_name": null,
  "board_name": "Board 357",
  "board_stage_name": "Board Stage 1088",
  "board_stage_description": null,
  "team_name": null,
  "type_color": "FFFFFF",
  "state": "queued",
  "overdue": null,
  "time_worked": 0,
  "time_pending": 3600,
  "time_total": 3600,
  "time_progress": 0.0,
  "activities_6_days_ago": 0,
  "activities_5_days_ago": 0,
  "activities_4_days_ago": 0,
  "activities_3_days_ago": 0,
  "activities_2_days_ago": 0,
  "activities_1_days_ago": 0,
  "activities_0_days_ago": 0,
  "activities": 0,
  "repetition_rule": null,
  "board_remaining_time": null,
  "stage_depart_estimated_at": null,
  "is_urgent": false,
  "points": null,
  "reestimate_count": 0,
  "parent_ids": [

  ],
  "opened_parent_ids": [

  ],
  "parents_max_desired_date": null,
  "child_ids": [

  ],
  "workflow_id": null,
  "checklist_id": null,
  "is_shared": false,
  "sharing_details": [

  ],
  "subtask_ids": [

  ],
  "subtasks_count": 0,
  "subtasks_closed_count": 0,
  "subtasks_count_progress": null,
  "is_subtask": false,
  "parent_task_id": null,
  "parent_task_title": null,
  "all_subtasks_time_worked": null,
  "all_subtasks_times_updating": false,
  "all_subtasks_time_total": null,
  "all_subtasks_time_progress": null,
  "current_level": 0,
  "evaluator_ids": [
    "coyote-593",
    "coyote-594"
  ],
  "pending_evaluator_ids": [
    "coyote-593",
    "coyote-594"
  ],
  "approved_evaluator_ids": [

  ],
  "rejected_evaluator_ids": [

  ],
  "custom_fields": {
  },
  "form_id": null,
  "last_activity_at": "2025-10-15T16:56:10-03:00",
  "automation_id": null,
  "automation_name": null,
  "has_emails": false,
  "prerequisites": [

  ],
  "subsequents": [

  ],
  "priority": 1,
  "tag_list": "",
  "tags": [

  ],
  "scheduled_start_time": null,
  "is_scheduled": false,
  "current_evaluator_id": "coyote-593",
  "assignments": [
    {
      "id": "49537adb9",
      "task_id": 1,
      "assignee_id": "coyote-592",
      "team_id": null,
      "assignee_name": "Coyote 592",
      "team_name": null,
      "queue_position": 1,
      "priority": 1,
      "current_estimate_seconds": 3600,
      "time_worked": 0,
      "estimated_start_date": null,
      "estimate_updated": false,
      "start_date": null,
      "close_date": null,
      "is_closed": false,
      "reestimate_count": 0,
      "is_working_on": false,
      "automatic_time_worked_updated_at": "2025-10-15T16:56:10-03:00",
      "created_at": "2025-10-15T16:56:10-03:00",
      "assignee_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-473/coyote-592/mini.png",
      "assignee_avatar_large_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-473/coyote-592/regular.png",
      "time_worked_not_persisted": 0
    }
  ]
}
DELETE

/api/v1.0/tasks/:task_id/evaluations

Destroy all evaluations for this task

Request

Route

DELETE /api/v1.0/tasks/1/evaluations

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl "https://runrun.it/api/v1.0/tasks/1/evaluations" -d '' -X DELETE \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

204

Headers

Task Evaluations

GET

/api/v1.0/task_evaluations

List all task evaluations when no params are passed

Request

Route

GET /api/v1.0/task_evaluations

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/task_evaluations" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 10394

Body

[
  {
    "id": 3,
    "state": "pending",
    "happened_at": null,
    "evaluator_id": "coyote-415",
    "evaluator_name": "Coyote 415",
    "evaluator_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-209/coyote-415/mini.png",
    "evaluator_is_deleted": false,
    "task": {
      "id": 3,
      "title": "Third task",
      "is_working_on": false,
      "user_id": "coyote-414",
      "guest_id": null,
      "type_id": 3,
      "project_id": 3,
      "team_id": null,
      "board_id": 3,
      "board_stage_id": 7,
      "board_stage_position": 70368744177664,
      "subtask_parent_position": null,
      "desired_date": null,
      "desired_date_with_time": null,
      "estimated_start_date": null,
      "estimated_delivery_date": null,
      "gantt_bar_start_date": null,
      "gantt_bar_end_date": null,
      "close_date": null,
      "was_reopened": false,
      "is_closed": false,
      "is_assigned": true,
      "on_going": false,
      "estimate_updated": false,
      "estimated_at": null,
      "queue_position": 1,
      "created_at": "2025-10-15T16:54:09-03:00",
      "start_date": null,
      "desired_start_date": null,
      "current_estimate_seconds": 3600,
      "evaluation_status": null,
      "attachments_count": 0,
      "tags_data": [

      ],
      "client_name": "Test client 381",
      "client_id": 3,
      "project_name": "Test project 364",
      "project_group_name": "No group",
      "project_group_id": 3,
      "project_group_is_default": true,
      "project_sub_group_name": "No subgroup",
      "project_sub_group_id": 3,
      "project_sub_group_is_default": true,
      "type_name": "TaskType 411",
      "user_name": "Coyote 414",
      "guest_name": null,
      "board_name": "Board 294",
      "board_stage_name": "Board Stage 880",
      "board_stage_description": null,
      "team_name": null,
      "type_color": "FFFFFF",
      "state": "queued",
      "overdue": null,
      "time_worked": 0,
      "time_pending": 3600,
      "time_total": 3600,
      "time_progress": 0.0,
      "activities_6_days_ago": 0,
      "activities_5_days_ago": 0,
      "activities_4_days_ago": 0,
      "activities_3_days_ago": 0,
      "activities_2_days_ago": 0,
      "activities_1_days_ago": 0,
      "activities_0_days_ago": 0,
      "activities": 0,
      "repetition_rule": null,
      "board_remaining_time": null,
      "stage_depart_estimated_at": null,
      "is_urgent": false,
      "points": null,
      "reestimate_count": 0,
      "parent_ids": [

      ],
      "opened_parent_ids": [

      ],
      "parents_max_desired_date": null,
      "child_ids": [

      ],
      "workflow_id": null,
      "checklist_id": null,
      "is_shared": false,
      "sharing_details": [

      ],
      "subtask_ids": [

      ],
      "subtasks_count": 0,
      "subtasks_closed_count": 0,
      "subtasks_count_progress": null,
      "is_subtask": false,
      "parent_task_id": null,
      "parent_task_title": null,
      "all_subtasks_time_worked": null,
      "all_subtasks_times_updating": false,
      "all_subtasks_time_total": null,
      "all_subtasks_time_progress": null,
      "current_level": 0,
      "evaluator_ids": null,
      "pending_evaluator_ids": null,
      "approved_evaluator_ids": null,
      "rejected_evaluator_ids": null,
      "custom_fields": {
      },
      "form_id": null,
      "last_activity_at": "2025-10-15T16:54:09-03:00",
      "automation_id": null,
      "automation_name": null,
      "has_emails": false,
      "prerequisites": [

      ],
      "subsequents": [

      ],
      "priority": 1,
      "tag_list": "",
      "tags": [

      ],
      "scheduled_start_time": null,
      "is_scheduled": false,
      "current_evaluator_id": null,
      "assignments": [
        {
          "id": "dbfa7092b",
          "task_id": 3,
          "assignee_id": "coyote-414",
          "team_id": null,
          "assignee_name": "Coyote 414",
          "team_name": null,
          "queue_position": 1,
          "priority": 1,
          "current_estimate_seconds": 3600,
          "time_worked": 0,
          "estimated_start_date": null,
          "estimate_updated": false,
          "start_date": null,
          "close_date": null,
          "is_closed": false,
          "reestimate_count": 0,
          "is_working_on": false,
          "automatic_time_worked_updated_at": "2025-10-15T16:54:09-03:00",
          "created_at": "2025-10-15T16:54:09-03:00",
          "assignee_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-209/coyote-414/mini.png",
          "assignee_avatar_large_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-209/coyote-414/regular.png",
          "time_worked_not_persisted": 0
        }
      ]
    }
  },
  {
    "id": 2,
    "state": "pending",
    "happened_at": null,
    "evaluator_id": "coyote-412",
    "evaluator_name": "Coyote 412",
    "evaluator_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-209/coyote-412/mini.png",
    "evaluator_is_deleted": false,
    "task": {
      "id": 2,
      "title": "Second task",
      "is_working_on": false,
      "user_id": "coyote-413",
      "guest_id": null,
      "type_id": 2,
      "project_id": 2,
      "team_id": null,
      "board_id": 2,
      "board_stage_id": 4,
      "board_stage_position": 70368744177664,
      "subtask_parent_position": null,
      "desired_date": null,
      "desired_date_with_time": null,
      "estimated_start_date": null,
      "estimated_delivery_date": null,
      "gantt_bar_start_date": null,
      "gantt_bar_end_date": null,
      "close_date": null,
      "was_reopened": false,
      "is_closed": false,
      "is_assigned": true,
      "on_going": false,
      "estimate_updated": false,
      "estimated_at": null,
      "queue_position": 1,
      "created_at": "2025-10-15T16:54:08-03:00",
      "start_date": null,
      "desired_start_date": null,
      "current_estimate_seconds": 3600,
      "evaluation_status": null,
      "attachments_count": 0,
      "tags_data": [

      ],
      "client_name": "Test client 380",
      "client_id": 2,
      "project_name": "Test project 363",
      "project_group_name": "No group",
      "project_group_id": 2,
      "project_group_is_default": true,
      "project_sub_group_name": "No subgroup",
      "project_sub_group_id": 2,
      "project_sub_group_is_default": true,
      "type_name": "TaskType 410",
      "user_name": "Coyote 413",
      "guest_name": null,
      "board_name": "Board 293",
      "board_stage_name": "Board Stage 877",
      "board_stage_description": null,
      "team_name": null,
      "type_color": "FFFFFF",
      "state": "queued",
      "overdue": null,
      "time_worked": 0,
      "time_pending": 3600,
      "time_total": 3600,
      "time_progress": 0.0,
      "activities_6_days_ago": 0,
      "activities_5_days_ago": 0,
      "activities_4_days_ago": 0,
      "activities_3_days_ago": 0,
      "activities_2_days_ago": 0,
      "activities_1_days_ago": 0,
      "activities_0_days_ago": 0,
      "activities": 0,
      "repetition_rule": null,
      "board_remaining_time": null,
      "stage_depart_estimated_at": null,
      "is_urgent": false,
      "points": null,
      "reestimate_count": 0,
      "parent_ids": [

      ],
      "opened_parent_ids": [

      ],
      "parents_max_desired_date": null,
      "child_ids": [

      ],
      "workflow_id": null,
      "checklist_id": null,
      "is_shared": false,
      "sharing_details": [

      ],
      "subtask_ids": [

      ],
      "subtasks_count": 0,
      "subtasks_closed_count": 0,
      "subtasks_count_progress": null,
      "is_subtask": false,
      "parent_task_id": null,
      "parent_task_title": null,
      "all_subtasks_time_worked": null,
      "all_subtasks_times_updating": false,
      "all_subtasks_time_total": null,
      "all_subtasks_time_progress": null,
      "current_level": 0,
      "evaluator_ids": null,
      "pending_evaluator_ids": null,
      "approved_evaluator_ids": null,
      "rejected_evaluator_ids": null,
      "custom_fields": {
      },
      "form_id": null,
      "last_activity_at": "2025-10-15T16:54:08-03:00",
      "automation_id": null,
      "automation_name": null,
      "has_emails": false,
      "prerequisites": [

      ],
      "subsequents": [

      ],
      "priority": 1,
      "tag_list": "",
      "tags": [

      ],
      "scheduled_start_time": null,
      "is_scheduled": false,
      "current_evaluator_id": null,
      "assignments": [
        {
          "id": "92a6f5b72",
          "task_id": 2,
          "assignee_id": "coyote-413",
          "team_id": null,
          "assignee_name": "Coyote 413",
          "team_name": null,
          "queue_position": 1,
          "priority": 1,
          "current_estimate_seconds": 3600,
          "time_worked": 0,
          "estimated_start_date": null,
          "estimate_updated": false,
          "start_date": null,
          "close_date": null,
          "is_closed": false,
          "reestimate_count": 0,
          "is_working_on": false,
          "automatic_time_worked_updated_at": "2025-10-15T16:54:08-03:00",
          "created_at": "2025-10-15T16:54:08-03:00",
          "assignee_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-209/coyote-413/mini.png",
          "assignee_avatar_large_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-209/coyote-413/regular.png",
          "time_worked_not_persisted": 0
        }
      ]
    }
  },
  {
    "id": 1,
    "state": "pending",
    "happened_at": null,
    "evaluator_id": "coyote-412",
    "evaluator_name": "Coyote 412",
    "evaluator_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-209/coyote-412/mini.png",
    "evaluator_is_deleted": false,
    "task": {
      "id": 1,
      "title": "First task",
      "is_working_on": false,
      "user_id": "coyote-411",
      "guest_id": null,
      "type_id": 1,
      "project_id": 1,
      "team_id": null,
      "board_id": 1,
      "board_stage_id": 1,
      "board_stage_position": 70368744177664,
      "subtask_parent_position": null,
      "desired_date": null,
      "desired_date_with_time": null,
      "estimated_start_date": null,
      "estimated_delivery_date": null,
      "gantt_bar_start_date": null,
      "gantt_bar_end_date": null,
      "close_date": null,
      "was_reopened": false,
      "is_closed": false,
      "is_assigned": true,
      "on_going": false,
      "estimate_updated": false,
      "estimated_at": null,
      "queue_position": 1,
      "created_at": "2025-10-15T16:54:08-03:00",
      "start_date": null,
      "desired_start_date": null,
      "current_estimate_seconds": 3600,
      "evaluation_status": null,
      "attachments_count": 0,
      "tags_data": [

      ],
      "client_name": "Test client 379",
      "client_id": 1,
      "project_name": "Test project 362",
      "project_group_name": "No group",
      "project_group_id": 1,
      "project_group_is_default": true,
      "project_sub_group_name": "No subgroup",
      "project_sub_group_id": 1,
      "project_sub_group_is_default": true,
      "type_name": "TaskType 409",
      "user_name": "Coyote 411",
      "guest_name": null,
      "board_name": "Board 292",
      "board_stage_name": "Board Stage 874",
      "board_stage_description": null,
      "team_name": null,
      "type_color": "FFFFFF",
      "state": "queued",
      "overdue": null,
      "time_worked": 0,
      "time_pending": 3600,
      "time_total": 3600,
      "time_progress": 0.0,
      "activities_6_days_ago": 0,
      "activities_5_days_ago": 0,
      "activities_4_days_ago": 0,
      "activities_3_days_ago": 0,
      "activities_2_days_ago": 0,
      "activities_1_days_ago": 0,
      "activities_0_days_ago": 0,
      "activities": 0,
      "repetition_rule": null,
      "board_remaining_time": null,
      "stage_depart_estimated_at": null,
      "is_urgent": false,
      "points": null,
      "reestimate_count": 0,
      "parent_ids": [

      ],
      "opened_parent_ids": [

      ],
      "parents_max_desired_date": null,
      "child_ids": [

      ],
      "workflow_id": null,
      "checklist_id": null,
      "is_shared": false,
      "sharing_details": [

      ],
      "subtask_ids": [

      ],
      "subtasks_count": 0,
      "subtasks_closed_count": 0,
      "subtasks_count_progress": null,
      "is_subtask": false,
      "parent_task_id": null,
      "parent_task_title": null,
      "all_subtasks_time_worked": null,
      "all_subtasks_times_updating": false,
      "all_subtasks_time_total": null,
      "all_subtasks_time_progress": null,
      "current_level": 0,
      "evaluator_ids": null,
      "pending_evaluator_ids": null,
      "approved_evaluator_ids": null,
      "rejected_evaluator_ids": null,
      "custom_fields": {
      },
      "form_id": null,
      "last_activity_at": "2025-10-15T16:54:08-03:00",
      "automation_id": null,
      "automation_name": null,
      "has_emails": false,
      "prerequisites": [

      ],
      "subsequents": [

      ],
      "priority": 1,
      "tag_list": "",
      "tags": [

      ],
      "scheduled_start_time": null,
      "is_scheduled": false,
      "current_evaluator_id": null,
      "assignments": [
        {
          "id": "49537adb9",
          "task_id": 1,
          "assignee_id": "coyote-411",
          "team_id": null,
          "assignee_name": "Coyote 411",
          "team_name": null,
          "queue_position": 1,
          "priority": 1,
          "current_estimate_seconds": 3600,
          "time_worked": 0,
          "estimated_start_date": null,
          "estimate_updated": false,
          "start_date": null,
          "close_date": null,
          "is_closed": false,
          "reestimate_count": 0,
          "is_working_on": false,
          "automatic_time_worked_updated_at": "2025-10-15T16:54:08-03:00",
          "created_at": "2025-10-15T16:54:08-03:00",
          "assignee_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-209/coyote-411/mini.png",
          "assignee_avatar_large_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-209/coyote-411/regular.png",
          "time_worked_not_persisted": 0
        }
      ]
    }
  }
]
GET

/api/v1.0/task_evaluations

List all task evaluations for a specific task

Request

Route

GET /api/v1.0/task_evaluations?task_id=1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Query Parameters

task_id=1

cURL

curl -g "https://runrun.it/api/v1.0/task_evaluations?task_id=1" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 3465

Body

[
  {
    "id": 1,
    "state": "pending",
    "happened_at": null,
    "evaluator_id": "coyote-418",
    "evaluator_name": "Coyote 418",
    "evaluator_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-210/coyote-418/mini.png",
    "evaluator_is_deleted": false,
    "task": {
      "id": 1,
      "title": "First task",
      "is_working_on": false,
      "user_id": "coyote-417",
      "guest_id": null,
      "type_id": 1,
      "project_id": 1,
      "team_id": null,
      "board_id": 1,
      "board_stage_id": 1,
      "board_stage_position": 70368744177664,
      "subtask_parent_position": null,
      "desired_date": null,
      "desired_date_with_time": null,
      "estimated_start_date": null,
      "estimated_delivery_date": null,
      "gantt_bar_start_date": null,
      "gantt_bar_end_date": null,
      "close_date": null,
      "was_reopened": false,
      "is_closed": false,
      "is_assigned": true,
      "on_going": false,
      "estimate_updated": false,
      "estimated_at": null,
      "queue_position": 1,
      "created_at": "2025-10-15T16:54:10-03:00",
      "start_date": null,
      "desired_start_date": null,
      "current_estimate_seconds": 3600,
      "evaluation_status": null,
      "attachments_count": 0,
      "tags_data": [

      ],
      "client_name": "Test client 382",
      "client_id": 1,
      "project_name": "Test project 365",
      "project_group_name": "No group",
      "project_group_id": 1,
      "project_group_is_default": true,
      "project_sub_group_name": "No subgroup",
      "project_sub_group_id": 1,
      "project_sub_group_is_default": true,
      "type_name": "TaskType 412",
      "user_name": "Coyote 417",
      "guest_name": null,
      "board_name": "Board 295",
      "board_stage_name": "Board Stage 883",
      "board_stage_description": null,
      "team_name": null,
      "type_color": "FFFFFF",
      "state": "queued",
      "overdue": null,
      "time_worked": 0,
      "time_pending": 3600,
      "time_total": 3600,
      "time_progress": 0.0,
      "activities_6_days_ago": 0,
      "activities_5_days_ago": 0,
      "activities_4_days_ago": 0,
      "activities_3_days_ago": 0,
      "activities_2_days_ago": 0,
      "activities_1_days_ago": 0,
      "activities_0_days_ago": 0,
      "activities": 0,
      "repetition_rule": null,
      "board_remaining_time": null,
      "stage_depart_estimated_at": null,
      "is_urgent": false,
      "points": null,
      "reestimate_count": 0,
      "parent_ids": [

      ],
      "opened_parent_ids": [

      ],
      "parents_max_desired_date": null,
      "child_ids": [

      ],
      "workflow_id": null,
      "checklist_id": null,
      "is_shared": false,
      "sharing_details": [

      ],
      "subtask_ids": [

      ],
      "subtasks_count": 0,
      "subtasks_closed_count": 0,
      "subtasks_count_progress": null,
      "is_subtask": false,
      "parent_task_id": null,
      "parent_task_title": null,
      "all_subtasks_time_worked": null,
      "all_subtasks_times_updating": false,
      "all_subtasks_time_total": null,
      "all_subtasks_time_progress": null,
      "current_level": 0,
      "evaluator_ids": null,
      "pending_evaluator_ids": null,
      "approved_evaluator_ids": null,
      "rejected_evaluator_ids": null,
      "custom_fields": {
      },
      "form_id": null,
      "last_activity_at": "2025-10-15T16:54:10-03:00",
      "automation_id": null,
      "automation_name": null,
      "has_emails": false,
      "prerequisites": [

      ],
      "subsequents": [

      ],
      "priority": 1,
      "tag_list": "",
      "tags": [

      ],
      "scheduled_start_time": null,
      "is_scheduled": false,
      "current_evaluator_id": null,
      "assignments": [
        {
          "id": "49537adb9",
          "task_id": 1,
          "assignee_id": "coyote-417",
          "team_id": null,
          "assignee_name": "Coyote 417",
          "team_name": null,
          "queue_position": 1,
          "priority": 1,
          "current_estimate_seconds": 3600,
          "time_worked": 0,
          "estimated_start_date": null,
          "estimate_updated": false,
          "start_date": null,
          "close_date": null,
          "is_closed": false,
          "reestimate_count": 0,
          "is_working_on": false,
          "automatic_time_worked_updated_at": "2025-10-15T16:54:10-03:00",
          "created_at": "2025-10-15T16:54:10-03:00",
          "assignee_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-210/coyote-417/mini.png",
          "assignee_avatar_large_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-210/coyote-417/regular.png",
          "time_worked_not_persisted": 0
        }
      ]
    }
  }
]
GET

/api/v1.0/task_evaluations

List all task evaluations for a specific evaluator

Request

Route

GET /api/v1.0/task_evaluations?evaluator_id=coyote-424

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Query Parameters

evaluator_id=coyote-424

cURL

curl -g "https://runrun.it/api/v1.0/task_evaluations?evaluator_id=coyote-424" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 6930

Body

[
  {
    "id": 2,
    "state": "pending",
    "happened_at": null,
    "evaluator_id": "coyote-424",
    "evaluator_name": "Coyote 424",
    "evaluator_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-211/coyote-424/mini.png",
    "evaluator_is_deleted": false,
    "task": {
      "id": 2,
      "title": "Second task",
      "is_working_on": false,
      "user_id": "coyote-425",
      "guest_id": null,
      "type_id": 2,
      "project_id": 2,
      "team_id": null,
      "board_id": 2,
      "board_stage_id": 4,
      "board_stage_position": 70368744177664,
      "subtask_parent_position": null,
      "desired_date": null,
      "desired_date_with_time": null,
      "estimated_start_date": null,
      "estimated_delivery_date": null,
      "gantt_bar_start_date": null,
      "gantt_bar_end_date": null,
      "close_date": null,
      "was_reopened": false,
      "is_closed": false,
      "is_assigned": true,
      "on_going": false,
      "estimate_updated": false,
      "estimated_at": null,
      "queue_position": 1,
      "created_at": "2025-10-15T16:54:13-03:00",
      "start_date": null,
      "desired_start_date": null,
      "current_estimate_seconds": 3600,
      "evaluation_status": null,
      "attachments_count": 0,
      "tags_data": [

      ],
      "client_name": "Test client 386",
      "client_id": 2,
      "project_name": "Test project 369",
      "project_group_name": "No group",
      "project_group_id": 2,
      "project_group_is_default": true,
      "project_sub_group_name": "No subgroup",
      "project_sub_group_id": 2,
      "project_sub_group_is_default": true,
      "type_name": "TaskType 416",
      "user_name": "Coyote 425",
      "guest_name": null,
      "board_name": "Board 299",
      "board_stage_name": "Board Stage 895",
      "board_stage_description": null,
      "team_name": null,
      "type_color": "FFFFFF",
      "state": "queued",
      "overdue": null,
      "time_worked": 0,
      "time_pending": 3600,
      "time_total": 3600,
      "time_progress": 0.0,
      "activities_6_days_ago": 0,
      "activities_5_days_ago": 0,
      "activities_4_days_ago": 0,
      "activities_3_days_ago": 0,
      "activities_2_days_ago": 0,
      "activities_1_days_ago": 0,
      "activities_0_days_ago": 0,
      "activities": 0,
      "repetition_rule": null,
      "board_remaining_time": null,
      "stage_depart_estimated_at": null,
      "is_urgent": false,
      "points": null,
      "reestimate_count": 0,
      "parent_ids": [

      ],
      "opened_parent_ids": [

      ],
      "parents_max_desired_date": null,
      "child_ids": [

      ],
      "workflow_id": null,
      "checklist_id": null,
      "is_shared": false,
      "sharing_details": [

      ],
      "subtask_ids": [

      ],
      "subtasks_count": 0,
      "subtasks_closed_count": 0,
      "subtasks_count_progress": null,
      "is_subtask": false,
      "parent_task_id": null,
      "parent_task_title": null,
      "all_subtasks_time_worked": null,
      "all_subtasks_times_updating": false,
      "all_subtasks_time_total": null,
      "all_subtasks_time_progress": null,
      "current_level": 0,
      "evaluator_ids": null,
      "pending_evaluator_ids": null,
      "approved_evaluator_ids": null,
      "rejected_evaluator_ids": null,
      "custom_fields": {
      },
      "form_id": null,
      "last_activity_at": "2025-10-15T16:54:13-03:00",
      "automation_id": null,
      "automation_name": null,
      "has_emails": false,
      "prerequisites": [

      ],
      "subsequents": [

      ],
      "priority": 1,
      "tag_list": "",
      "tags": [

      ],
      "scheduled_start_time": null,
      "is_scheduled": false,
      "current_evaluator_id": null,
      "assignments": [
        {
          "id": "92a6f5b72",
          "task_id": 2,
          "assignee_id": "coyote-425",
          "team_id": null,
          "assignee_name": "Coyote 425",
          "team_name": null,
          "queue_position": 1,
          "priority": 1,
          "current_estimate_seconds": 3600,
          "time_worked": 0,
          "estimated_start_date": null,
          "estimate_updated": false,
          "start_date": null,
          "close_date": null,
          "is_closed": false,
          "reestimate_count": 0,
          "is_working_on": false,
          "automatic_time_worked_updated_at": "2025-10-15T16:54:13-03:00",
          "created_at": "2025-10-15T16:54:13-03:00",
          "assignee_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-211/coyote-425/mini.png",
          "assignee_avatar_large_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-211/coyote-425/regular.png",
          "time_worked_not_persisted": 0
        }
      ]
    }
  },
  {
    "id": 1,
    "state": "pending",
    "happened_at": null,
    "evaluator_id": "coyote-424",
    "evaluator_name": "Coyote 424",
    "evaluator_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-211/coyote-424/mini.png",
    "evaluator_is_deleted": false,
    "task": {
      "id": 1,
      "title": "First task",
      "is_working_on": false,
      "user_id": "coyote-423",
      "guest_id": null,
      "type_id": 1,
      "project_id": 1,
      "team_id": null,
      "board_id": 1,
      "board_stage_id": 1,
      "board_stage_position": 70368744177664,
      "subtask_parent_position": null,
      "desired_date": null,
      "desired_date_with_time": null,
      "estimated_start_date": null,
      "estimated_delivery_date": null,
      "gantt_bar_start_date": null,
      "gantt_bar_end_date": null,
      "close_date": null,
      "was_reopened": false,
      "is_closed": false,
      "is_assigned": true,
      "on_going": false,
      "estimate_updated": false,
      "estimated_at": null,
      "queue_position": 1,
      "created_at": "2025-10-15T16:54:13-03:00",
      "start_date": null,
      "desired_start_date": null,
      "current_estimate_seconds": 3600,
      "evaluation_status": null,
      "attachments_count": 0,
      "tags_data": [

      ],
      "client_name": "Test client 385",
      "client_id": 1,
      "project_name": "Test project 368",
      "project_group_name": "No group",
      "project_group_id": 1,
      "project_group_is_default": true,
      "project_sub_group_name": "No subgroup",
      "project_sub_group_id": 1,
      "project_sub_group_is_default": true,
      "type_name": "TaskType 415",
      "user_name": "Coyote 423",
      "guest_name": null,
      "board_name": "Board 298",
      "board_stage_name": "Board Stage 892",
      "board_stage_description": null,
      "team_name": null,
      "type_color": "FFFFFF",
      "state": "queued",
      "overdue": null,
      "time_worked": 0,
      "time_pending": 3600,
      "time_total": 3600,
      "time_progress": 0.0,
      "activities_6_days_ago": 0,
      "activities_5_days_ago": 0,
      "activities_4_days_ago": 0,
      "activities_3_days_ago": 0,
      "activities_2_days_ago": 0,
      "activities_1_days_ago": 0,
      "activities_0_days_ago": 0,
      "activities": 0,
      "repetition_rule": null,
      "board_remaining_time": null,
      "stage_depart_estimated_at": null,
      "is_urgent": false,
      "points": null,
      "reestimate_count": 0,
      "parent_ids": [

      ],
      "opened_parent_ids": [

      ],
      "parents_max_desired_date": null,
      "child_ids": [

      ],
      "workflow_id": null,
      "checklist_id": null,
      "is_shared": false,
      "sharing_details": [

      ],
      "subtask_ids": [

      ],
      "subtasks_count": 0,
      "subtasks_closed_count": 0,
      "subtasks_count_progress": null,
      "is_subtask": false,
      "parent_task_id": null,
      "parent_task_title": null,
      "all_subtasks_time_worked": null,
      "all_subtasks_times_updating": false,
      "all_subtasks_time_total": null,
      "all_subtasks_time_progress": null,
      "current_level": 0,
      "evaluator_ids": null,
      "pending_evaluator_ids": null,
      "approved_evaluator_ids": null,
      "rejected_evaluator_ids": null,
      "custom_fields": {
      },
      "form_id": null,
      "last_activity_at": "2025-10-15T16:54:13-03:00",
      "automation_id": null,
      "automation_name": null,
      "has_emails": false,
      "prerequisites": [

      ],
      "subsequents": [

      ],
      "priority": 1,
      "tag_list": "",
      "tags": [

      ],
      "scheduled_start_time": null,
      "is_scheduled": false,
      "current_evaluator_id": null,
      "assignments": [
        {
          "id": "49537adb9",
          "task_id": 1,
          "assignee_id": "coyote-423",
          "team_id": null,
          "assignee_name": "Coyote 423",
          "team_name": null,
          "queue_position": 1,
          "priority": 1,
          "current_estimate_seconds": 3600,
          "time_worked": 0,
          "estimated_start_date": null,
          "estimate_updated": false,
          "start_date": null,
          "close_date": null,
          "is_closed": false,
          "reestimate_count": 0,
          "is_working_on": false,
          "automatic_time_worked_updated_at": "2025-10-15T16:54:13-03:00",
          "created_at": "2025-10-15T16:54:13-03:00",
          "assignee_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-211/coyote-423/mini.png",
          "assignee_avatar_large_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-211/coyote-423/regular.png",
          "time_worked_not_persisted": 0
        }
      ]
    }
  }
]
POST

/api/v1.0/task_evaluations/:id/reset

Reset a task evaluation

Request

Route

POST /api/v1.0/task_evaluations/1/reset

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl "https://runrun.it/api/v1.0/task_evaluations/1/reset" -d '' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 3492

Body

{
  "id": 1,
  "state": "pending",
  "happened_at": null,
  "evaluator_id": "coyote-430",
  "evaluator_name": "Coyote 430",
  "evaluator_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-212/coyote-430/mini.png",
  "evaluator_is_deleted": false,
  "task": {
    "id": 1,
    "title": "First task",
    "is_working_on": false,
    "user_id": "coyote-429",
    "guest_id": null,
    "type_id": 1,
    "project_id": 1,
    "team_id": null,
    "board_id": 1,
    "board_stage_id": 1,
    "board_stage_position": 70368744177664,
    "subtask_parent_position": null,
    "desired_date": null,
    "desired_date_with_time": null,
    "estimated_start_date": null,
    "estimated_delivery_date": null,
    "gantt_bar_start_date": null,
    "gantt_bar_end_date": null,
    "close_date": null,
    "was_reopened": false,
    "is_closed": false,
    "is_assigned": true,
    "on_going": false,
    "estimate_updated": false,
    "estimated_at": null,
    "queue_position": 1,
    "created_at": "2025-10-15T16:54:15-03:00",
    "start_date": null,
    "desired_start_date": null,
    "current_estimate_seconds": 3600,
    "evaluation_status": "pending",
    "attachments_count": 0,
    "tags_data": [

    ],
    "client_name": "Test client 388",
    "client_id": 1,
    "project_name": "Test project 371",
    "project_group_name": "No group",
    "project_group_id": 1,
    "project_group_is_default": true,
    "project_sub_group_name": "No subgroup",
    "project_sub_group_id": 1,
    "project_sub_group_is_default": true,
    "type_name": "TaskType 418",
    "user_name": "Coyote 429",
    "guest_name": null,
    "board_name": "Board 301",
    "board_stage_name": "Board Stage 901",
    "board_stage_description": null,
    "team_name": null,
    "type_color": "FFFFFF",
    "state": "queued",
    "overdue": null,
    "time_worked": 0,
    "time_pending": 3600,
    "time_total": 3600,
    "time_progress": 0.0,
    "activities_6_days_ago": 0,
    "activities_5_days_ago": 0,
    "activities_4_days_ago": 0,
    "activities_3_days_ago": 0,
    "activities_2_days_ago": 0,
    "activities_1_days_ago": 0,
    "activities_0_days_ago": 0,
    "activities": 0,
    "repetition_rule": null,
    "board_remaining_time": null,
    "stage_depart_estimated_at": null,
    "is_urgent": false,
    "points": null,
    "reestimate_count": 0,
    "parent_ids": [

    ],
    "opened_parent_ids": [

    ],
    "parents_max_desired_date": null,
    "child_ids": [

    ],
    "workflow_id": null,
    "checklist_id": null,
    "is_shared": false,
    "sharing_details": [

    ],
    "subtask_ids": [

    ],
    "subtasks_count": 0,
    "subtasks_closed_count": 0,
    "subtasks_count_progress": null,
    "is_subtask": false,
    "parent_task_id": null,
    "parent_task_title": null,
    "all_subtasks_time_worked": null,
    "all_subtasks_times_updating": false,
    "all_subtasks_time_total": null,
    "all_subtasks_time_progress": null,
    "current_level": 0,
    "evaluator_ids": [
      "coyote-430"
    ],
    "pending_evaluator_ids": [
      "coyote-430"
    ],
    "approved_evaluator_ids": [

    ],
    "rejected_evaluator_ids": [

    ],
    "custom_fields": {
    },
    "form_id": null,
    "last_activity_at": "2025-10-15T16:54:15-03:00",
    "automation_id": null,
    "automation_name": null,
    "has_emails": false,
    "prerequisites": [

    ],
    "subsequents": [

    ],
    "priority": 1,
    "tag_list": "",
    "tags": [

    ],
    "scheduled_start_time": null,
    "is_scheduled": false,
    "current_evaluator_id": "coyote-430",
    "assignments": [
      {
        "id": "49537adb9",
        "task_id": 1,
        "assignee_id": "coyote-429",
        "team_id": null,
        "assignee_name": "Coyote 429",
        "team_name": null,
        "queue_position": 1,
        "priority": 1,
        "current_estimate_seconds": 3600,
        "time_worked": 0,
        "estimated_start_date": null,
        "estimate_updated": false,
        "start_date": null,
        "close_date": null,
        "is_closed": false,
        "reestimate_count": 0,
        "is_working_on": false,
        "automatic_time_worked_updated_at": "2025-10-15T16:54:15-03:00",
        "created_at": "2025-10-15T16:54:15-03:00",
        "assignee_avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-212/coyote-429/mini.png",
        "assignee_avatar_large_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-212/coyote-429/regular.png",
        "time_worked_not_persisted": 0
      }
    ]
  }
}
DELETE

/api/v1.0/task_evaluations/:id

Destroy a task evaluation

Request

Route

DELETE /api/v1.0/task_evaluations/1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl "https://runrun.it/api/v1.0/task_evaluations/1" -d '' -X DELETE \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

204

Headers

Task Templates

GET

/api/v1.0/project_templates/:project_template_id/task_templates

List all Task Templates of this Project Template

Request

Route

GET /api/v1.0/project_templates/1/task_templates

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/project_templates/1/task_templates" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 1001

Body

[
  {
    "id": 3,
    "title": "Task Template",
    "user_id": "coyote-607",
    "type_id": 1,
    "team_id": null,
    "board_id": null,
    "queue_position": null,
    "project_template_id": 1,
    "tag_list": "",
    "tags_data": [

    ],
    "created_at": "2025-10-15T16:56:23-03:00",
    "follower_ids": [

    ],
    "is_assigned": true,
    "team_name": null,
    "type_name": "TaskType 493",
    "subtasks_data": [

    ],
    "responsible_id": null,
    "assignments": [
      {
        "id": "49537adb9",
        "task_template_id": 3,
        "assignee_id": "coyote-607",
        "team_id": null,
        "assignee_name": "Coyote 607",
        "team_name": null
      }
    ],
    "workflow_id": null
  },
  {
    "id": 4,
    "title": "Task Template",
    "user_id": "coyote-607",
    "type_id": 2,
    "team_id": null,
    "board_id": null,
    "queue_position": null,
    "project_template_id": 1,
    "tag_list": "",
    "tags_data": [

    ],
    "created_at": "2025-10-15T16:56:23-03:00",
    "follower_ids": [

    ],
    "is_assigned": true,
    "team_name": null,
    "type_name": "TaskType 494",
    "subtasks_data": [

    ],
    "responsible_id": null,
    "assignments": [
      {
        "id": "92a6f5b72",
        "task_template_id": 4,
        "assignee_id": "coyote-607",
        "team_id": null,
        "assignee_name": "Coyote 607",
        "team_name": null
      }
    ],
    "workflow_id": null
  }
]
GET

/api/v1.0/project_templates/:project_template_id/task_templates/:id

Show a Task Template

Request

Route

GET /api/v1.0/project_templates/1/task_templates/5

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/project_templates/1/task_templates/5" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 499

Body

{
  "id": 5,
  "title": "Task Template",
  "user_id": "coyote-608",
  "type_id": 1,
  "team_id": null,
  "board_id": null,
  "queue_position": null,
  "project_template_id": 1,
  "tag_list": "",
  "tags_data": [

  ],
  "created_at": "2025-10-15T16:56:24-03:00",
  "follower_ids": [

  ],
  "is_assigned": true,
  "team_name": null,
  "type_name": "TaskType 495",
  "subtasks_data": [

  ],
  "responsible_id": null,
  "assignments": [
    {
      "id": "49537adb9",
      "task_template_id": 5,
      "assignee_id": "coyote-608",
      "team_id": null,
      "assignee_name": "Coyote 608",
      "team_name": null
    }
  ],
  "workflow_id": null
}
POST

/api/v1.0/project_templates/:project_template_id/task_templates

Create a Task Template

Parameters

Name Description type
title

Name of task template

string

type_id

ID of task template type

integer

tag_list

Tags for task (separated by commas)

string

Request

Route

POST /api/v1.0/project_templates/1/task_templates

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "task_template": {
    "type_id": 1,
    "title": "Task Template",
    "assignments": [
      {
        "assignee_id": "coyote-609",
        "team_id": 1
      }
    ],
    "subtasks_data": [
      {
        "title": "Subtarefa 1",
        "desired_date": "2021-02-21 10:30 0300",
        "assignments_data": [
          {
            "assignee_id": "coyote-609",
            "team_id": 1
          }
        ]
      }
    ]
  }
}

cURL

curl "https://runrun.it/api/v1.0/project_templates/1/task_templates" -d '{"task_template":{"type_id":1,"title":"Task Template","assignments":[{"assignee_id":"coyote-609","team_id":1}],"subtasks_data":[{"title":"Subtarefa 1","desired_date":"2021-02-21 10:30 0300","assignments_data":[{"assignee_id":"coyote-609","team_id":1}]}]}}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

201

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 768

Body

{
  "id": 1,
  "title": "Task Template",
  "user_id": "coyote-609",
  "type_id": 1,
  "team_id": 1,
  "board_id": null,
  "queue_position": 1,
  "project_template_id": 1,
  "tag_list": "",
  "tags_data": [

  ],
  "created_at": "2025-10-15T16:56:25-03:00",
  "follower_ids": [

  ],
  "is_assigned": true,
  "team_name": null,
  "type_name": "TaskType 496",
  "subtasks_data": [
    {
      "title": "Subtarefa 1",
      "desired_date": "2021-02-21 10:30 0300",
      "assignments_data": [
        {
          "assignee_id": "coyote-609",
          "assignee_name": "Coyote 609",
          "avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-517/coyote-609/mini.png",
          "team_id": 1,
          "team_name": "Test team 6"
        }
      ]
    }
  ],
  "responsible_id": null,
  "assignments": [
    {
      "id": "49537adb9",
      "task_template_id": 1,
      "assignee_id": "coyote-609",
      "team_id": 1,
      "assignee_name": "Coyote 609",
      "team_name": "Test team 6"
    }
  ],
  "workflow_id": null
}
PUT

/api/v1.0/project_templates/:project_template_id/task_templates/:id

Update a Task Template

Request

Route

PUT /api/v1.0/project_templates/1/task_templates/7

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "task_template": {
    "title": "New Title",
    "type_id": 1,
    "assignments": [
      {
        "assignee_id": "coyote-612",
        "team_id": 1
      }
    ],
    "subtasks_data": [
      {
        "title": "Subtarefa 1",
        "desired_date": "2021-02-21 10:30 0300",
        "assignments_data": [
          {
            "assignee_id": "coyote-611",
            "team_id": 1
          }
        ]
      }
    ]
  }
}

cURL

curl "https://runrun.it/api/v1.0/project_templates/1/task_templates/7" -d '{"task_template":{"title":"New Title","type_id":1,"assignments":[{"assignee_id":"coyote-612","team_id":1}],"subtasks_data":[{"title":"Subtarefa 1","desired_date":"2021-02-21 10:30 0300","assignments_data":[{"assignee_id":"coyote-611","team_id":1}]}]}}' -X PUT \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 767

Body

{
  "id": 7,
  "title": "New Title",
  "user_id": "coyote-611",
  "type_id": 1,
  "team_id": 1,
  "board_id": null,
  "queue_position": null,
  "project_template_id": 1,
  "tag_list": "",
  "tags_data": [

  ],
  "created_at": "2025-10-15T16:56:26-03:00",
  "follower_ids": [

  ],
  "is_assigned": true,
  "team_name": null,
  "type_name": "TaskType 497",
  "subtasks_data": [
    {
      "title": "Subtarefa 1",
      "desired_date": "2021-02-21 10:30 0300",
      "assignments_data": [
        {
          "assignee_id": "coyote-611",
          "assignee_name": "Coyote 611",
          "avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-518/coyote-611/mini.png",
          "team_id": 1,
          "team_name": "Test team 7"
        }
      ]
    }
  ],
  "responsible_id": null,
  "assignments": [
    {
      "id": "92a6f5b72",
      "task_template_id": 7,
      "assignee_id": "coyote-612",
      "team_id": 1,
      "assignee_name": "Coyote 612",
      "team_name": "Test team 7"
    }
  ],
  "workflow_id": null
}
DELETE

/api/v1.0/project_templates/:project_template_id/task_templates/:id

Destroy a Task Template

Request

Route

DELETE /api/v1.0/project_templates/1/task_templates/8

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl "https://runrun.it/api/v1.0/project_templates/1/task_templates/8" -d '' -X DELETE \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

204

Headers

TaskType

GET

/api/v1.0/task_types

List task types

Parameters

Name Description type
sort

Sort by column

string

sort_dir

Sort direction ('asc' or 'desc')

string

search_term

Filter by term

string

filter_id

Filter by an existing filter

integer

is_visible

Filter by visible clients

boolean

Request

Route

GET /api/v1.0/task_types

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/task_types" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Response Fields

Name Description type
id Id of the type integer
name Type name string
is_visible Is the type visible to be chosen? (default: true) boolean
standard_effort Default effort to complete a task of this type (default: '00:00') string
standard_effort_time Default effort (in seconds) to complete a task of this type integer
avg_delivery Average delivery time (in hours) to complete tasks of this type integer
color Color of the type in hexadecimal format string
is_public True if type is public boolean
is_default True if is a system type boolean
created_at Datetime of creation datetime

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 212

Body

[
  {
    "id": 1,
    "name": "Task Type",
    "is_visible": true,
    "standard_effort": "01:00",
    "standard_effort_time": 3600,
    "avg_delivery": 0,
    "color": "FFFFFF",
    "is_public": true,
    "is_default": false,
    "created_at": "2025-10-15T16:55:35-03:00"
  }
]
GET

/api/v1.0/task_types/:id

Show a task type

Request

Route

GET /api/v1.0/task_types/1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/task_types/1" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Response Fields

Name Description type
id Id of the type integer
name Type name string
is_visible Is the type visible to be chosen? (default: true) boolean
standard_effort Default effort to complete a task of this type (default: '00:00') string
standard_effort_time Default effort (in seconds) to complete a task of this type integer
avg_delivery Average delivery time (in hours) to complete tasks of this type integer
color Color of the type in hexadecimal format string
is_public True if type is public boolean
is_default True if is a system type boolean
created_at Datetime of creation datetime

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 210

Body

{
  "id": 1,
  "name": "Task Type",
  "is_visible": true,
  "standard_effort": "01:00",
  "standard_effort_time": 3600,
  "avg_delivery": 0,
  "color": "FFFFFF",
  "is_public": true,
  "is_default": false,
  "created_at": "2025-10-15T16:55:36-03:00"
}
POST

/api/v1.0/task_types

Create a task type

Parameters

Name Description type
task_type[name] required

Type name

string

task_type[is_visible]

Is the type visible to be chosen? (default: true)

boolean

task_type[standard_effort]

Default effort to complete a task of this type (default: '00:00')

string

task_type[is_public]

True if type is public

boolean

task_type[color]

Color of the type in hexadecimal format

string

Request

Route

POST /api/v1.0/task_types

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "task_type": {
    "name": "Task Type",
    "is_visible": true,
    "standard_effort": "03:00",
    "is_public": true,
    "color": "FFFFFF"
  }
}

cURL

curl "https://runrun.it/api/v1.0/task_types" -d '{"task_type":{"name":"Task Type","is_visible":true,"standard_effort":"03:00","is_public":true,"color":"FFFFFF"}}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

201

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 211

Body

{
  "id": 1,
  "name": "Task Type",
  "is_visible": true,
  "standard_effort": "03:00",
  "standard_effort_time": 10800,
  "avg_delivery": 0,
  "color": "FFFFFF",
  "is_public": true,
  "is_default": false,
  "created_at": "2025-10-15T16:55:36-03:00"
}
PUT

/api/v1.0/task_types/:id

Update a task type

Parameters

Name Description type
task_type[name]

Type name

string

task_type[is_visible]

Is the type visible to be chosen? (default: true)

boolean

task_type[standard_effort]

Default effort to complete a task of this type (default: '00:00')

string

task_type[is_public]

True if type is public

boolean

task_type[color]

Color of the type in hexadecimal format

string

Request

Route

PUT /api/v1.0/task_types/1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "task_type": {
    "name": "Task Type 2",
    "is_visible": false,
    "standard_effort": "04:00",
    "is_public": true,
    "color": "000000"
  }
}

cURL

curl "https://runrun.it/api/v1.0/task_types/1" -d '{"task_type":{"name":"Task Type 2","is_visible":false,"standard_effort":"04:00","is_public":true,"color":"000000"}}' -X PUT \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 214

Body

{
  "id": 1,
  "name": "Task Type 2",
  "is_visible": false,
  "standard_effort": "04:00",
  "standard_effort_time": 14400,
  "avg_delivery": 0,
  "color": "000000",
  "is_public": true,
  "is_default": false,
  "created_at": "2025-10-15T16:55:37-03:00"
}

Time Worked

GET

/api/v1.0/reports/time_worked

List all time worked grouped and filtered by parameters

Returns a time worked list grouped by the provided group_by params, for example group_by=project_id,project_group_id,project_subgroup_id,task_id,user_id,date. More than one attribute can be used for grouping.

Providing a client_id, project_id, project_group_id, project_subgroup_id, tag_list or type_id will return a filtered list by the given parameter.

Parameters

Name Description type default
include_capacity

Include capacity

boolean

include_untracked

Include untracked

boolean

include_others

Include others

boolean

true

expand_others

Expand others field to a non-aggregate

boolean

group_by

Attributes to group by: date, client_id, project_group_id, project_id, project_sub_group_id, task_id, task_status_id, team_id, type_id, user_id

text

period_type

Period type. Must be one of the following: last_seven_days, current_week, last_fifteen_days, last_thirty_days, current_month, last_ninety_days, current_quarter, last_one_year, custom_range

text

last_seven_days

period_start

Period start. Only used if period_type is 'custom_range'

date

period_end

Period end. Only used if period_type is 'custom_range'

date

period_unit

Period unit. Must be one of the following: day, week, month or year

text

day

client_id

IDs of clients, separated by comma

text

project_id

IDs of projects, separated by comma

text

project_group_id

ID of project group

text

project_subgroup_id

ID of project subgroup

text

tag_list

List of task tags, separated by comma

text

type_id

IDs of task types, separated by comma

text

team_id

IDs of teams, separated by comma

text

user_id

IDs of users, separated by comma

text

Request

Route

GET /api/v1.0/reports/time_worked?include_capacity=true&include_untracked=true&group_by=date%2Cproject_id&project_id=1

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Query Parameters

include_capacity=true
include_untracked=true
group_by=date,project_id
project_id=1

cURL

curl -g "https://runrun.it/api/v1.0/reports/time_worked?include_capacity=true&include_untracked=true&group_by=date%2Cproject_id&project_id=1" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Response Fields

Name Description type
meta Represents the parameters used for building the response Object
result Time Worked filtered and/or grouped by the given parameters Array of Objects
other Represents all the *other* time worked not contained on the result Array of Objects
capacity Total time on users' workweek Array of Objects
untracked Time not tracked by the system Array of Objects

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 894

Body

{
  "meta": {
    "period_start": "2018-01-31",
    "period_end": "2018-02-06",
    "unit": "day"
  },
  "result": [
    {
      "date": "2018-02-05",
      "project_id": 1,
      "project_name": "Test project 498",
      "project_sub_group_id": 1,
      "project_sub_group_name": null,
      "project_group_id": 1,
      "project_group_name": null,
      "client_id": 1,
      "client_name": "Test client 507",
      "automatic_time": 0,
      "manual_time": 72000,
      "time": 72000
    }
  ],
  "others": [
    {
      "date": "2018-02-05",
      "time": 10800
    }
  ],
  "capacity": [
    {
      "date": "2018-01-31",
      "time": 28800
    },
    {
      "date": "2018-02-01",
      "time": 28800
    },
    {
      "date": "2018-02-02",
      "time": 28800
    },
    {
      "date": "2018-02-03",
      "time": 0
    },
    {
      "date": "2018-02-04",
      "time": 0
    },
    {
      "date": "2018-02-05",
      "time": 28800
    },
    {
      "date": "2018-02-06",
      "time": 0
    }
  ],
  "untracked": [
    {
      "date": "2018-02-05",
      "time": 0
    },
    {
      "date": "2018-01-31",
      "time": 28800
    },
    {
      "date": "2018-02-01",
      "time": 28800
    },
    {
      "date": "2018-02-02",
      "time": 28800
    },
    {
      "date": "2018-02-03",
      "time": 0
    },
    {
      "date": "2018-02-04",
      "time": 0
    },
    {
      "date": "2018-02-06",
      "time": 0
    }
  ]
}

Users

GET

/api/v1.0/users

List all Users

List all enterprise users based on the priviligies of the user_token owner.

Permission JSON attribute Response
Flagged as Administrator on Runrun.it is_master: true return a list of all users
Not flagged as Administrator on Runrun.it is_master: false return a list of teammates

Request

Route

GET /api/v1.0/users

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/users" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Response Fields

Name Description type
id User's ID string
name User's full name string
email User's email string
avatar_url User's chosen profile photo url
avatar_large_url User's chosen profile photo url
cost_hour Current user cost per hour decimal
is_master User is an administrator boolean
is_manager User is a manager boolean
is_auditor User is an auditor boolean
can_create_client_project_and_task_types User has permission to create client, projects and task types boolean
can_create_boards User has permission to create boards boolean
is_blocked_on_mobile User has mobile apps access blocked boolean
bypass_block_by_time_worked User ignore the blocking rule for time worked boolean
time_zone IANA Time Zone Database zone name string
position Job position in company string
on_vacation User currently on vacation boolean
birthday User's birthday date
phone User phone string
gender User gender string
marital_status User marital status string
created_at User creation date datetime
in_company_since Joining date in company date
is_certified Whether the user has passed RR Starter certification boolean
is_certified_expert Whether the user has passed RR Expert certification boolean
language User preference language string
alt_id Constant size ID (internal use only) string
oid Constant size ID (internal use only) string
budget_manager Can edit project extra costs boolean
shifts User shifts array
is_mensurable Can process RR Ratings? boolean
blocked_by_time_worked_at When the user is blocked for being out of the acceptable worked time defined by the company datetime
demanders_count Demanders count integer
partners_count Partners count integer
has_all_users_as_partners True if user has all users as partners boolean
has_all_users_as_demanders True if has all users as demanders boolean
password_updated_at Last time user password was updated datetime
password_expired_at Time when the user password was considered expired datetime
shift_work_time_per_week Shift work time (in seconds) per week integer
admin_runrunit_roles Runrun.it admin roles (internal use only) array
team_ids Ids from teams that the user belongs to array
led_team_ids Ids from teams the user leads array
legacy_on_vacation Internal use only boolean
is_eligible_to_access_reports User can access enterprise reports boolean
is_eligible_to_whatsapp User can access whatsapp integration boolean
theme [Deprecated] Use preferences.theme string
task_list_background_image_url [Deprecated] Use preferences.task_list_background_image_url string
skip_time_adjust_on_task_assignment_deliver [Deprecated] Use preferences.skip_time_adjust_on_task_assignment_deliver boolean
time_tracking_mode [Deprecated] Use 'time_tracking_mode' from enterprise string

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 4988

Body

[
  {
    "id": "coyote-126",
    "name": "Coyote 126",
    "email": "coyote126@acme.foo",
    "avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-44/coyote-126/mini.png",
    "avatar_large_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-44/coyote-126/regular.png",
    "cost_hour": 0.0,
    "is_master": false,
    "is_manager": false,
    "is_auditor": false,
    "can_create_client_project_and_task_types": false,
    "can_create_boards": true,
    "is_blocked_on_mobile": false,
    "bypass_block_by_time_worked": false,
    "time_zone": "America/Sao_Paulo",
    "position": null,
    "on_vacation": false,
    "birthday": null,
    "phone": null,
    "gender": null,
    "marital_status": null,
    "created_at": "2025-10-15T16:50:39-03:00",
    "in_company_since": null,
    "is_certified": false,
    "is_certified_expert": false,
    "language": "en-US",
    "alt_id": "3ac81e54ba3cd9ddea9d10f34a59dab0",
    "oid": "92a6f5b72",
    "budget_manager": false,
    "shifts": [
      {
        "weekday": 0,
        "work_day": false,
        "shift_start": "10:00:00",
        "lunch_start": "12:00:00",
        "lunch_end": "13:00:00",
        "shift_end": "19:00:00",
        "work_time": 0
      },
      {
        "weekday": 1,
        "work_day": true,
        "shift_start": "10:00:00",
        "lunch_start": "12:00:00",
        "lunch_end": "13:00:00",
        "shift_end": "19:00:00",
        "work_time": 28800
      },
      {
        "weekday": 2,
        "work_day": true,
        "shift_start": "10:00:00",
        "lunch_start": "12:00:00",
        "lunch_end": "13:00:00",
        "shift_end": "19:00:00",
        "work_time": 28800
      },
      {
        "weekday": 3,
        "work_day": true,
        "shift_start": "10:00:00",
        "lunch_start": "12:00:00",
        "lunch_end": "13:00:00",
        "shift_end": "19:00:00",
        "work_time": 28800
      },
      {
        "weekday": 4,
        "work_day": true,
        "shift_start": "10:00:00",
        "lunch_start": "12:00:00",
        "lunch_end": "13:00:00",
        "shift_end": "19:00:00",
        "work_time": 28800
      },
      {
        "weekday": 5,
        "work_day": true,
        "shift_start": "10:00:00",
        "lunch_start": "12:00:00",
        "lunch_end": "13:00:00",
        "shift_end": "19:00:00",
        "work_time": 28800
      },
      {
        "weekday": 6,
        "work_day": false,
        "shift_start": "10:00:00",
        "lunch_start": "12:00:00",
        "lunch_end": "13:00:00",
        "shift_end": "19:00:00",
        "work_time": 0
      }
    ],
    "is_mensurable": true,
    "blocked_by_time_worked_at": null,
    "demanders_count": 0,
    "partners_count": 0,
    "has_all_users_as_partners": false,
    "has_all_users_as_demanders": false,
    "password_updated_at": null,
    "password_expired_at": null,
    "shift_work_time_per_week": 144000,
    "team_ids": [

    ],
    "led_team_ids": [

    ],
    "is_eligible_to_access_reports": false,
    "is_eligible_to_whatsapp": false,
    "theme": "light",
    "task_list_background_image_url": null,
    "skip_time_adjust_on_task_assignment_deliver": false,
    "time_tracking_mode": "manual",
    "preferences": {
      "theme": "light",
      "task_list_background_image_url": null,
      "skip_time_adjust_on_task_assignment_deliver": false,
      "skip_move_task_to_next_board_stage_suggestion": false
    }
  },
  {
    "id": "coyote-125",
    "name": "Coyote 125",
    "email": "coyote125@acme.foo",
    "avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-44/coyote-125/mini.png",
    "avatar_large_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-44/coyote-125/regular.png",
    "cost_hour": 0.0,
    "is_master": true,
    "is_manager": false,
    "is_auditor": false,
    "can_create_client_project_and_task_types": true,
    "can_create_boards": true,
    "is_blocked_on_mobile": false,
    "bypass_block_by_time_worked": true,
    "time_zone": "America/Sao_Paulo",
    "position": null,
    "on_vacation": false,
    "birthday": null,
    "phone": null,
    "gender": null,
    "marital_status": null,
    "created_at": "2025-10-15T16:50:39-03:00",
    "in_company_since": null,
    "is_certified": false,
    "is_certified_expert": false,
    "language": "en-US",
    "alt_id": "5d1ffc0497849212257c32aef5b4726f",
    "oid": "49537adb9",
    "budget_manager": false,
    "shifts": [
      {
        "weekday": 0,
        "work_day": false,
        "shift_start": "10:00:00",
        "lunch_start": "12:00:00",
        "lunch_end": "13:00:00",
        "shift_end": "19:00:00",
        "work_time": 0
      },
      {
        "weekday": 1,
        "work_day": true,
        "shift_start": "10:00:00",
        "lunch_start": "12:00:00",
        "lunch_end": "13:00:00",
        "shift_end": "19:00:00",
        "work_time": 28800
      },
      {
        "weekday": 2,
        "work_day": true,
        "shift_start": "10:00:00",
        "lunch_start": "12:00:00",
        "lunch_end": "13:00:00",
        "shift_end": "19:00:00",
        "work_time": 28800
      },
      {
        "weekday": 3,
        "work_day": true,
        "shift_start": "10:00:00",
        "lunch_start": "12:00:00",
        "lunch_end": "13:00:00",
        "shift_end": "19:00:00",
        "work_time": 28800
      },
      {
        "weekday": 4,
        "work_day": true,
        "shift_start": "10:00:00",
        "lunch_start": "12:00:00",
        "lunch_end": "13:00:00",
        "shift_end": "19:00:00",
        "work_time": 28800
      },
      {
        "weekday": 5,
        "work_day": true,
        "shift_start": "10:00:00",
        "lunch_start": "12:00:00",
        "lunch_end": "13:00:00",
        "shift_end": "19:00:00",
        "work_time": 28800
      },
      {
        "weekday": 6,
        "work_day": false,
        "shift_start": "10:00:00",
        "lunch_start": "12:00:00",
        "lunch_end": "13:00:00",
        "shift_end": "19:00:00",
        "work_time": 0
      }
    ],
    "is_mensurable": true,
    "blocked_by_time_worked_at": null,
    "demanders_count": 0,
    "partners_count": 0,
    "has_all_users_as_partners": false,
    "has_all_users_as_demanders": false,
    "password_updated_at": null,
    "password_expired_at": null,
    "shift_work_time_per_week": 144000,
    "team_ids": [

    ],
    "led_team_ids": [

    ],
    "is_eligible_to_access_reports": false,
    "is_eligible_to_whatsapp": false,
    "theme": "light",
    "task_list_background_image_url": null,
    "skip_time_adjust_on_task_assignment_deliver": false,
    "time_tracking_mode": "manual",
    "preferences": {
      "theme": "light",
      "task_list_background_image_url": null,
      "skip_time_adjust_on_task_assignment_deliver": false,
      "skip_move_task_to_next_board_stage_suggestion": false
    }
  }
]
GET

/api/v1.0/users/:user_id

Get a user by id

Get a user by id

Parameters

Name Description type
user_id required

User's ID

string

Request

Route

GET /api/v1.0/users/coyote-151

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

cURL

curl -g "https://runrun.it/api/v1.0/users/coyote-151" -X GET \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Response Fields

Name Description type
id User's ID string
name User's full name string
email User's email string
avatar_url User's chosen profile photo url
avatar_large_url User's chosen profile photo url
cost_hour Current user cost per hour decimal
is_master User is an administrator boolean
is_manager User is a manager boolean
is_auditor User is an auditor boolean
can_create_client_project_and_task_types User has permission to create client, projects and task types boolean
can_create_boards User has permission to create boards boolean
is_blocked_on_mobile User has mobile apps access blocked boolean
bypass_block_by_time_worked User ignore the blocking rule for time worked boolean
time_zone IANA Time Zone Database zone name string
position Job position in company string
on_vacation User currently on vacation boolean
birthday User's birthday date
phone User phone string
gender User gender string
marital_status User marital status string
created_at User creation date datetime
in_company_since Joining date in company date
is_certified Whether the user has passed RR Starter certification boolean
is_certified_expert Whether the user has passed RR Expert certification boolean
language User preference language string
alt_id Constant size ID (internal use only) string
oid Constant size ID (internal use only) string
budget_manager Can edit project extra costs boolean
shifts User shifts array
is_mensurable Can process RR Ratings? boolean
blocked_by_time_worked_at When the user is blocked for being out of the acceptable worked time defined by the company datetime
demanders_count Demanders count integer
partners_count Partners count integer
has_all_users_as_partners True if user has all users as partners boolean
has_all_users_as_demanders True if has all users as demanders boolean
password_updated_at Last time user password was updated datetime
password_expired_at Time when the user password was considered expired datetime
shift_work_time_per_week Shift work time (in seconds) per week integer
admin_runrunit_roles Runrun.it admin roles (internal use only) array
team_ids Ids from teams that the user belongs to array
led_team_ids Ids from teams the user leads array
legacy_on_vacation Internal use only boolean
is_eligible_to_access_reports User can access enterprise reports boolean
is_eligible_to_whatsapp User can access whatsapp integration boolean
theme [Deprecated] Use preferences.theme string
task_list_background_image_url [Deprecated] Use preferences.task_list_background_image_url string
skip_time_adjust_on_task_assignment_deliver [Deprecated] Use preferences.skip_time_adjust_on_task_assignment_deliver boolean
time_tracking_mode [Deprecated] Use 'time_tracking_mode' from enterprise string

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 2494

Body

{
  "id": "coyote-151",
  "name": "Coyote 151",
  "email": "coyote151@acme.foo",
  "avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-51/coyote-151/mini.png",
  "avatar_large_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-51/coyote-151/regular.png",
  "cost_hour": 0.0,
  "is_master": false,
  "is_manager": false,
  "is_auditor": false,
  "can_create_client_project_and_task_types": false,
  "can_create_boards": true,
  "is_blocked_on_mobile": false,
  "bypass_block_by_time_worked": false,
  "time_zone": "America/Sao_Paulo",
  "position": null,
  "on_vacation": false,
  "birthday": null,
  "phone": null,
  "gender": null,
  "marital_status": null,
  "created_at": "2025-10-15T16:50:49-03:00",
  "in_company_since": null,
  "is_certified": false,
  "is_certified_expert": false,
  "language": "en-US",
  "alt_id": "cc922372607e7645c37bc6923219452c",
  "oid": "92a6f5b72",
  "budget_manager": false,
  "shifts": [
    {
      "weekday": 0,
      "work_day": false,
      "shift_start": "10:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "13:00:00",
      "shift_end": "19:00:00",
      "work_time": 0
    },
    {
      "weekday": 1,
      "work_day": true,
      "shift_start": "10:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "13:00:00",
      "shift_end": "19:00:00",
      "work_time": 28800
    },
    {
      "weekday": 2,
      "work_day": true,
      "shift_start": "10:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "13:00:00",
      "shift_end": "19:00:00",
      "work_time": 28800
    },
    {
      "weekday": 3,
      "work_day": true,
      "shift_start": "10:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "13:00:00",
      "shift_end": "19:00:00",
      "work_time": 28800
    },
    {
      "weekday": 4,
      "work_day": true,
      "shift_start": "10:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "13:00:00",
      "shift_end": "19:00:00",
      "work_time": 28800
    },
    {
      "weekday": 5,
      "work_day": true,
      "shift_start": "10:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "13:00:00",
      "shift_end": "19:00:00",
      "work_time": 28800
    },
    {
      "weekday": 6,
      "work_day": false,
      "shift_start": "10:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "13:00:00",
      "shift_end": "19:00:00",
      "work_time": 0
    }
  ],
  "is_mensurable": true,
  "blocked_by_time_worked_at": null,
  "demanders_count": 0,
  "partners_count": 0,
  "has_all_users_as_partners": false,
  "has_all_users_as_demanders": false,
  "password_updated_at": null,
  "password_expired_at": null,
  "shift_work_time_per_week": 144000,
  "team_ids": [

  ],
  "led_team_ids": [

  ],
  "is_eligible_to_access_reports": false,
  "is_eligible_to_whatsapp": false,
  "theme": "light",
  "task_list_background_image_url": null,
  "skip_time_adjust_on_task_assignment_deliver": false,
  "time_tracking_mode": "manual",
  "preferences": {
    "theme": "light",
    "task_list_background_image_url": null,
    "skip_time_adjust_on_task_assignment_deliver": false,
    "skip_move_task_to_next_board_stage_suggestion": false
  }
}
POST

/api/v1.0/users

Create a user

Create a user on an existing account. Upon creation a temporary password will be created and sent to the new user by email. Any locale settings (language, time zone, etc.) will be the same as the user issuing the API call. If the account has reached the maximum number of users a 403 Forbidden will be returned. The make_my_partner and make_everybody_mutual_partners flags are a convenience for when you may wish to assign tasks to the new user immediately (the same can be accomplished with the Partners API calls).

Parameters

Name Description type
user[name] required

User's full name

string

user[email] required

User's email

string

make_my_partner

Flag to make the new user a partner of the creating user

boolean

make_everybody_mutual_partners

Flag to make the new user a mutual partner of everybody in enterprise. If not set, defaults to enterprise's configuration

boolean

Request

Route

POST /api/v1.0/users

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "user": {
    "name": "Jon Smith",
    "email": "john@smith.com",
    "source": "my_source_value"
  }
}

cURL

curl "https://runrun.it/api/v1.0/users" -d '{"user":{"name":"Jon Smith","email":"john@smith.com","source":"my_source_value"}}' -X POST \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

201

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 2548

Body

{
  "id": "jon-smith",
  "name": "Jon Smith",
  "email": "john@smith.com",
  "avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-52/jon-smith/94d6b1a1a723c0a17244aa12f69cd855mini.png",
  "avatar_large_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-52/jon-smith/94d6b1a1a723c0a17244aa12f69cd855regular.png",
  "cost_hour": 0.0,
  "is_master": false,
  "is_manager": false,
  "is_auditor": false,
  "can_create_client_project_and_task_types": false,
  "can_create_boards": true,
  "is_blocked_on_mobile": false,
  "bypass_block_by_time_worked": false,
  "time_zone": "America/Sao_Paulo",
  "position": null,
  "on_vacation": false,
  "birthday": null,
  "phone": null,
  "gender": null,
  "marital_status": null,
  "created_at": "2025-10-15T16:50:50-03:00",
  "in_company_since": null,
  "is_certified": false,
  "is_certified_expert": false,
  "language": "en-GB",
  "alt_id": "76730c21859ea566a3eabe6134607c66",
  "oid": "92a6f5b72",
  "budget_manager": false,
  "shifts": [
    {
      "weekday": 0,
      "work_day": false,
      "shift_start": "09:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "12:30:00",
      "shift_end": "17:00:00",
      "work_time": 0
    },
    {
      "weekday": 1,
      "work_day": true,
      "shift_start": "09:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "12:30:00",
      "shift_end": "17:00:00",
      "work_time": 27000
    },
    {
      "weekday": 2,
      "work_day": true,
      "shift_start": "09:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "12:30:00",
      "shift_end": "17:00:00",
      "work_time": 27000
    },
    {
      "weekday": 3,
      "work_day": true,
      "shift_start": "09:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "12:30:00",
      "shift_end": "17:00:00",
      "work_time": 27000
    },
    {
      "weekday": 4,
      "work_day": true,
      "shift_start": "09:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "12:30:00",
      "shift_end": "17:00:00",
      "work_time": 27000
    },
    {
      "weekday": 5,
      "work_day": true,
      "shift_start": "09:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "12:30:00",
      "shift_end": "17:00:00",
      "work_time": 27000
    },
    {
      "weekday": 6,
      "work_day": false,
      "shift_start": "09:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "12:30:00",
      "shift_end": "17:00:00",
      "work_time": 0
    }
  ],
  "is_mensurable": true,
  "blocked_by_time_worked_at": null,
  "demanders_count": 2,
  "partners_count": 2,
  "has_all_users_as_partners": true,
  "has_all_users_as_demanders": true,
  "password_updated_at": null,
  "password_expired_at": null,
  "shift_work_time_per_week": 135000,
  "team_ids": [

  ],
  "led_team_ids": [

  ],
  "is_eligible_to_access_reports": false,
  "is_eligible_to_whatsapp": false,
  "theme": "light",
  "task_list_background_image_url": null,
  "skip_time_adjust_on_task_assignment_deliver": false,
  "time_tracking_mode": "manual",
  "preferences": {
    "theme": "light",
    "task_list_background_image_url": null,
    "skip_time_adjust_on_task_assignment_deliver": false,
    "skip_move_task_to_next_board_stage_suggestion": false
  }
}
PUT

/api/v1.0/users/:id

Update a user

Update a user

Parameters

Name Description type
user[id] required

User's ID

string

Request

Route

PUT /api/v1.0/users/jon-smith

Headers

App-Key: 1a219437eab893dc115509bb85e06d77
User-Token: 9flMUzLxQtxohKGZjU5
Content-Type: application/json
Host: example.org

Body

{
  "user": {
    "name": "Steve Jobs",
    "time_zone": "Asia/Brunei"
  }
}

cURL

curl "https://runrun.it/api/v1.0/users/jon-smith" -d '{"user":{"name":"Steve Jobs","time_zone":"Asia/Brunei"}}' -X PUT \
	-H "Version: HTTP/1.0" \
	-H "App-Key: 1a219437eab893dc115509bb85e06d77" \
	-H "User-Token: 9flMUzLxQtxohKGZjU5" \
	-H "Content-Type: application/json"

Response

Simulated Response

Status

200

Headers

Content-Type: application/json; charset=utf-8
Content-Length: 2482

Body

{
  "id": "jon-smith",
  "name": "Steve Jobs",
  "email": "coyote166@acme.foo",
  "avatar_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-61/jon-smith/mini.png",
  "avatar_large_url": "https://s3.amazonaws.com/runrunit_dev/avatars/acme-61/jon-smith/regular.png",
  "cost_hour": 0.0,
  "is_master": true,
  "is_manager": false,
  "is_auditor": false,
  "can_create_client_project_and_task_types": true,
  "can_create_boards": true,
  "is_blocked_on_mobile": false,
  "bypass_block_by_time_worked": true,
  "time_zone": "Asia/Brunei",
  "position": null,
  "on_vacation": false,
  "birthday": null,
  "phone": null,
  "gender": null,
  "marital_status": null,
  "created_at": "2018-01-01T00:00:00-02:00",
  "in_company_since": null,
  "is_certified": false,
  "is_certified_expert": false,
  "language": "en-US",
  "alt_id": "84e1eb0b656d2b68a2967ecee0e85323",
  "oid": "92a6f5b72",
  "budget_manager": false,
  "shifts": [
    {
      "weekday": 0,
      "work_day": false,
      "shift_start": "10:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "13:00:00",
      "shift_end": "19:00:00",
      "work_time": 0
    },
    {
      "weekday": 1,
      "work_day": true,
      "shift_start": "10:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "13:00:00",
      "shift_end": "19:00:00",
      "work_time": 28800
    },
    {
      "weekday": 2,
      "work_day": true,
      "shift_start": "10:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "13:00:00",
      "shift_end": "19:00:00",
      "work_time": 28800
    },
    {
      "weekday": 3,
      "work_day": true,
      "shift_start": "10:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "13:00:00",
      "shift_end": "19:00:00",
      "work_time": 28800
    },
    {
      "weekday": 4,
      "work_day": true,
      "shift_start": "10:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "13:00:00",
      "shift_end": "19:00:00",
      "work_time": 28800
    },
    {
      "weekday": 5,
      "work_day": true,
      "shift_start": "10:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "13:00:00",
      "shift_end": "19:00:00",
      "work_time": 28800
    },
    {
      "weekday": 6,
      "work_day": false,
      "shift_start": "10:00:00",
      "lunch_start": "12:00:00",
      "lunch_end": "13:00:00",
      "shift_end": "19:00:00",
      "work_time": 0
    }
  ],
  "is_mensurable": true,
  "blocked_by_time_worked_at": null,
  "demanders_count": 0,
  "partners_count": 0,
  "has_all_users_as_partners": false,
  "has_all_users_as_demanders": false,
  "password_updated_at": null,
  "password_expired_at": null,
  "shift_work_time_per_week": 144000,
  "team_ids": [

  ],
  "led_team_ids": [

  ],
  "is_eligible_to_access_reports": false,
  "is_eligible_to_whatsapp": false,
  "theme": "light",
  "task_list_background_image_url": null,
  "skip_time_adjust_on_task_assignment_deliver": false,
  "time_tracking_mode": "manual",
  "preferences": {
    "theme": "light",
    "task_list_background_image_url": null,
    "skip_time_adjust_on_task_assignment_deliver": false,
    "skip_move_task_to_next_board_stage_suggestion": false
  }
}