Skip to content

Add message reactions, and thread/message create+update endpoints#1

Open
stromcom wants to merge 1 commit into
masterfrom
feature/reactions-and-write-endpoints
Open

Add message reactions, and thread/message create+update endpoints#1
stromcom wants to merge 1 commit into
masterfrom
feature/reactions-and-write-endpoints

Conversation

@stromcom

Copy link
Copy Markdown
Owner

Summary

Audit of htdocs/route/route.api.customer.v1.php in the main repo against this SDK's resources found it only covered reads: no way to create a thread, update one, or send a message at all, and reactions (already live server-side) weren't wrapped either.

  • MessageResource::reactions()GET /threads/{code}/messages/{hash}/reactions/ — new MessageReaction / MessageReactionUser models (hydrated from the real repository shape, not the slightly stale OpenAPI doc).
  • ThreadResource::create(array $payload)POST /threads/ — upsert by code, optional initial message + attachments.
  • ThreadResource::update(string $code, array $changes)PUT /threads/{code}/.
  • MessageResource::create(string $threadCode, array $payload)POST /threads/{code}/messages/.

All new write methods follow the existing "arrays in, typed models out" convention (same as users()->create()).

This also moves CHANGELOG.md's [Unreleased] entries into [0.1.0] - 2026-07-17 — this package has never been tagged, so 0.1.0 is proposed as the first release version. Happy to adjust before tagging.

Test plan

  • composer test — 89 tests, 250 assertions, all green
  • vendor/bin/phpstan analyse (level 9) — no errors
  • composer cs (php-cs-fixer dry-run) — clean

Closes the gap between the SDK and the Customer API: reactions were
already live server-side but unwrapped, and thread/message creation had
no SDK surface at all (read-only until now).

- MessageResource::reactions() -> GET .../messages/{hash}/reactions/
  (MessageReaction, MessageReactionUser models)
- ThreadResource::create()     -> POST /threads/ (upsert by code,
  optional initial message + attachments)
- ThreadResource::update()     -> PUT /threads/{code}/
- MessageResource::create()    -> POST /threads/{code}/messages/

Prepares CHANGELOG.md for the first tagged release, 0.1.0.
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.

1 participant