Inconsistencies Found Between Source Code and API Specification

Open
#171 1 comment 0 reactions 1 assignee View on GitHub

Maintainers usually reply within 1 day

@Roxie-32 is already working on this.

Since Jul 27, 2026.

Assessment

This issue has not been assessed yet.

Description

Description:

While conducting research for our tool that dynamically generates API specifications, we discovered several inconsistencies between the project’s source code and its existing specification.

Specifically:

  • Some endpoints exist in the source code but are missing from the specification.

  • Some endpoints exist in the specification but are missing (or incorrectly defined) in the source code.

In the list below, each entry follows the format /api/v1/.,
where the part after the dot (e.g., .post, .get, .delete) indicates the HTTP method used by that endpoint.

Below is the list of the endpoints.

- exist in the source code but are missing from the specification.

/api/v1/calendar-events.create.post
/api/v1/calendar-events.delete.post
/api/v1/calendar-events.import.post
/api/v1/calendar-events.info.get
/api/v1/calendar-events.list.get
/api/v1/calendar-events.update.post
/api/v1/canned-responses.delete
/api/v1/chat.getURLPreview.get
/api/v1/chat.otr.post
/api/v1/cloud.checkoutUrl.get
/api/v1/cloud.confirmationPoll.get
/api/v1/cloud.createRegistrationIntent.post
/api/v1/cloud.registerPreIntent.post
/api/v1/cloud.registrationStatus.get
/api/v1/cloud.removeLicense.post
/api/v1/cloud.syncWorkspace.post
/api/v1/connector.extension.getDetails.get
/api/v1/connector.extension.getRegistrationInfoByExtension.get
/api/v1/connector.extension.list.get
/api/v1/connector.getVersion.get
/api/v1/dns.resolve.srv.get
/api/v1/e2e.acceptSuggestedGroupKey.post
/api/v1/e2e.fetchUsersWaitingForGroupKey.get
/api/v1/e2e.provideUsersSuggestedGroupKeys.post
/api/v1/e2e.rejectSuggestedGroupKey.post
/api/v1/e2e.resetRoomKey.post
/api/v1/email-inbox.send-test/:_id.post
/api/v1/fingerprint.post
/api/v1/importers.list.get
/api/v1/licenses.maxActiveUsers.get
/api/v1/livechat/:rid/messages.get
/api/v1/livechat/agent.status.post
/api/v1/livechat/analytics/dashboards/conversations-by-source.get
/api/v1/livechat/department/:_id/archive.post
/api/v1/livechat/department/:_id/unarchive.post
/api/v1/livechat/department/isDepartmentCreationAvailable.get
/api/v1/livechat/departments/archived.get
/api/v1/livechat/priorities.reset.get
/api/v1/livechat/room.resumeOnHold.post
/api/v1/livechat/rooms/filters.get
/api/v1/livechat/triggers/:_id/external-service/call.post
/api/v1/livechat/triggers/external-service/test.post
/api/v1/livechat/visitor.callStatus.post
/api/v1/livechat/visitor.status.post
/api/v1/logout.get
/api/v1/method.callAnon/:method.post
/api/v1/moderation.dismissUserReports.post
/api/v1/moderation.user.reportsByUserId.get
/api/v1/moderation.userReports.get
/api/v1/omnichannel/:rid/request-transcript.post
/api/v1/omnichannel/contact.get
/api/v1/omnichannel/contacts.block.post
/api/v1/omnichannel/contacts.unblock.post
/api/v1/presence.enableBroadcast.post
/api/v1/presence.getConnections.get
/api/v1/push.info.get
/api/v1/push.test.post
/api/v1/roles.getUsersInPublicRoles.get
/api/v1/rooms.autocomplete.channelAndPrivate.withPagination.get
/api/v1/rooms.isMember.get
/api/v1/rooms.mediaConfirm/:rid/:fileId.post
/api/v1/rooms.open.post
/api/v1/rooms.roles.get
/api/v1/sendInvitationEmail.post
/api/v1/smtp.check.get
/api/v1/statistics.telemetry.post
/api/v1/users.getAvatarSuggestion.get
/api/v1/users.sendConfirmationEmail.post
/api/v1/video-conference.cancel.post
/api/v1/video-conference.capabilities.get
/api/v1/video-conference.info.get
/api/v1/video-conference.join.post
/api/v1/video-conference.list.get
/api/v1/video-conference.providers.get
/api/v1/video-conference.start.post
/api/v1/voip-freeswitch.extension.assign.post
/api/v1/voip-freeswitch.extension.getDetails.get
/api/v1/voip-freeswitch.extension.getRegistrationInfoByUserId.get
/api/v1/voip-freeswitch.extension.list.get

- exist in the specification but are missing (typos etc.) in the source code.

/api/apps/public/:app-id/incoming.post
/api/apps/public/:appId/templateMessage.post
/api/v1/avatar/:subject.get
/api/v1/dns.resolve.srv.post
/api/v1/email-inbox.send-test/:_id.get
/api/v1/livechat/business-hours.list.get
/api/v1/livechat/departments.available-by-unit/:unitId.get
/api/v1/livechat/departments.by-unit/:unitid.get
/api/v1/livechat/monitors.getOne.get
/api/v1/livechat/monitors.list.get
/api/v1/livechat/tags.list.get
/api/v1/livechat/unitMonitors.list.get
/api/v1/livechat/units.getOne.get
/api/v1/livechat/units.list.get
/api/v1/livechat/visitors.status.post
/api/v1/video-conference/jitsi.update-timeout.post
/api/vi/omnichannel/:rid/request-transcript.post
/app/:id/logs.get
/licenses.maxActiveUsers.get
/livechat/priorities.get
/livechat/priorities.list.get
/livechat/priorities/:priorityId.get
/livechat/priority.getOne.get
/livechat/tags.getOne.get

Additional context

Our comparison was based on the YAML files in the RocketChat/Rocket.Chat-Open-API
repository.

Dominant language
No language data
Stars
16
Forks
18
Avg merge
16m
Merged PRs (30d)
24

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from RocketChat/Rocket.Chat-Open-API

All issues in RocketChat/Rocket.Chat-Open-API

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.