async-matrix 0.1.3 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +131 -0
- data/data/matrix-spec/api/client-server/account-data.yaml +389 -0
- data/data/matrix-spec/api/client-server/account_deactivation.yaml +149 -0
- data/data/matrix-spec/api/client-server/admin.yaml +512 -0
- data/data/matrix-spec/api/client-server/administrative_contact.yaml +620 -0
- data/data/matrix-spec/api/client-server/appservice_ping.yaml +183 -0
- data/data/matrix-spec/api/client-server/appservice_room_directory.yaml +104 -0
- data/data/matrix-spec/api/client-server/authed-content-repo.yaml +590 -0
- data/data/matrix-spec/api/client-server/banning.yaml +177 -0
- data/data/matrix-spec/api/client-server/capabilities.yaml +235 -0
- data/data/matrix-spec/api/client-server/content-repo.yaml +887 -0
- data/data/matrix-spec/api/client-server/create_room.yaml +306 -0
- data/data/matrix-spec/api/client-server/cross_signing.yaml +300 -0
- data/data/matrix-spec/api/client-server/definitions/auth_data.yaml +34 -0
- data/data/matrix-spec/api/client-server/definitions/auth_response.yaml +62 -0
- data/data/matrix-spec/api/client-server/definitions/client_device.yaml +44 -0
- data/data/matrix-spec/api/client-server/definitions/client_event.yaml +49 -0
- data/data/matrix-spec/api/client-server/definitions/client_event_without_room_id.yaml +147 -0
- data/data/matrix-spec/api/client-server/definitions/cross_signing_key.yaml +57 -0
- data/data/matrix-spec/api/client-server/definitions/device_keys.yaml +70 -0
- data/data/matrix-spec/api/client-server/definitions/errors/error.yaml +26 -0
- data/data/matrix-spec/api/client-server/definitions/errors/rate_limited.yaml +34 -0
- data/data/matrix-spec/api/client-server/definitions/event_batch.yaml +22 -0
- data/data/matrix-spec/api/client-server/definitions/event_filter.yaml +55 -0
- data/data/matrix-spec/api/client-server/definitions/invite_3pid.yaml +45 -0
- data/data/matrix-spec/api/client-server/definitions/key_backup_auth_data.yaml +36 -0
- data/data/matrix-spec/api/client-server/definitions/key_backup_data.yaml +50 -0
- data/data/matrix-spec/api/client-server/definitions/key_backup_session_data.yaml +57 -0
- data/data/matrix-spec/api/client-server/definitions/m.login.terms_params.yaml +83 -0
- data/data/matrix-spec/api/client-server/definitions/m.mentions.yaml +33 -0
- data/data/matrix-spec/api/client-server/definitions/m.oauth_params.yaml +30 -0
- data/data/matrix-spec/api/client-server/definitions/m.relates_to.yaml +45 -0
- data/data/matrix-spec/api/client-server/definitions/megolm_export_session_data.yaml +39 -0
- data/data/matrix-spec/api/client-server/definitions/olm_payload.yaml +88 -0
- data/data/matrix-spec/api/client-server/definitions/one_time_keys.yaml +27 -0
- data/data/matrix-spec/api/client-server/definitions/openid_token.yaml +37 -0
- data/data/matrix-spec/api/client-server/definitions/protocol.yaml +44 -0
- data/data/matrix-spec/api/client-server/definitions/public_rooms_chunk.yaml +74 -0
- data/data/matrix-spec/api/client-server/definitions/public_rooms_response.yaml +59 -0
- data/data/matrix-spec/api/client-server/definitions/push_condition.yaml +53 -0
- data/data/matrix-spec/api/client-server/definitions/push_rule.yaml +53 -0
- data/data/matrix-spec/api/client-server/definitions/push_ruleset.yaml +206 -0
- data/data/matrix-spec/api/client-server/definitions/recent_emoji.yaml +29 -0
- data/data/matrix-spec/api/client-server/definitions/request_email_validation.yaml +36 -0
- data/data/matrix-spec/api/client-server/definitions/request_msisdn_validation.yaml +36 -0
- data/data/matrix-spec/api/client-server/definitions/request_token_response.yaml +46 -0
- data/data/matrix-spec/api/client-server/definitions/room_event_filter.yaml +60 -0
- data/data/matrix-spec/api/client-server/definitions/room_key_backup.yaml +37 -0
- data/data/matrix-spec/api/client-server/definitions/room_summary.yaml +44 -0
- data/data/matrix-spec/api/client-server/definitions/security.yaml +47 -0
- data/data/matrix-spec/api/client-server/definitions/sso_login_flow.yaml +98 -0
- data/data/matrix-spec/api/client-server/definitions/state_event_batch.yaml +21 -0
- data/data/matrix-spec/api/client-server/definitions/sync_filter.yaml +86 -0
- data/data/matrix-spec/api/client-server/definitions/tag.yaml +24 -0
- data/data/matrix-spec/api/client-server/definitions/third_party_signed.yaml +45 -0
- data/data/matrix-spec/api/client-server/definitions/timeline_batch.yaml +36 -0
- data/data/matrix-spec/api/client-server/definitions/user_identifier.yaml +27 -0
- data/data/matrix-spec/api/client-server/definitions/wellknown/full.yaml +38 -0
- data/data/matrix-spec/api/client-server/definitions/wellknown/homeserver.yaml +25 -0
- data/data/matrix-spec/api/client-server/definitions/wellknown/identity_server.yaml +25 -0
- data/data/matrix-spec/api/client-server/device_management.yaml +314 -0
- data/data/matrix-spec/api/client-server/directory.yaml +318 -0
- data/data/matrix-spec/api/client-server/event_context.yaml +161 -0
- data/data/matrix-spec/api/client-server/filter.yaml +224 -0
- data/data/matrix-spec/api/client-server/inviting.yaml +149 -0
- data/data/matrix-spec/api/client-server/joining.yaml +238 -0
- data/data/matrix-spec/api/client-server/key_backup.yaml +993 -0
- data/data/matrix-spec/api/client-server/keys.yaml +482 -0
- data/data/matrix-spec/api/client-server/kicking.yaml +110 -0
- data/data/matrix-spec/api/client-server/knocking.yaml +152 -0
- data/data/matrix-spec/api/client-server/leaving.yaml +163 -0
- data/data/matrix-spec/api/client-server/list_joined_rooms.yaml +68 -0
- data/data/matrix-spec/api/client-server/list_public_rooms.yaml +280 -0
- data/data/matrix-spec/api/client-server/login.yaml +321 -0
- data/data/matrix-spec/api/client-server/login_token.yaml +138 -0
- data/data/matrix-spec/api/client-server/logout.yaml +86 -0
- data/data/matrix-spec/api/client-server/message_pagination.yaml +194 -0
- data/data/matrix-spec/api/client-server/notifications.yaml +152 -0
- data/data/matrix-spec/api/client-server/oauth_server_metadata.yaml +238 -0
- data/data/matrix-spec/api/client-server/old_sync.yaml +379 -0
- data/data/matrix-spec/api/client-server/openid.yaml +98 -0
- data/data/matrix-spec/api/client-server/password_management.yaml +246 -0
- data/data/matrix-spec/api/client-server/peeking_events.yaml +122 -0
- data/data/matrix-spec/api/client-server/policy_server.yaml +82 -0
- data/data/matrix-spec/api/client-server/presence.yaml +169 -0
- data/data/matrix-spec/api/client-server/profile.yaml +366 -0
- data/data/matrix-spec/api/client-server/pusher.yaml +303 -0
- data/data/matrix-spec/api/client-server/pushrules.yaml +633 -0
- data/data/matrix-spec/api/client-server/read_markers.yaml +103 -0
- data/data/matrix-spec/api/client-server/receipts.yaml +139 -0
- data/data/matrix-spec/api/client-server/redaction.yaml +116 -0
- data/data/matrix-spec/api/client-server/refresh.yaml +119 -0
- data/data/matrix-spec/api/client-server/registration.yaml +488 -0
- data/data/matrix-spec/api/client-server/registration_tokens.yaml +93 -0
- data/data/matrix-spec/api/client-server/relations.yaml +382 -0
- data/data/matrix-spec/api/client-server/report_content.yaml +283 -0
- data/data/matrix-spec/api/client-server/room_event_by_timestamp.yaml +147 -0
- data/data/matrix-spec/api/client-server/room_initial_sync.yaml +188 -0
- data/data/matrix-spec/api/client-server/room_send.yaml +130 -0
- data/data/matrix-spec/api/client-server/room_state.yaml +159 -0
- data/data/matrix-spec/api/client-server/room_summary.yaml +138 -0
- data/data/matrix-spec/api/client-server/room_upgrades.yaml +130 -0
- data/data/matrix-spec/api/client-server/rooms.yaml +380 -0
- data/data/matrix-spec/api/client-server/search.yaml +385 -0
- data/data/matrix-spec/api/client-server/space_hierarchy.yaml +237 -0
- data/data/matrix-spec/api/client-server/sso_login_redirect.yaml +135 -0
- data/data/matrix-spec/api/client-server/support.yaml +142 -0
- data/data/matrix-spec/api/client-server/sync.yaml +692 -0
- data/data/matrix-spec/api/client-server/tags.yaml +183 -0
- data/data/matrix-spec/api/client-server/third_party_lookup.yaml +324 -0
- data/data/matrix-spec/api/client-server/third_party_membership.yaml +139 -0
- data/data/matrix-spec/api/client-server/threads_list.yaml +167 -0
- data/data/matrix-spec/api/client-server/to_device.yaml +104 -0
- data/data/matrix-spec/api/client-server/typing.yaml +103 -0
- data/data/matrix-spec/api/client-server/users.yaml +136 -0
- data/data/matrix-spec/api/client-server/versions.yaml +108 -0
- data/data/matrix-spec/api/client-server/voip.yaml +93 -0
- data/data/matrix-spec/api/client-server/wellknown.yaml +60 -0
- data/data/matrix-spec/api/client-server/whoami.yaml +121 -0
- data/data/matrix-spec/event-schemas/examples/core/event.json +6 -0
- data/data/matrix-spec/event-schemas/examples/core/room_edu.json +3 -0
- data/data/matrix-spec/event-schemas/examples/core/room_event.json +11 -0
- data/data/matrix-spec/event-schemas/examples/core/state_event.json +4 -0
- data/data/matrix-spec/event-schemas/examples/invite_room_state.json +18 -0
- data/data/matrix-spec/event-schemas/examples/knock_room_state.json +18 -0
- data/data/matrix-spec/event-schemas/examples/m.accepted_terms.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.call.answer.yaml +21 -0
- data/data/matrix-spec/event-schemas/examples/m.call.candidates.yaml +16 -0
- data/data/matrix-spec/event-schemas/examples/m.call.hangup.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.call.invite.yaml +22 -0
- data/data/matrix-spec/event-schemas/examples/m.call.negotiate.yaml +22 -0
- data/data/matrix-spec/event-schemas/examples/m.call.reject.yaml +9 -0
- data/data/matrix-spec/event-schemas/examples/m.call.sdp_stream_metadata_changed.yaml +16 -0
- data/data/matrix-spec/event-schemas/examples/m.call.select_answer.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.direct.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.dummy.yaml +4 -0
- data/data/matrix-spec/event-schemas/examples/m.forwarded_room_key.yaml +14 -0
- data/data/matrix-spec/event-schemas/examples/m.fully_read.yaml +7 -0
- data/data/matrix-spec/event-schemas/examples/m.identity_server.yaml +7 -0
- data/data/matrix-spec/event-schemas/examples/m.ignored_user_list.yaml +9 -0
- data/data/matrix-spec/event-schemas/examples/m.invite_permission_config.yaml +7 -0
- data/data/matrix-spec/event-schemas/examples/m.key.verification.accept.yaml +12 -0
- data/data/matrix-spec/event-schemas/examples/m.key.verification.cancel.yaml +8 -0
- data/data/matrix-spec/event-schemas/examples/m.key.verification.done.yaml +6 -0
- data/data/matrix-spec/event-schemas/examples/m.key.verification.key.yaml +7 -0
- data/data/matrix-spec/event-schemas/examples/m.key.verification.mac.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.key.verification.ready.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.key.verification.request.yaml +11 -0
- data/data/matrix-spec/event-schemas/examples/m.key.verification.start$m.sas.v1.yaml +12 -0
- data/data/matrix-spec/event-schemas/examples/m.key.verification.start.yaml +8 -0
- data/data/matrix-spec/event-schemas/examples/m.key_backup.yaml +7 -0
- data/data/matrix-spec/event-schemas/examples/m.marked_unread.yaml +7 -0
- data/data/matrix-spec/event-schemas/examples/m.policy.rule.room.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.policy.rule.server.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.policy.rule.user.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.presence.yaml +12 -0
- data/data/matrix-spec/event-schemas/examples/m.push_rules.yaml +177 -0
- data/data/matrix-spec/event-schemas/examples/m.reaction.yaml +11 -0
- data/data/matrix-spec/event-schemas/examples/m.receipt.yaml +18 -0
- data/data/matrix-spec/event-schemas/examples/m.recent_emoji.yaml +16 -0
- data/data/matrix-spec/event-schemas/examples/m.room.avatar.yaml +14 -0
- data/data/matrix-spec/event-schemas/examples/m.room.canonical_alias.yaml +12 -0
- data/data/matrix-spec/event-schemas/examples/m.room.create.yaml +13 -0
- data/data/matrix-spec/event-schemas/examples/m.room.encrypted$megolm.yaml +11 -0
- data/data/matrix-spec/event-schemas/examples/m.room.encrypted$olm.yaml +14 -0
- data/data/matrix-spec/event-schemas/examples/m.room.encryption.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.room.guest_access.yaml +8 -0
- data/data/matrix-spec/event-schemas/examples/m.room.history_visibility.yaml +8 -0
- data/data/matrix-spec/event-schemas/examples/m.room.join_rules$restricted.yaml +18 -0
- data/data/matrix-spec/event-schemas/examples/m.room.join_rules.yaml +8 -0
- data/data/matrix-spec/event-schemas/examples/m.room.member$invite_room_state.yaml +15 -0
- data/data/matrix-spec/event-schemas/examples/m.room.member$join_authorised_via_users_server.yaml +12 -0
- data/data/matrix-spec/event-schemas/examples/m.room.member$knock_room_state.yaml +15 -0
- data/data/matrix-spec/event-schemas/examples/m.room.member$third_party_invite.yaml +20 -0
- data/data/matrix-spec/event-schemas/examples/m.room.member.yaml +12 -0
- data/data/matrix-spec/event-schemas/examples/m.room.message$m.audio.yaml +14 -0
- data/data/matrix-spec/event-schemas/examples/m.room.message$m.emote.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.room.message$m.file.yaml +14 -0
- data/data/matrix-spec/event-schemas/examples/m.room.message$m.image.yaml +16 -0
- data/data/matrix-spec/event-schemas/examples/m.room.message$m.key.verification.request.yaml +19 -0
- data/data/matrix-spec/event-schemas/examples/m.room.message$m.location.yaml +18 -0
- data/data/matrix-spec/event-schemas/examples/m.room.message$m.notice.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.room.message$m.server_notice.yaml +11 -0
- data/data/matrix-spec/event-schemas/examples/m.room.message$m.text.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.room.message$m.video.yaml +23 -0
- data/data/matrix-spec/event-schemas/examples/m.room.name.yaml +8 -0
- data/data/matrix-spec/event-schemas/examples/m.room.pinned_events.yaml +8 -0
- data/data/matrix-spec/event-schemas/examples/m.room.policy.yaml +11 -0
- data/data/matrix-spec/event-schemas/examples/m.room.power_levels.yaml +24 -0
- data/data/matrix-spec/event-schemas/examples/m.room.redaction.yaml +8 -0
- data/data/matrix-spec/event-schemas/examples/m.room.server_acl.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.room.third_party_invite.yaml +14 -0
- data/data/matrix-spec/event-schemas/examples/m.room.tombstone.yaml +9 -0
- data/data/matrix-spec/event-schemas/examples/m.room.topic.yaml +16 -0
- data/data/matrix-spec/event-schemas/examples/m.room_key.withheld.yaml +12 -0
- data/data/matrix-spec/event-schemas/examples/m.room_key.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.room_key_request$cancel_request.yaml +8 -0
- data/data/matrix-spec/event-schemas/examples/m.room_key_request$request.yaml +14 -0
- data/data/matrix-spec/event-schemas/examples/m.secret.request.yaml +9 -0
- data/data/matrix-spec/event-schemas/examples/m.secret.send.yaml +7 -0
- data/data/matrix-spec/event-schemas/examples/m.space.child.yaml +10 -0
- data/data/matrix-spec/event-schemas/examples/m.space.parent.yaml +9 -0
- data/data/matrix-spec/event-schemas/examples/m.sticker.yaml +22 -0
- data/data/matrix-spec/event-schemas/examples/m.tag.yaml +9 -0
- data/data/matrix-spec/event-schemas/examples/m.typing.yaml +7 -0
- data/data/matrix-spec/event-schemas/moderation_policy_rule.yaml +32 -0
- data/data/matrix-spec/event-schemas/schema/components/m_text_content_block.yaml +28 -0
- data/data/matrix-spec/event-schemas/schema/components/sdp_stream_metadata.yaml +43 -0
- data/data/matrix-spec/event-schemas/schema/components/signed_third_party_invite.yaml +48 -0
- data/data/matrix-spec/event-schemas/schema/core-event-schema/call_event.yaml +27 -0
- data/data/matrix-spec/event-schemas/schema/core-event-schema/event.yaml +16 -0
- data/data/matrix-spec/event-schemas/schema/core-event-schema/msgtype_infos/avatar_info.yaml +30 -0
- data/data/matrix-spec/event-schemas/schema/core-event-schema/msgtype_infos/image_info.yaml +52 -0
- data/data/matrix-spec/event-schemas/schema/core-event-schema/msgtype_infos/thumbnail_info.yaml +22 -0
- data/data/matrix-spec/event-schemas/schema/core-event-schema/room_event.yaml +17 -0
- data/data/matrix-spec/event-schemas/schema/core-event-schema/state_event.yaml +8 -0
- data/data/matrix-spec/event-schemas/schema/core-event-schema/stripped_state.yaml +48 -0
- data/data/matrix-spec/event-schemas/schema/core-event-schema/sync_room_event.yaml +49 -0
- data/data/matrix-spec/event-schemas/schema/core-event-schema/sync_state_event.yaml +36 -0
- data/data/matrix-spec/event-schemas/schema/core-event-schema/unsigned_prop.yaml +23 -0
- data/data/matrix-spec/event-schemas/schema/m.accepted_terms.yaml +25 -0
- data/data/matrix-spec/event-schemas/schema/m.call.answer.yaml +44 -0
- data/data/matrix-spec/event-schemas/schema/m.call.candidates.yaml +52 -0
- data/data/matrix-spec/event-schemas/schema/m.call.hangup.yaml +57 -0
- data/data/matrix-spec/event-schemas/schema/m.call.invite.yaml +53 -0
- data/data/matrix-spec/event-schemas/schema/m.call.negotiate.yaml +78 -0
- data/data/matrix-spec/event-schemas/schema/m.call.reject.yaml +29 -0
- data/data/matrix-spec/event-schemas/schema/m.call.sdp_stream_metadata_changed.yaml +24 -0
- data/data/matrix-spec/event-schemas/schema/m.call.select_answer.yaml +29 -0
- data/data/matrix-spec/event-schemas/schema/m.direct.yaml +29 -0
- data/data/matrix-spec/event-schemas/schema/m.dummy.yaml +25 -0
- data/data/matrix-spec/event-schemas/schema/m.forwarded_room_key.yaml +70 -0
- data/data/matrix-spec/event-schemas/schema/m.fully_read.yaml +26 -0
- data/data/matrix-spec/event-schemas/schema/m.identity_server.yaml +28 -0
- data/data/matrix-spec/event-schemas/schema/m.ignored_user_list.yaml +30 -0
- data/data/matrix-spec/event-schemas/schema/m.invite_permission_config.yaml +21 -0
- data/data/matrix-spec/event-schemas/schema/m.key.verification.accept.yaml +63 -0
- data/data/matrix-spec/event-schemas/schema/m.key.verification.cancel.yaml +72 -0
- data/data/matrix-spec/event-schemas/schema/m.key.verification.done.yaml +24 -0
- data/data/matrix-spec/event-schemas/schema/m.key.verification.key.yaml +31 -0
- data/data/matrix-spec/event-schemas/schema/m.key.verification.m.relates_to.yaml +23 -0
- data/data/matrix-spec/event-schemas/schema/m.key.verification.mac.yaml +43 -0
- data/data/matrix-spec/event-schemas/schema/m.key.verification.ready.yaml +41 -0
- data/data/matrix-spec/event-schemas/schema/m.key.verification.request.yaml +47 -0
- data/data/matrix-spec/event-schemas/schema/m.key.verification.start$m.reciprocate.v1.yaml +45 -0
- data/data/matrix-spec/event-schemas/schema/m.key.verification.start$m.sas.v1.yaml +76 -0
- data/data/matrix-spec/event-schemas/schema/m.key.verification.start.yaml +46 -0
- data/data/matrix-spec/event-schemas/schema/m.key_backup.yaml +24 -0
- data/data/matrix-spec/event-schemas/schema/m.marked_unread.yaml +26 -0
- data/data/matrix-spec/event-schemas/schema/m.policy.rule.room.yaml +17 -0
- data/data/matrix-spec/event-schemas/schema/m.policy.rule.server.yaml +17 -0
- data/data/matrix-spec/event-schemas/schema/m.policy.rule.user.yaml +17 -0
- data/data/matrix-spec/event-schemas/schema/m.presence.yaml +50 -0
- data/data/matrix-spec/event-schemas/schema/m.push_rules.yaml +23 -0
- data/data/matrix-spec/event-schemas/schema/m.reaction.yaml +45 -0
- data/data/matrix-spec/event-schemas/schema/m.receipt.yaml +65 -0
- data/data/matrix-spec/event-schemas/schema/m.recent_emoji.yaml +29 -0
- data/data/matrix-spec/event-schemas/schema/m.room.avatar.yaml +29 -0
- data/data/matrix-spec/event-schemas/schema/m.room.canonical_alias.yaml +40 -0
- data/data/matrix-spec/event-schemas/schema/m.room.create.yaml +86 -0
- data/data/matrix-spec/event-schemas/schema/m.room.encrypted.yaml +91 -0
- data/data/matrix-spec/event-schemas/schema/m.room.encryption.yaml +38 -0
- data/data/matrix-spec/event-schemas/schema/m.room.guest_access.yaml +28 -0
- data/data/matrix-spec/event-schemas/schema/m.room.history_visibility.yaml +30 -0
- data/data/matrix-spec/event-schemas/schema/m.room.join_rules.yaml +78 -0
- data/data/matrix-spec/event-schemas/schema/m.room.member.yaml +174 -0
- data/data/matrix-spec/event-schemas/schema/m.room.message$m.audio.yaml +73 -0
- data/data/matrix-spec/event-schemas/schema/m.room.message$m.emote.yaml +36 -0
- data/data/matrix-spec/event-schemas/schema/m.room.message$m.file.yaml +85 -0
- data/data/matrix-spec/event-schemas/schema/m.room.message$m.image.yaml +63 -0
- data/data/matrix-spec/event-schemas/schema/m.room.message$m.key.verification.request.yaml +70 -0
- data/data/matrix-spec/event-schemas/schema/m.room.message$m.location.yaml +50 -0
- data/data/matrix-spec/event-schemas/schema/m.room.message$m.notice.yaml +36 -0
- data/data/matrix-spec/event-schemas/schema/m.room.message$m.server_notice.yaml +41 -0
- data/data/matrix-spec/event-schemas/schema/m.room.message$m.text.yaml +36 -0
- data/data/matrix-spec/event-schemas/schema/m.room.message$m.video.yaml +95 -0
- data/data/matrix-spec/event-schemas/schema/m.room.message.yaml +25 -0
- data/data/matrix-spec/event-schemas/schema/m.room.name.yaml +35 -0
- data/data/matrix-spec/event-schemas/schema/m.room.pinned_events.yaml +27 -0
- data/data/matrix-spec/event-schemas/schema/m.room.policy.yaml +41 -0
- data/data/matrix-spec/event-schemas/schema/m.room.power_levels.yaml +139 -0
- data/data/matrix-spec/event-schemas/schema/m.room.redaction.yaml +29 -0
- data/data/matrix-spec/event-schemas/schema/m.room.server_acl.yaml +88 -0
- data/data/matrix-spec/event-schemas/schema/m.room.third_party_invite.yaml +79 -0
- data/data/matrix-spec/event-schemas/schema/m.room.tombstone.yaml +29 -0
- data/data/matrix-spec/event-schemas/schema/m.room.topic.yaml +53 -0
- data/data/matrix-spec/event-schemas/schema/m.room_key.withheld.yaml +88 -0
- data/data/matrix-spec/event-schemas/schema/m.room_key.yaml +38 -0
- data/data/matrix-spec/event-schemas/schema/m.room_key_request.yaml +73 -0
- data/data/matrix-spec/event-schemas/schema/m.secret.request.yaml +42 -0
- data/data/matrix-spec/event-schemas/schema/m.secret.send.yaml +35 -0
- data/data/matrix-spec/event-schemas/schema/m.space.child.yaml +50 -0
- data/data/matrix-spec/event-schemas/schema/m.space.parent.yaml +36 -0
- data/data/matrix-spec/event-schemas/schema/m.sticker.yaml +36 -0
- data/data/matrix-spec/event-schemas/schema/m.tag.yaml +28 -0
- data/data/matrix-spec/event-schemas/schema/m.typing.yaml +29 -0
- data/lib/async/matrix/api/chain.rb +575 -0
- data/lib/async/matrix/api/concat.rb +105 -0
- data/lib/async/matrix/api/path_tree.rb +208 -0
- data/lib/async/matrix/api.rb +204 -0
- data/lib/async/matrix/application_service/bot.rb +235 -0
- data/lib/async/matrix/application_service/config/schema/analytics.json +21 -0
- data/lib/async/matrix/application_service/config/schema/appservice.json +82 -0
- data/lib/async/matrix/application_service/config/schema/backfill.json +91 -0
- data/lib/async/matrix/application_service/config/schema/bridge.json +209 -0
- data/lib/async/matrix/application_service/config/schema/config.json +61 -0
- data/lib/async/matrix/application_service/config/schema/database.json +38 -0
- data/lib/async/matrix/application_service/config/schema/direct_media.json +35 -0
- data/lib/async/matrix/application_service/config/schema/double_puppet.json +24 -0
- data/lib/async/matrix/application_service/config/schema/encryption.json +164 -0
- data/lib/async/matrix/application_service/config/schema/homeserver.json +58 -0
- data/lib/async/matrix/application_service/config/schema/logging.json +50 -0
- data/lib/async/matrix/application_service/config/schema/management_room_texts.json +25 -0
- data/lib/async/matrix/application_service/config/schema/matrix.json +45 -0
- data/lib/async/matrix/application_service/config/schema/permissions.json +54 -0
- data/lib/async/matrix/application_service/config/schema/provisioning.json +23 -0
- data/lib/async/matrix/application_service/config/schema/public_media.json +39 -0
- data/lib/async/matrix/application_service/config/schema/relay.json +43 -0
- data/lib/async/matrix/application_service/config/vivify.rb +110 -0
- data/lib/async/matrix/application_service/config.rb +214 -123
- data/lib/async/matrix/application_service/dispatcher.rb +115 -113
- data/lib/async/matrix/application_service/error_response.rb +26 -26
- data/lib/async/matrix/application_service/event.rb +217 -1
- data/lib/async/matrix/application_service/server.rb +286 -215
- data/lib/async/matrix/application_service/transaction.rb +52 -52
- data/lib/async/matrix/application_service/transaction_store.rb +62 -62
- data/lib/async/matrix/client.rb +919 -179
- data/lib/async/matrix/connection.rb +8 -8
- data/lib/async/matrix/endpoint.rb +45 -45
- data/lib/async/matrix/error.rb +49 -43
- data/lib/async/matrix/media_client.rb +173 -0
- data/lib/async/matrix/notifier.rb +92 -92
- data/lib/async/matrix/schema/registry.rb +355 -0
- data/lib/async/matrix/schema/validation_error.rb +226 -0
- data/lib/async/matrix/schema.rb +174 -0
- data/lib/async/matrix/server.rb +7 -7
- data/lib/async/matrix/stream.rb +7 -7
- data/lib/async/matrix/version.rb +1 -1
- data/lib/async/matrix.rb +2 -2
- metadata +353 -1
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
# Copyright 2016 OpenMarket Ltd
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
openapi: 3.1.0
|
|
15
|
+
info:
|
|
16
|
+
title: Matrix Client-Server Event Context API
|
|
17
|
+
version: 1.0.0
|
|
18
|
+
paths:
|
|
19
|
+
"/rooms/{roomId}/context/{eventId}":
|
|
20
|
+
get:
|
|
21
|
+
summary: Get events and state around the specified event.
|
|
22
|
+
description: |-
|
|
23
|
+
This API returns a number of events that happened just before and
|
|
24
|
+
after the specified event. This allows clients to get the context
|
|
25
|
+
surrounding an event.
|
|
26
|
+
|
|
27
|
+
*Note*: This endpoint supports lazy-loading of room member events. See
|
|
28
|
+
[Lazy-loading room members](/client-server-api/#lazy-loading-room-members) for more information.
|
|
29
|
+
operationId: getEventContext
|
|
30
|
+
security:
|
|
31
|
+
- accessTokenQuery: []
|
|
32
|
+
- accessTokenBearer: []
|
|
33
|
+
parameters:
|
|
34
|
+
- in: path
|
|
35
|
+
name: roomId
|
|
36
|
+
description: The room to get events from.
|
|
37
|
+
required: true
|
|
38
|
+
example: "!636q39766251:example.com"
|
|
39
|
+
schema:
|
|
40
|
+
type: string
|
|
41
|
+
- in: path
|
|
42
|
+
name: eventId
|
|
43
|
+
description: The event to get context around.
|
|
44
|
+
required: true
|
|
45
|
+
example: $f3h4d129462ha:example.com
|
|
46
|
+
schema:
|
|
47
|
+
type: string
|
|
48
|
+
- in: query
|
|
49
|
+
name: limit
|
|
50
|
+
description: |-
|
|
51
|
+
The maximum number of context events to return. The limit applies
|
|
52
|
+
to the sum of the `events_before` and `events_after` arrays. The
|
|
53
|
+
requested event ID is always returned in `event` even if `limit` is
|
|
54
|
+
0. Defaults to 10.
|
|
55
|
+
example: 3
|
|
56
|
+
schema:
|
|
57
|
+
type: integer
|
|
58
|
+
- in: query
|
|
59
|
+
name: filter
|
|
60
|
+
description: |-
|
|
61
|
+
A JSON `RoomEventFilter` to filter the returned events with. The
|
|
62
|
+
filter is only applied to `events_before`, `events_after`, and
|
|
63
|
+
`state`. It is not applied to the `event` itself. The filter may
|
|
64
|
+
be applied before or/and after the `limit` parameter - whichever the
|
|
65
|
+
homeserver prefers.
|
|
66
|
+
|
|
67
|
+
See [Filtering](/client-server-api/#filtering) for more information.
|
|
68
|
+
example: 66696p746572
|
|
69
|
+
schema:
|
|
70
|
+
type: string
|
|
71
|
+
responses:
|
|
72
|
+
"200":
|
|
73
|
+
description: The events and state surrounding the requested event.
|
|
74
|
+
content:
|
|
75
|
+
application/json:
|
|
76
|
+
schema:
|
|
77
|
+
type: object
|
|
78
|
+
description: The events and state surrounding the requested event.
|
|
79
|
+
properties:
|
|
80
|
+
start:
|
|
81
|
+
type: string
|
|
82
|
+
description: A token that can be used to paginate backwards with.
|
|
83
|
+
end:
|
|
84
|
+
type: string
|
|
85
|
+
description: A token that can be used to paginate forwards with.
|
|
86
|
+
events_before:
|
|
87
|
+
type: array
|
|
88
|
+
description: |-
|
|
89
|
+
A list of room events that happened just before the
|
|
90
|
+
requested event, in reverse-chronological order.
|
|
91
|
+
items:
|
|
92
|
+
$ref: definitions/client_event.yaml
|
|
93
|
+
event:
|
|
94
|
+
description: Details of the requested event.
|
|
95
|
+
allOf:
|
|
96
|
+
- $ref: definitions/client_event.yaml
|
|
97
|
+
events_after:
|
|
98
|
+
type: array
|
|
99
|
+
description: |-
|
|
100
|
+
A list of room events that happened just after the
|
|
101
|
+
requested event, in chronological order.
|
|
102
|
+
items:
|
|
103
|
+
$ref: definitions/client_event.yaml
|
|
104
|
+
state:
|
|
105
|
+
type: array
|
|
106
|
+
description: The state of the room at the last event returned.
|
|
107
|
+
items:
|
|
108
|
+
$ref: definitions/client_event.yaml
|
|
109
|
+
examples:
|
|
110
|
+
response:
|
|
111
|
+
value: {
|
|
112
|
+
"end": "t29-57_2_0_2",
|
|
113
|
+
"events_after": [
|
|
114
|
+
{
|
|
115
|
+
"room_id": "!636q39766251:example.com",
|
|
116
|
+
"$ref": "../../event-schemas/examples/m.room.message$m.text.yaml"
|
|
117
|
+
}
|
|
118
|
+
],
|
|
119
|
+
"event": {
|
|
120
|
+
"event_id": "$f3h4d129462ha:example.com",
|
|
121
|
+
"room_id": "!636q39766251:example.com",
|
|
122
|
+
"$ref": "../../event-schemas/examples/m.room.message$m.image.yaml"
|
|
123
|
+
},
|
|
124
|
+
"events_before": [
|
|
125
|
+
{
|
|
126
|
+
"room_id": "!636q39766251:example.com",
|
|
127
|
+
"$ref": "../../event-schemas/examples/m.room.message$m.file.yaml"
|
|
128
|
+
}
|
|
129
|
+
],
|
|
130
|
+
"start": "t27-54_2_0_2",
|
|
131
|
+
"state": [
|
|
132
|
+
{
|
|
133
|
+
"room_id": "!636q39766251:example.com",
|
|
134
|
+
"$ref": "../../event-schemas/examples/m.room.create.yaml"
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"room_id": "!636q39766251:example.com",
|
|
138
|
+
"$ref": "../../event-schemas/examples/m.room.member.yaml"
|
|
139
|
+
}
|
|
140
|
+
]
|
|
141
|
+
}
|
|
142
|
+
tags:
|
|
143
|
+
- Room participation
|
|
144
|
+
servers:
|
|
145
|
+
- url: "{protocol}://{hostname}{basePath}"
|
|
146
|
+
variables:
|
|
147
|
+
protocol:
|
|
148
|
+
enum:
|
|
149
|
+
- http
|
|
150
|
+
- https
|
|
151
|
+
default: https
|
|
152
|
+
hostname:
|
|
153
|
+
default: localhost:8008
|
|
154
|
+
basePath:
|
|
155
|
+
default: /_matrix/client/v3
|
|
156
|
+
components:
|
|
157
|
+
securitySchemes:
|
|
158
|
+
accessTokenQuery:
|
|
159
|
+
$ref: definitions/security.yaml#/accessTokenQuery
|
|
160
|
+
accessTokenBearer:
|
|
161
|
+
$ref: definitions/security.yaml#/accessTokenBearer
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
# Copyright 2016 OpenMarket Ltd
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
openapi: 3.1.0
|
|
15
|
+
info:
|
|
16
|
+
title: Matrix Client-Server filter API
|
|
17
|
+
version: 1.0.0
|
|
18
|
+
paths:
|
|
19
|
+
"/user/{userId}/filter":
|
|
20
|
+
post:
|
|
21
|
+
summary: Upload a new filter.
|
|
22
|
+
description: |-
|
|
23
|
+
Uploads a new filter definition to the homeserver.
|
|
24
|
+
Returns a filter ID that may be used in future requests to
|
|
25
|
+
restrict which events are returned to the client.
|
|
26
|
+
operationId: defineFilter
|
|
27
|
+
security:
|
|
28
|
+
- accessTokenQuery: []
|
|
29
|
+
- accessTokenBearer: []
|
|
30
|
+
parameters:
|
|
31
|
+
- in: path
|
|
32
|
+
name: userId
|
|
33
|
+
required: true
|
|
34
|
+
description: The id of the user uploading the filter. The access token must be
|
|
35
|
+
authorized to make requests for this user id.
|
|
36
|
+
example: "@alice:example.com"
|
|
37
|
+
schema:
|
|
38
|
+
type: string
|
|
39
|
+
format: mx-user-id
|
|
40
|
+
pattern: "^@"
|
|
41
|
+
requestBody:
|
|
42
|
+
content:
|
|
43
|
+
application/json:
|
|
44
|
+
schema:
|
|
45
|
+
type: object
|
|
46
|
+
allOf:
|
|
47
|
+
- $ref: definitions/sync_filter.yaml
|
|
48
|
+
example: {
|
|
49
|
+
"room": {
|
|
50
|
+
"state": {
|
|
51
|
+
"types": [
|
|
52
|
+
"m.room.*"
|
|
53
|
+
],
|
|
54
|
+
"not_rooms": [
|
|
55
|
+
"!726s6s6q:example.com"
|
|
56
|
+
]
|
|
57
|
+
},
|
|
58
|
+
"timeline": {
|
|
59
|
+
"limit": 10,
|
|
60
|
+
"types": [
|
|
61
|
+
"m.room.message"
|
|
62
|
+
],
|
|
63
|
+
"not_rooms": [
|
|
64
|
+
"!726s6s6q:example.com"
|
|
65
|
+
],
|
|
66
|
+
"not_senders": [
|
|
67
|
+
"@spam:example.com"
|
|
68
|
+
]
|
|
69
|
+
},
|
|
70
|
+
"ephemeral": {
|
|
71
|
+
"types": [
|
|
72
|
+
"m.receipt",
|
|
73
|
+
"m.typing"
|
|
74
|
+
],
|
|
75
|
+
"not_rooms": [
|
|
76
|
+
"!726s6s6q:example.com"
|
|
77
|
+
],
|
|
78
|
+
"not_senders": [
|
|
79
|
+
"@spam:example.com"
|
|
80
|
+
]
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
"presence": {
|
|
84
|
+
"types": [
|
|
85
|
+
"m.presence"
|
|
86
|
+
],
|
|
87
|
+
"not_senders": [
|
|
88
|
+
"@alice:example.com"
|
|
89
|
+
]
|
|
90
|
+
},
|
|
91
|
+
"event_format": "client",
|
|
92
|
+
"event_fields": [
|
|
93
|
+
"type",
|
|
94
|
+
"content",
|
|
95
|
+
"sender"
|
|
96
|
+
]
|
|
97
|
+
}
|
|
98
|
+
description: The filter to upload.
|
|
99
|
+
required: true
|
|
100
|
+
responses:
|
|
101
|
+
"200":
|
|
102
|
+
description: The filter was created.
|
|
103
|
+
content:
|
|
104
|
+
application/json:
|
|
105
|
+
schema:
|
|
106
|
+
type: object
|
|
107
|
+
properties:
|
|
108
|
+
filter_id:
|
|
109
|
+
type: string
|
|
110
|
+
description: |-
|
|
111
|
+
The ID of the filter that was created. Cannot start
|
|
112
|
+
with a `{` as this character is used to determine
|
|
113
|
+
if the filter provided is inline JSON or a previously
|
|
114
|
+
declared filter by homeservers on some APIs.
|
|
115
|
+
example: 66696p746572
|
|
116
|
+
required:
|
|
117
|
+
- filter_id
|
|
118
|
+
tags:
|
|
119
|
+
- Room participation
|
|
120
|
+
"/user/{userId}/filter/{filterId}":
|
|
121
|
+
get:
|
|
122
|
+
summary: Download a filter
|
|
123
|
+
operationId: getFilter
|
|
124
|
+
security:
|
|
125
|
+
- accessTokenQuery: []
|
|
126
|
+
- accessTokenBearer: []
|
|
127
|
+
parameters:
|
|
128
|
+
- in: path
|
|
129
|
+
name: userId
|
|
130
|
+
description: The user ID to download a filter for.
|
|
131
|
+
required: true
|
|
132
|
+
example: "@alice:example.com"
|
|
133
|
+
schema:
|
|
134
|
+
type: string
|
|
135
|
+
format: mx-user-id
|
|
136
|
+
pattern: "^@"
|
|
137
|
+
- in: path
|
|
138
|
+
name: filterId
|
|
139
|
+
description: The filter ID to download.
|
|
140
|
+
required: true
|
|
141
|
+
example: 66696p746572
|
|
142
|
+
schema:
|
|
143
|
+
type: string
|
|
144
|
+
responses:
|
|
145
|
+
"200":
|
|
146
|
+
description: The filter definition.
|
|
147
|
+
content:
|
|
148
|
+
application/json:
|
|
149
|
+
schema:
|
|
150
|
+
$ref: definitions/sync_filter.yaml
|
|
151
|
+
examples:
|
|
152
|
+
response:
|
|
153
|
+
value: {
|
|
154
|
+
"room": {
|
|
155
|
+
"state": {
|
|
156
|
+
"types": [
|
|
157
|
+
"m.room.*"
|
|
158
|
+
],
|
|
159
|
+
"not_rooms": [
|
|
160
|
+
"!726s6s6q:example.com"
|
|
161
|
+
]
|
|
162
|
+
},
|
|
163
|
+
"timeline": {
|
|
164
|
+
"limit": 10,
|
|
165
|
+
"types": [
|
|
166
|
+
"m.room.message"
|
|
167
|
+
],
|
|
168
|
+
"not_rooms": [
|
|
169
|
+
"!726s6s6q:example.com"
|
|
170
|
+
],
|
|
171
|
+
"not_senders": [
|
|
172
|
+
"@spam:example.com"
|
|
173
|
+
]
|
|
174
|
+
},
|
|
175
|
+
"ephemeral": {
|
|
176
|
+
"types": [
|
|
177
|
+
"m.receipt",
|
|
178
|
+
"m.typing"
|
|
179
|
+
],
|
|
180
|
+
"not_rooms": [
|
|
181
|
+
"!726s6s6q:example.com"
|
|
182
|
+
],
|
|
183
|
+
"not_senders": [
|
|
184
|
+
"@spam:example.com"
|
|
185
|
+
]
|
|
186
|
+
}
|
|
187
|
+
},
|
|
188
|
+
"presence": {
|
|
189
|
+
"types": [
|
|
190
|
+
"m.presence"
|
|
191
|
+
],
|
|
192
|
+
"not_senders": [
|
|
193
|
+
"@alice:example.com"
|
|
194
|
+
]
|
|
195
|
+
},
|
|
196
|
+
"event_format": "client",
|
|
197
|
+
"event_fields": [
|
|
198
|
+
"type",
|
|
199
|
+
"content",
|
|
200
|
+
"sender"
|
|
201
|
+
]
|
|
202
|
+
}
|
|
203
|
+
"404":
|
|
204
|
+
description: Unknown filter.
|
|
205
|
+
tags:
|
|
206
|
+
- Room participation
|
|
207
|
+
servers:
|
|
208
|
+
- url: "{protocol}://{hostname}{basePath}"
|
|
209
|
+
variables:
|
|
210
|
+
protocol:
|
|
211
|
+
enum:
|
|
212
|
+
- http
|
|
213
|
+
- https
|
|
214
|
+
default: https
|
|
215
|
+
hostname:
|
|
216
|
+
default: localhost:8008
|
|
217
|
+
basePath:
|
|
218
|
+
default: /_matrix/client/v3
|
|
219
|
+
components:
|
|
220
|
+
securitySchemes:
|
|
221
|
+
accessTokenQuery:
|
|
222
|
+
$ref: definitions/security.yaml#/accessTokenQuery
|
|
223
|
+
accessTokenBearer:
|
|
224
|
+
$ref: definitions/security.yaml#/accessTokenBearer
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
# Copyright 2016 OpenMarket Ltd
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
openapi: 3.1.0
|
|
15
|
+
info:
|
|
16
|
+
title: Matrix Client-Server Room Joining API
|
|
17
|
+
version: 1.0.0
|
|
18
|
+
paths:
|
|
19
|
+
# With an extra " " to disambiguate from the 3pid invite endpoint
|
|
20
|
+
# The extra space makes it sort first for what I'm sure is a good reason.
|
|
21
|
+
"/rooms/{roomId}/invite ":
|
|
22
|
+
post:
|
|
23
|
+
summary: Invite a user to participate in a particular room.
|
|
24
|
+
description: |-
|
|
25
|
+
*Note that there are two forms of this API, which are documented separately.
|
|
26
|
+
This version of the API requires that the inviter knows the Matrix
|
|
27
|
+
identifier of the invitee. The other is documented in the
|
|
28
|
+
[third-party invites](/client-server-api/#third-party-invites) section.*
|
|
29
|
+
|
|
30
|
+
This API invites a user to participate in a particular room.
|
|
31
|
+
They do not start participating in the room until they actually join the
|
|
32
|
+
room.
|
|
33
|
+
|
|
34
|
+
Only users currently in a particular room can invite other users to
|
|
35
|
+
join that room.
|
|
36
|
+
|
|
37
|
+
If the user was invited to the room, the homeserver will append a
|
|
38
|
+
`m.room.member` event to the room.
|
|
39
|
+
operationId: inviteUser
|
|
40
|
+
security:
|
|
41
|
+
- accessTokenQuery: []
|
|
42
|
+
- accessTokenBearer: []
|
|
43
|
+
parameters:
|
|
44
|
+
- in: path
|
|
45
|
+
name: roomId
|
|
46
|
+
description: The room identifier (not alias) to which to invite the user.
|
|
47
|
+
required: true
|
|
48
|
+
example: "!d41d8cd:matrix.org"
|
|
49
|
+
schema:
|
|
50
|
+
type: string
|
|
51
|
+
requestBody:
|
|
52
|
+
content:
|
|
53
|
+
application/json:
|
|
54
|
+
schema:
|
|
55
|
+
type: object
|
|
56
|
+
example: {
|
|
57
|
+
"user_id": "@cheeky_monkey:matrix.org",
|
|
58
|
+
"reason": "Welcome to the team!"
|
|
59
|
+
}
|
|
60
|
+
properties:
|
|
61
|
+
user_id:
|
|
62
|
+
type: string
|
|
63
|
+
description: The fully qualified user ID of the invitee.
|
|
64
|
+
reason:
|
|
65
|
+
x-addedInMatrixVersion: "1.1"
|
|
66
|
+
type: string
|
|
67
|
+
description: |-
|
|
68
|
+
Optional reason to be included as the `reason` on the subsequent
|
|
69
|
+
membership event.
|
|
70
|
+
required:
|
|
71
|
+
- user_id
|
|
72
|
+
required: true
|
|
73
|
+
responses:
|
|
74
|
+
"200":
|
|
75
|
+
description: The user has been invited to join the room, or was already invited
|
|
76
|
+
to the room.
|
|
77
|
+
content:
|
|
78
|
+
application/json:
|
|
79
|
+
schema:
|
|
80
|
+
type: object
|
|
81
|
+
examples:
|
|
82
|
+
response:
|
|
83
|
+
value: {}
|
|
84
|
+
"400":
|
|
85
|
+
description: |-
|
|
86
|
+
|
|
87
|
+
The request is invalid. A meaningful `errcode` and description
|
|
88
|
+
error text will be returned. Example reasons for rejection include:
|
|
89
|
+
|
|
90
|
+
- The request body is malformed (`errcode` set to `M_BAD_JSON`
|
|
91
|
+
or `M_NOT_JSON`).
|
|
92
|
+
|
|
93
|
+
- One or more users being invited to the room are residents of a
|
|
94
|
+
homeserver which does not support the requested room version. The
|
|
95
|
+
`errcode` will be `M_UNSUPPORTED_ROOM_VERSION` in these cases.
|
|
96
|
+
content:
|
|
97
|
+
application/json:
|
|
98
|
+
schema:
|
|
99
|
+
$ref: definitions/errors/error.yaml
|
|
100
|
+
"403":
|
|
101
|
+
description: |-
|
|
102
|
+
You do not have permission to invite the user to the room. A
|
|
103
|
+
meaningful `errcode` and description error text will be returned.
|
|
104
|
+
Example reasons for rejections are:
|
|
105
|
+
|
|
106
|
+
- The invitee has been banned from the room.
|
|
107
|
+
- The invitee is already a member of the room.
|
|
108
|
+
- The inviter is not currently in the room.
|
|
109
|
+
- The inviter's power level is insufficient to invite users to the room.
|
|
110
|
+
|
|
111
|
+
{{% added-in v="1.18"%}} The `M_INVITE_BLOCKED` error code is used to
|
|
112
|
+
indicate that the homeserver rejected the invite due to
|
|
113
|
+
[invite blocking](/client-server-api/#invite-permission).
|
|
114
|
+
content:
|
|
115
|
+
application/json:
|
|
116
|
+
schema:
|
|
117
|
+
$ref: definitions/errors/error.yaml
|
|
118
|
+
examples:
|
|
119
|
+
response:
|
|
120
|
+
value: {
|
|
121
|
+
"errcode": "M_FORBIDDEN",
|
|
122
|
+
"error": "@cheeky_monkey:matrix.org is banned from the room"
|
|
123
|
+
}
|
|
124
|
+
"429":
|
|
125
|
+
description: This request was rate-limited.
|
|
126
|
+
content:
|
|
127
|
+
application/json:
|
|
128
|
+
schema:
|
|
129
|
+
$ref: definitions/errors/rate_limited.yaml
|
|
130
|
+
tags:
|
|
131
|
+
- Room membership
|
|
132
|
+
servers:
|
|
133
|
+
- url: "{protocol}://{hostname}{basePath}"
|
|
134
|
+
variables:
|
|
135
|
+
protocol:
|
|
136
|
+
enum:
|
|
137
|
+
- http
|
|
138
|
+
- https
|
|
139
|
+
default: https
|
|
140
|
+
hostname:
|
|
141
|
+
default: localhost:8008
|
|
142
|
+
basePath:
|
|
143
|
+
default: /_matrix/client/v3
|
|
144
|
+
components:
|
|
145
|
+
securitySchemes:
|
|
146
|
+
accessTokenQuery:
|
|
147
|
+
$ref: definitions/security.yaml#/accessTokenQuery
|
|
148
|
+
accessTokenBearer:
|
|
149
|
+
$ref: definitions/security.yaml#/accessTokenBearer
|