Most of the data structures in the Basecamp 4 API are represented as "Recordings", with generic actions available to be performed.
Endpoints:
GET /projects/recordings.json
will return a paginated list of records for the giventype
of recording.
Required parameters: type
, which must be Comment
, Document
, Message
, Question::Answer
, Schedule::Entry
, Todo
, Todolist
, Upload
, or Vault
).
Optional parameters:
bucket
- Single or comma separated list of project IDs. Default: All active projects visible to the current user.status
- Options:active
,archived
, ortrashed
. Default:active
sort
- Options:created_at
orupdated_at
. Default:created_at
.direction
- Options:desc
orasc
. Default:desc
.
Examples: /projects/recordings.json?type=Todo
, /projects/recordings.json?type=Message&bucket=1
, /projects/recordings.json?type=Document&bucket=1,2&sort=updated_at&direction=asc
PUT /buckets/1/recordings/2/status/trashed.json
will mark the recording with an ID of2
in the project with ID1
as trashed.
No parameters required. Returns 204 No Content
if successful.
curl -s -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -X PUT \
https://3.basecampapi.com/$ACCOUNT_ID/buckets/1/recordings/2/status/trashed.json
PUT /buckets/1/recordings/2/status/archived.json
will mark the recording with an ID of2
in the project with ID1
as archived.
No parameters required. Returns 204 No Content
if successful.
curl -s -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -X PUT \
https://3.basecampapi.com/$ACCOUNT_ID/buckets/1/recordings/2/status/archived.json
PUT /buckets/1/recordings/2/status/active.json
will mark the recording with an ID of2
in the project with ID1
as active.
No parameters required. Returns 204 No Content
if successful.
curl -s -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -X PUT \
https://3.basecampapi.com/$ACCOUNT_ID/buckets/1/recordings/2/status/active.json