RocketChat / RocketChat/Rocket.Chat-Open-API

Inconsistencies Found Between Source Code and API Specification

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

@Roxie-32 is already working on this.

Since Jul 27, 2026.

Dominant language
No language data
Stars
15
Forks
16
Avg merge
1h 39m
Merged PRs (30d)
13

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.

Contributor guide

No contributing guide indexed for this repository

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.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.