Skip to content

ISSUE-234 - Fix API schema inconsistences for r3.2 - #244

Merged
stroncoso merged 2 commits into
camaraproject:mainfrom
stroncoso:stroncoso/issue234
Oct 16, 2026
Merged

stroncoso merged 2 commits into
camaraproject:mainfrom
stroncoso:stroncoso/issue234

Conversation

@stroncoso

Copy link
Copy Markdown
Contributor

What type of PR is this?

  • correction

What this PR does / why we need it:

Fixes the remaining schema and example inconsistencies from #234 , the error-response items were covered already by #241:

  • call-handling:
    • MediaSessionCreate no longer inherits status / answer
    • status PUT request examples now match MediaSessionStatusChange.
  • events-subscriptions:
    • Subscription.types allows 3 items, as the request does
    • the callback operationId is unique now (postNotification)
    • subscriptionId is required in MediaSession and RegistrationEnds
    • the MediaSession address pattern now matches Address in call-handling
  • events-subscriptions REMOVALS:
    • removes the unused initialEvent and subscriptionMaxEvents (and the now-unreachable MAX_EVENTS_REACHED).
    • removes PUT /subscriptions/{subscriptionId}, which is not part of the Commonalities subscription model.

Which issue(s) this PR fixes:

Fixes #234

Special notes for reviewers:

Breaking changes (to be listed in the r3.2 release notes) @teikuran @deepakjaiswal1 :

  • subscriptionId required in event data (MediaSession, RegistrationEnds): implementations must always send it in session-invitation, session-status and registration-ends events, as required by the Event Subscription Guide for resource-based subscriptions. Consumers can rely on it to correlate events with subscriptions.
  • initialEvent and subscriptionMaxEvents removed from Config: they were documented as not used. Requests that still send them are no longer described by the schema. MAX_EVENTS_REACHED is removed from TerminationReason because no subscription can reach a max-events limit anymore.
  • PUT /subscriptions/{subscriptionId} removed, together with the webrtc-events-subscriptions:update scope: up to r4.4, the Commonalities subscription model has no update operation. To change the sink credential or expiry, consumers delete the subscription and create a new one.

Non-breaking, worth checking:

  • The callback operationId rename (postNotification) does not change what is sent on the wire. Only the code consumers generate for their callback receiver changes.
  • MediaSessionCreate no longer documents status / answer. The response schema is unchanged. Extra properties are still allowed (additionalProperties is not false), so the schema doesn't reject them and no negative test is added.
  • The MediaSession address pattern now accepts the same formats as Address in call-handling (urn:service:sos, phone-context, user=phone, anonymous). Subscription.types accepts up to 3 items, matching the request. Both only widen what is accepted.

Changelog input

 release-note
- fix(call-handling): Fix API schema inconsistencies
- fix(events): Fix API inconsistencies, remove PUT operation

Additional documentation

n/a

@stroncoso

Copy link
Copy Markdown
Contributor Author

Hi team,

This PR maybe is a little long, but I was trying to cleanup all the inconsistencies noted by Herbert on the review. Then changes make sense to me, and the breaking changes are not really relevant for the functionality of the API, to be honest...

Please, take a look and approve ASAP.

Thanks

@deepakjaiswal1 deepakjaiswal1 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@stroncoso
stroncoso merged commit bfa8884 into camaraproject:main Oct 16, 2026
2 checks passed
@stroncoso
stroncoso deleted the stroncoso/issue234 branch October 16, 2026 21:56
@stroncoso

Copy link
Copy Markdown
Contributor Author

Clarification required from commonalites:

  • Should the server replace the subscription?

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.

Correct error responses and schema inconsistencies

3 participants