Basecamp 5 API: Campfire line editing, schedule recurrence, and to-do set to-dos#411
Conversation
There was a problem hiding this comment.
Pull request overview
Syncs updated Basecamp API documentation from basecamp/bc3 (doc/api/), reflecting recent contract changes for Campfire line edits, schedule entry recurrence parameters/behavior, and listless to-do creation.
Tip
If you aren't ready for review, convert to a draft PR.
Click "Convert to draft" or run gh pr ready --undo.
Click "Ready for review" or run gh pr ready to reengage.
Changes:
- Document Campfire line update semantics (204 response, rich text conversion, permissions) and fix the delete cURL example.
- Expand schedule entry recurrence documentation (write parameters, per-frequency
dayssemantics, and redirect behavior for recurring entries). - Document project-scoped “listless” to-do creation under a to-do set, and add the corresponding reference link.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| sections/campfires.md | Adds/updates docs for updating and deleting Campfire lines, including permissions and cURL fixes. |
| sections/schedule_entries.md | Documents recurrence write params/semantics and recurring-entry redirect behavior; adds a recurring request example. |
| sections/todos.md | Documents listless to-do creation under a to-do set and adds a reference link to the to-do set endpoint. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
2f19a15 to
d8b328f
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2f19a15b41
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
Comments suppressed due to low confidence (1)
sections/schedule_entries.md:305
- The create-entry cURL payload below does not match the preceding JSON example:
ends_atis set to2015-06-04T00:00:00Zin the cURL, but the JSON example uses2015-06-04T02:00:00Z. This makes the copy/paste request incorrect.
###### Example JSON Request (recurring)
```json
{
"summary": "Weekly sync",
"starts_at": "2015-06-04T15:00:00Z",
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 3 out of 3 changed files in this pull request and generated no new comments.
Comments suppressed due to low confidence (1)
sections/schedule_entries.md:314
- The "Create a schedule entry" cURL example payload sets
ends_atto the same value asstarts_at, which contradicts the preceding Example JSON Request (ends_atis 2015-06-04T02:00:00Z). This makes the copy/paste example inaccurate.
```shell
Three sections gain documentation for capabilities that are live in the Basecamp 5 API today.
Campfires: edit and delete lines
sections/campfires.md now documents updating a Campfire line —
PUT /chats/:chat/lines/:id.jsonwith newcontent, returning204 No Content. Lines can be edited only by their creator, and the edited line becomes a rich text line, so the content may use the HTML covered in the rich text guide. Deleting a line (creator or an admin) is documented alongside, and its cURL example now correctly shows-X DELETE.Schedule entries: recurring events via the API
sections/schedule_entries.md documents the recurrence write parameters: pass
recurrence_scheduleandrecurs_untilwhen creating a schedule entry, or when updating a non-recurring one, to make it recur. The section covers each frequency'sdayssemantics, which schedule attributes are derived fromstarts_at/ends_at, and how requests for a recurring series redirect to its first occurrence (individual occurrences are fetchable by date).To-dos: create directly in a to-do set
sections/todos.md documents creating a to-do directly under a project's to-do set, outside any to-do list:
POST /buckets/:project/todosets/:todoset/todos.json.Compatibility
Documentation-only. These endpoints already exist and behave as described; no wire-format or breaking changes.