Skip to content

Fix inbound spec: message IDs are strings, correct 403 shape#44

Merged
mklocek merged 1 commit into
mainfrom
inbound-fixes
Jun 4, 2026
Merged

Fix inbound spec: message IDs are strings, correct 403 shape#44
mklocek merged 1 commit into
mainfrom
inbound-fixes

Conversation

@mklocek

@mklocek mklocek commented Jun 3, 2026

Copy link
Copy Markdown
Contributor

Changes

Fix inbound spec: message IDs are strings, correct 403 shape

  • Type message id and the messages last_id cursor (param and response) as string instead of integer, matching the actual API
  • Add a dedicated schema for 403 responses, which return an errors field rather than the error field used by 401/404

Summary by CodeRabbit

  • API Updates
    • Message identifiers and pagination cursor values are now strings instead of integers.
    • Forbidden (403) error responses now provide structured error details in an array format for improved error diagnostics.

- Type message `id` and the messages `last_id` cursor (param and
  response) as string instead of integer, matching the actual API
- Add a dedicated schema for 403 responses, which return an `errors`
  field rather than the `error` field used by 401/404
@coderabbitai

coderabbitai Bot commented Jun 3, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: ae5de917-06de-419e-a24d-d6093e18ec50

📥 Commits

Reviewing files that changed from the base of the PR and between 5e0d655 and 1c539b1.

📒 Files selected for processing (1)
  • specs/inbound.openapi.yml

📝 Walkthrough

Walkthrough

The inbound OpenAPI specification is updated to represent message identifiers and pagination cursors as strings instead of integers. A new ForbiddenError schema is added for forbidden responses, and the corresponding response definition is updated to reference it with an errors field.

Changes

Inbound API Specification Updates

Layer / File(s) Summary
Message ID type migration to string
specs/inbound.openapi.yml
Message.id schema and MessagesListResponse.last_id cursor field are changed from integer to string type. The last_id query parameter and message_id path parameter types are updated accordingly, and list endpoint examples are aligned to use quoted string values.
Forbidden error schema and response update
specs/inbound.openapi.yml
A new ForbiddenError schema is added with an errors field structure. The Forbidden response definition is updated to reference ForbiddenError instead of ErrorResponse, and the example payload is changed from a single error string to an errors-based shape.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐰 IDs now string their way so true,
Pagination cursors changed in view,
Errors gathered in array form,
Spec updates keep the patterns warm!

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Description check ❓ Inconclusive The description covers the key changes but is missing several template sections (Motivation, How to test, Images and GIFs) and lacks comprehensive detail. Add Motivation section explaining why these changes are needed, include How to test section with verification steps, and consider adding before/after examples if applicable.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately captures the two main changes: message IDs being typed as strings and the correction of 403 response schema.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch inbound-fixes

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@mklocek mklocek merged commit 5a8853c into main Jun 4, 2026
2 checks passed
@mklocek mklocek deleted the inbound-fixes branch June 4, 2026 08:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants