diff --git a/docs/client-server/swagger_matrix/api-docs-login b/docs/client-server/swagger_matrix/api-docs-login
new file mode 100644
index 0000000000..8cc598b3c1
--- /dev/null
+++ b/docs/client-server/swagger_matrix/api-docs-login
@@ -0,0 +1,102 @@
+{
+ "apiVersion": "1.0.0",
+ "apis": [
+ {
+ "operations": [
+ {
+ "method": "GET",
+ "nickname": "get_login_info",
+ "notes": "All login stages MUST be mentioned if there is >1 login type.",
+ "summary": "Get the login mechanism to use when logging in.",
+ "type": "LoginInfo"
+ },
+ {
+ "method": "POST",
+ "nickname": "submit_login",
+ "notes": "If this is part of a multi-stage login, there MUST be a 'session' key.",
+ "parameters": [
+ {
+ "description": "A login submission",
+ "name": "body",
+ "paramType": "body",
+ "required": true,
+ "type": "LoginSubmission"
+ }
+ ],
+ "responseMessages": [
+ {
+ "code": 400,
+ "message": "Bad login type"
+ },
+ {
+ "code": 400,
+ "message": "Missing JSON keys"
+ }
+ ],
+ "summary": "Submit a login action.",
+ "type": "LoginResult"
+ }
+ ],
+ "path": "/login"
+ }
+ ],
+ "basePath": "http://localhost:8080/_matrix/client/api/v1",
+ "consumes": [
+ "application/json"
+ ],
+ "models": {
+ "LoginInfo": {
+ "id": "LoginInfo",
+ "properties": {
+ "stages": {
+ "description": "Multi-stage login only: An array of all the login types required to login.",
+ "format": "string",
+ "type": "array"
+ },
+ "type": {
+ "description": "The login type that must be used when logging in.",
+ "type": "string"
+ }
+ }
+ },
+ "LoginResult": {
+ "id": "LoginResult",
+ "properties": {
+ "access_token": {
+ "description": "The access token for this user's login if this is the final stage of the login process.",
+ "type": "string"
+ },
+ "next": {
+ "description": "Multi-stage login only: The next login type to submit.",
+ "type": "string"
+ },
+ "session": {
+ "description": "Multi-stage login only: The session token to send when submitting the next login type.",
+ "type": "string"
+ }
+ }
+ },
+ "LoginSubmission": {
+ "id": "LoginSubmission",
+ "properties": {
+ "type": {
+ "description": "The type of login being submitted.",
+ "type": "string"
+ },
+ "session": {
+ "description": "Multi-stage login only: The session token from an earlier login stage.",
+ "type": "string"
+ },
+ "_login_type_defined_keys_": {
+ "description": "Keys as defined by the specified login type, e.g. \"user\", \"password\""
+ }
+ }
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "resourcePath": "/login",
+ "swaggerVersion": "1.2"
+}
+
|