Reports

March 23, 2026 ยท View on GitHub

Endpoints:

Get to-do assignments

  • GET /reports/todos/assigned.json will return a list of all people who can have to-dos assigned to them.

This endpoint is useful for building a list of people to then retrieve their individual to-do assignments.

Example JSON Response
[
  {
    "id": 1049715915,
    "attachable_sgid": "BAh7BkkiC19yYWlscwY6BkVUewdJIglkYXRhBjsAVEkiK2dpZDovL2JjMy9QZXJzb24vMTA0OTcxNTkxNT9leHBpcmVzX2luBjsAVEkiCHB1cgY7AFRJIg9hdHRhY2hhYmxlBjsAVA==--56bb1f99675fd8fe08f93a706a5d2ddaa8412625",
    "name": "Amy Rivera",
    "email_address": "amy@honchodesign.com",
    "personable_type": "User",
    "title": "Central Web Coordinator",
    "bio": "I never said most of the things I said",
    "location": null,
    "created_at": "2026-02-12T06:08:51.167Z",
    "updated_at": "2026-02-12T06:08:51.167Z",
    "admin": false,
    "owner": false,
    "client": false,
    "employee": false,
    "time_zone": "America/Chicago",
    "avatar_url": "https://3.basecampapi.com/195539477/people/BAhpBMtkkT4=--9927c47a4cbee30a7f9aea667882496aba799149/avatar",
    "can_ping": true,
    "can_manage_projects": true,
    "can_manage_people": true,
    "can_access_timesheet": true,
    "can_access_hill_charts": true
  }
]
Copy as cURL
curl -s -H "Authorization: Bearer $ACCESS_TOKEN" https://3.basecampapi.com/$ACCOUNT_ID/reports/todos/assigned.json

Get to-do assignments for a person

  • GET /reports/todos/assigned/1.json will return a list of all active, pending to-dos assigned to the person with an ID of 1.

Optional query parameters:

  • group_by - when set to bucket, will group to-dos by project. When set to date, will group by due date. Default: bucket.
Example JSON Response
{
  "person": {
    "id": 1049715915,
    "attachable_sgid": "BAh7BkkiC19yYWlscwY6BkVUewdJIglkYXRhBjsAVEkiK2dpZDovL2JjMy9QZXJzb24vMTA0OTcxNTkxNT9leHBpcmVzX2luBjsAVEkiCHB1cgY7AFRJIg9hdHRhY2hhYmxlBjsAVA==--56bb1f99675fd8fe08f93a706a5d2ddaa8412625",
    "name": "Amy Rivera",
    "email_address": "amy@honchodesign.com",
    "personable_type": "User",
    "title": "Central Web Coordinator",
    "bio": "I never said most of the things I said",
    "location": null,
    "created_at": "2026-02-12T06:08:51.167Z",
    "updated_at": "2026-02-12T06:08:51.167Z",
    "admin": false,
    "owner": false,
    "client": false,
    "employee": false,
    "time_zone": "America/Chicago",
    "avatar_url": "https://3.basecampapi.com/195539477/people/BAhpBMtkkT4=--9927c47a4cbee30a7f9aea667882496aba799149/avatar",
    "can_ping": true,
    "can_manage_projects": true,
    "can_manage_people": true,
    "can_access_timesheet": true,
    "can_access_hill_charts": true
  },
  "grouped_by": "bucket",
  "todos": [
    {
      "id": 1069479164,
      "status": "active",
      "visible_to_clients": false,
      "created_at": "2026-01-14T04:18:00.000Z",
      "updated_at": "2026-01-14T04:18:00.000Z",
      "title": "Amy vs. Sharon",
      "inherits_status": true,
      "type": "Todo",
      "url": "https://3.basecampapi.com/195539477/buckets/2085958502/todos/1069479164.json",
      "app_url": "https://3.basecamp.com/195539477/buckets/2085958502/todos/1069479164",
      "bookmark_url": "https://3.basecampapi.com/195539477/my/bookmarks/BAh7BkkiC19yYWlscwY6BkVUewdJIglkYXRhBjsAVEkiLmdpZDovL2JjMy9SZWNvcmRpbmcvMTA2OTQ3OTE2ND9leHBpcmVzX2luBjsAVEkiCHB1cgY7AFRJIg1yZWFkYWJsZQY7AFQ=--8af0e81cbcfd171784f476df4fcd8a0defb0d525.json",
      "subscription_url": "https://3.basecampapi.com/195539477/buckets/2085958502/recordings/1069479164/subscription.json",
      "comments_count": 0,
      "comments_url": "https://3.basecampapi.com/195539477/buckets/2085958502/recordings/1069479164/comments.json",
      "boosts_count": 0,
      "boosts_url": "https://3.basecampapi.com/195539477/buckets/2085958502/recordings/1069479164/boosts.json",
      "position": 2,
      "parent": {
        "id": 1069479162,
        "title": "Group D",
        "type": "Todolist",
        "url": "https://3.basecampapi.com/195539477/buckets/2085958502/todolists/1069479162.json",
        "app_url": "https://3.basecamp.com/195539477/buckets/2085958502/todolists/1069479162"
      },
      "bucket": {
        "id": 2085958502,
        "name": "Honcho Design Newsroom",
        "type": "Project"
      },
      "creator": {
        "id": 1049715918,
        "attachable_sgid": "BAh7BkkiC19yYWlscwY6BkVUewdJIglkYXRhBjsAVEkiK2dpZDovL2JjMy9QZXJzb24vMTA0OTcxNTkxOD9leHBpcmVzX2luBjsAVEkiCHB1cgY7AFRJIg9hdHRhY2hhYmxlBjsAVA==--d6212bd7e60bf63ea61797589b2638cbbf2d4ed7",
        "name": "Brian Jenks",
        "email_address": "brian@honchodesign.com",
        "personable_type": "User",
        "title": "International Branding Liason",
        "bio": null,
        "location": null,
        "created_at": "2026-02-12T06:08:52.123Z",
        "updated_at": "2026-02-12T06:08:52.123Z",
        "admin": false,
        "owner": false,
        "client": false,
        "employee": false,
        "time_zone": "America/Chicago",
        "avatar_url": "https://3.basecampapi.com/195539477/people/BAhpBM5kkT4=--50075f17f313c1198fb6f27e5d466327804dfd22/avatar",
        "can_ping": true,
        "can_manage_projects": true,
        "can_manage_people": true,
        "can_access_timesheet": true,
        "can_access_hill_charts": true
      },
      "description": "",
      "completed": false,
      "content": "Amy vs. Sharon",
      "starts_on": null,
      "due_on": null,
      "assignees": [
        {
          "id": 1049715915,
          "attachable_sgid": "BAh7BkkiC19yYWlscwY6BkVUewdJIglkYXRhBjsAVEkiK2dpZDovL2JjMy9QZXJzb24vMTA0OTcxNTkxNT9leHBpcmVzX2luBjsAVEkiCHB1cgY7AFRJIg9hdHRhY2hhYmxlBjsAVA==--56bb1f99675fd8fe08f93a706a5d2ddaa8412625",
          "name": "Amy Rivera",
          "email_address": "amy@honchodesign.com",
          "personable_type": "User",
          "title": "Central Web Coordinator",
          "bio": "I never said most of the things I said",
          "location": null,
          "created_at": "2026-02-12T06:08:51.167Z",
          "updated_at": "2026-02-12T06:08:51.167Z",
          "admin": false,
          "owner": false,
          "client": false,
          "employee": false,
          "time_zone": "America/Chicago",
          "avatar_url": "https://3.basecampapi.com/195539477/people/BAhpBMtkkT4=--9927c47a4cbee30a7f9aea667882496aba799149/avatar",
          "can_ping": true,
          "can_manage_projects": true,
          "can_manage_people": true,
          "can_access_timesheet": true,
          "can_access_hill_charts": true
        }
      ],
      "completion_subscribers": [],
      "completion_url": "https://3.basecampapi.com/195539477/todos/1069479164/completion.json"
    }
  ]
}
Copy as cURL
curl -s -H "Authorization: Bearer $ACCESS_TOKEN" https://3.basecampapi.com/$ACCOUNT_ID/reports/todos/assigned/1.json

Get overdue to-dos

  • GET /reports/todos/overdue.json will return all overdue to-dos across all projects, grouped by how late they are.

The response includes four groups:

  • under_a_week_late - to-dos due within the last 7 days
  • over_a_week_late - to-dos due between 7 and 30 days ago
  • over_a_month_late - to-dos due between 30 and 90 days ago
  • over_three_months_late - to-dos due more than 90 days ago
Example JSON Response
{
  "under_a_week_late": [],
  "over_a_week_late": [],
  "over_a_month_late": [],
  "over_three_months_late": []
}
Copy as cURL
curl -s -H "Authorization: Bearer $ACCESS_TOKEN" https://3.basecampapi.com/$ACCOUNT_ID/reports/todos/overdue.json

Get upcoming schedule

  • GET /reports/schedules/upcoming.json will return schedule entries and assignable items within a specified date window.

Required query parameters:

  • window_starts_on - the start date of the window (ISO 8601, YYYY-MM-DD)
  • window_ends_on - the end date of the window (ISO 8601, YYYY-MM-DD)

The response includes:

  • schedule_entries - one-time schedule entries within the window
  • recurring_schedule_entry_occurrences - occurrences of recurring schedule entries within the window
  • assignables - to-dos, cards, and steps with due dates within the window
Example JSON Response
{
  "schedule_entries": [
    {
      "id": 1069479914,
      "status": "active",
      "visible_to_clients": false,
      "url": "https://3.basecampapi.com/195539477/buckets/2085958504/schedule_entries/1069479914.json",
      "app_url": "https://3.basecamp.com/195539477/buckets/2085958504/schedule_entries/1069479914",
      "type": "ScheduleEntry",
      "summary": "Team Meeting",
      "all_day": false,
      "recurring": false,
      "starts_at": "2026-02-27T18:29:36.956Z",
      "ends_at": "2026-02-27T22:29:36.956Z",
      "creator": {
        "id": 1049715913,
        "name": "Victor Cooper",
        "avatar_url": "https://3.basecampapi.com/195539477/people/BAhpBMlkkT4=--5fe7b70fbee7a7f0e2e1e19df7579e5d880c753d/avatar"
      },
      "participants": [
        {
          "id": 1049715944,
          "name": "Steve Marsh",
          "avatar_url": "https://3.basecampapi.com/195539477/people/BAhpBOhkkT4=--b169e35b345bcc26eca6964b7ef7de2c16b6f238/avatar"
        }
      ],
      "bucket": {
        "id": 2085958504,
        "name": "The Leto Laptop"
      },
      "comments_count": 0
    }
  ],
  "recurring_schedule_entry_occurrences": [],
  "assignables": []
}
Copy as cURL
curl -s -H "Authorization: Bearer $ACCESS_TOKEN" "https://3.basecampapi.com/$ACCOUNT_ID/reports/schedules/upcoming.json?window_starts_on=2025-10-10&window_ends_on=2025-10-17"