{ "swagger": "2.0", "info": { "version": "2015-12-11T09:08:47Z", "title": "mail-list.com test API" }, "host": "qv6d1x3yh9.execute-api.us-east-1.amazonaws.com", "basePath": "/test", "schemes": [ "https" ], "paths": { "/accounts/{email_address}": { "put": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "email_address", "in": "path", "required": true, "type": "string" }, { "in": "body", "name": "CreateAccountRequest", "required": true, "schema": { "$ref": "#/definitions/CreateAccountRequest" } } ], "responses": { "201": { "description": "201 response", "schema": { "$ref": "#/definitions/CreateAccountResponse" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "400": { "description": "400 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "409": { "description": "409 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "500": { "description": "500 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } } }, "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "201", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "passthrough" } }, "Internal.": { "statusCode": "500", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Conflict.": { "statusCode": "409", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Invalid.": { "statusCode": "400", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } } }, "requestTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"email_address\" : \"$input.params().path.email_address\",\n \"password\" : \"$inputRoot.password\"\n}" }, "uri": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:136424311573:function:create_account/invocations", "httpMethod": "POST", "type": "aws" } }, "options": { "produces": [ "application/json" ], "parameters": [], "responses": { "200": { "description": "200 response", "schema": { "$ref": "#/definitions/Empty" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" }, "Access-Control-Allow-Methods": { "type": "string" }, "Access-Control-Allow-Headers": { "type": "string" } } } }, "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "200", "responseParameters": { "method.response.header.Access-Control-Allow-Methods": "'PUT,PATCH,OPTIONS'", "method.response.header.Access-Control-Allow-Headers": "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'", "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "{}" } } }, "requestTemplates": { "application/json": "{\"statusCode\": 200}" }, "type": "mock" } }, "patch": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "email_address", "in": "path", "required": true, "type": "string" }, { "in": "body", "name": "UpdateAccountRequest", "required": true, "schema": { "$ref": "#/definitions/UpdateAccountRequest" } } ], "responses": { "200": { "description": "200 response", "schema": { "$ref": "#/definitions/UpdateAccountResponse" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "400": { "description": "400 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "404": { "description": "404 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "409": { "description": "409 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "500": { "description": "500 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } } }, "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "200", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "passthrough" } }, "No such.": { "statusCode": "404", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Internal.": { "statusCode": "500", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Conflict.": { "statusCode": "409", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Invalid.": { "statusCode": "400", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } } }, "requestTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"email_address\" : \"$input.params().path.email_address\",\n \"token\" : \"$inputRoot.token\"\n}" }, "uri": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:136424311573:function:update_account/invocations", "httpMethod": "POST", "type": "aws" } } }, "/lists/{list_name}": { "get": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "list_name", "in": "path", "required": true, "type": "string" }, { "in": "body", "name": "GetListRequest", "required": true, "schema": { "$ref": "#/definitions/GetListRequest" } } ], "responses": { "200": { "description": "200 response", "schema": { "$ref": "#/definitions/GetListResponse" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "400": { "description": "400 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "404": { "description": "404 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "500": { "description": "500 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } } }, "security": [ { "api_key": [] } ], "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "200", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "passthrough" } }, "No such.": { "statusCode": "404", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Internal.": { "statusCode": "500", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Invalid.": { "statusCode": "400", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } } }, "requestTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"list_name\" : \"$input.params().path.list_name\"\n}" }, "uri": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:136424311573:function:get_list/invocations", "httpMethod": "POST", "type": "aws" } }, "head": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "list_name", "in": "path", "required": true, "type": "string" }, { "in": "body", "name": "GetListRequest", "required": true, "schema": { "$ref": "#/definitions/GetListRequest" } } ], "responses": { "200": { "description": "200 response", "schema": { "$ref": "#/definitions/Empty" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "400": { "description": "400 response", "schema": { "$ref": "#/definitions/Empty" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "404": { "description": "404 response", "schema": { "$ref": "#/definitions/Empty" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "500": { "description": "500 response", "schema": { "$ref": "#/definitions/Empty" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } } }, "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "200", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{ }" } }, "No such.": { "statusCode": "404", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{ }" } }, "Internal.": { "statusCode": "500", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{ }" } }, "Invalid.": { "statusCode": "400", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{ }" } } }, "requestTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"list_name\" : \"$input.params().path.list_name\"\n}" }, "uri": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:136424311573:function:get_list/invocations", "httpMethod": "POST", "type": "aws" } }, "put": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "list_name", "in": "path", "required": true, "type": "string" }, { "in": "body", "name": "CreateListRequest", "required": true, "schema": { "$ref": "#/definitions/CreateListRequest" } } ], "responses": { "201": { "description": "201 response", "schema": { "$ref": "#/definitions/CreateListResponse" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "400": { "description": "400 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "409": { "description": "409 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "500": { "description": "500 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } } }, "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "201", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "passthrough" } }, "Internal.": { "statusCode": "500", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Conflict.": { "statusCode": "409", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Invalid.": { "statusCode": "400", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } } }, "requestTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"list_name\" : \"$input.params().path.list_name\",\n \"email_address\" : \"$inputRoot.email_address\",\n \"password\" : \"$inputRoot.password\"\n}" }, "uri": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:136424311573:function:create_list/invocations", "httpMethod": "POST", "type": "aws" } }, "options": { "produces": [ "application/json" ], "parameters": [], "responses": { "200": { "description": "200 response", "schema": { "$ref": "#/definitions/Empty" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" }, "Access-Control-Allow-Methods": { "type": "string" }, "Access-Control-Allow-Headers": { "type": "string" } } } }, "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "200", "responseParameters": { "method.response.header.Access-Control-Allow-Methods": "'HEAD,GET,OPTIONS,PUT'", "method.response.header.Access-Control-Allow-Headers": "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'", "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "{}" } } }, "requestTemplates": { "application/json": "{\"statusCode\": 200}" }, "type": "mock" } } }, "/lists/{list_name}/members": { "get": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "list_name", "in": "path", "required": true, "type": "string" }, { "name": "include_admin", "in": "query", "required": false, "type": "string" }, { "in": "body", "name": "GetMembersRequest", "required": true, "schema": { "$ref": "#/definitions/GetMembersRequest" } } ], "responses": { "200": { "description": "200 response", "schema": { "$ref": "#/definitions/GetMembersResponse" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "400": { "description": "400 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "404": { "description": "404 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "500": { "description": "500 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } } }, "security": [ { "api_key": [] } ], "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "200", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "passthrough" } }, "No such.": { "statusCode": "404", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Internal.": { "statusCode": "500", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Invalid.": { "statusCode": "400", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } } }, "requestTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"list_name\" : \"$input.params().path.list_name\",\n \"include_admin\" : \"$input.params().querystring.include_admin\"\n}" }, "uri": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:136424311573:function:get_members/invocations", "httpMethod": "POST", "type": "aws" } }, "options": { "produces": [ "application/json" ], "parameters": [], "responses": { "200": { "description": "200 response", "schema": { "$ref": "#/definitions/Empty" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" }, "Access-Control-Allow-Methods": { "type": "string" }, "Access-Control-Allow-Headers": { "type": "string" } } } }, "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "200", "responseParameters": { "method.response.header.Access-Control-Allow-Methods": "'GET,OPTIONS'", "method.response.header.Access-Control-Allow-Headers": "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'", "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "{}" } } }, "requestTemplates": { "application/json": "{\"statusCode\": 200}" }, "type": "mock" } } }, "/lists/{list_name}/members/{email_address}": { "put": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "email_address", "in": "path", "required": true, "type": "string" }, { "name": "list_name", "in": "path", "required": true, "type": "string" }, { "in": "body", "name": "Empty", "required": true, "schema": { "$ref": "#/definitions/Empty" } } ], "responses": { "201": { "description": "201 response", "schema": { "$ref": "#/definitions/CreateMemberResponse" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "400": { "description": "400 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "404": { "description": "404 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "409": { "description": "409 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "500": { "description": "500 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } } }, "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "201", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "passthrough" } }, "No such.": { "statusCode": "404", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Internal.": { "statusCode": "500", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Conflict.": { "statusCode": "409", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Invalid.": { "statusCode": "400", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } } }, "requestTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"list_name\" : \"$input.params().path.list_name\",\n \"email_address\" : \"$input.params().path.email_address\"\n}" }, "uri": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:136424311573:function:create_member/invocations", "httpMethod": "POST", "type": "aws" } }, "delete": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "email_address", "in": "path", "required": true, "type": "string" }, { "name": "list_name", "in": "path", "required": true, "type": "string" }, { "in": "body", "name": "DeleteMemberRequest", "required": true, "schema": { "$ref": "#/definitions/DeleteMemberRequest" } } ], "responses": { "204": { "description": "204 response", "schema": { "$ref": "#/definitions/DeleteMemberResponse" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "400": { "description": "400 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "404": { "description": "404 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "409": { "description": "409 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "500": { "description": "500 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } } }, "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "204", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "passthrough" } }, "No such.": { "statusCode": "404", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Internal.": { "statusCode": "500", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Conflict.": { "statusCode": "409", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Invalid.": { "statusCode": "400", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } } }, "requestTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"list_name\" : \"$input.params().path.list_name\",\n \"email_address\" : \"$input.params().path.email_address\"\n}" }, "uri": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:136424311573:function:delete_member/invocations", "httpMethod": "POST", "type": "aws" } }, "options": { "produces": [ "application/json" ], "parameters": [], "responses": { "200": { "description": "200 response", "schema": { "$ref": "#/definitions/Empty" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" }, "Access-Control-Allow-Methods": { "type": "string" }, "Access-Control-Allow-Headers": { "type": "string" } } } }, "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "200", "responseParameters": { "method.response.header.Access-Control-Allow-Methods": "'DELETE,PUT,PATCH,OPTIONS'", "method.response.header.Access-Control-Allow-Headers": "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'", "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "{}" } } }, "requestTemplates": { "application/json": "{\"statusCode\": 200}" }, "type": "mock" } }, "patch": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "email_address", "in": "path", "required": true, "type": "string" }, { "name": "list_name", "in": "path", "required": true, "type": "string" }, { "in": "body", "name": "UpdateMemberRequest", "required": true, "schema": { "$ref": "#/definitions/UpdateMemberRequest" } } ], "responses": { "200": { "description": "200 response", "schema": { "$ref": "#/definitions/UpdateMemberResponse" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "400": { "description": "400 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "404": { "description": "404 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "409": { "description": "409 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "500": { "description": "500 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } } }, "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "200", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "passthrough" } }, "No such.": { "statusCode": "404", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Internal.": { "statusCode": "500", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Conflict.": { "statusCode": "409", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Invalid.": { "statusCode": "400", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } } }, "requestTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"list_name\" : \"$input.params().path.list_name\",\n \"email_address\" : \"$input.params().path.email_address\",\n \"token\" : \"$inputRoot.token\"\n}" }, "uri": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:136424311573:function:update_member/invocations", "httpMethod": "POST", "type": "aws" } } }, "/lists/{list_name}/messages": { "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "list_name", "in": "path", "required": true, "type": "string" }, { "in": "body", "name": "CreateMessageRequest", "required": true, "schema": { "$ref": "#/definitions/CreateMessageRequest" } } ], "responses": { "201": { "description": "201 response", "schema": { "$ref": "#/definitions/CreateMessageResponse" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "400": { "description": "400 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "403": { "description": "403 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "404": { "description": "404 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } }, "500": { "description": "500 response", "schema": { "$ref": "#/definitions/Error" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" } } } }, "security": [ { "api_key": [] } ], "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "201", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "passthrough" } }, "No such.": { "statusCode": "404", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Internal.": { "statusCode": "500", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Forbidden.": { "statusCode": "403", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } }, "Invalid.": { "statusCode": "400", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "''" }, "responseTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"message\" : \"$inputRoot.errorMessage\"\n}" } } }, "requestTemplates": { "application/json": "#set($inputRoot = $input.path('$'))\n{\n \"list_name\" : \"$input.params().path.list_name\",\n \"email_address\" : \"$inputRoot.email_address\",\n \"message\" : \"$util.escapeJavaScript($inputRoot.message)\"\n}" }, "uri": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:136424311573:function:create_message/invocations", "httpMethod": "POST", "type": "aws" } }, "options": { "produces": [ "application/json" ], "parameters": [], "responses": { "200": { "description": "200 response", "schema": { "$ref": "#/definitions/Empty" }, "headers": { "Access-Control-Allow-Origin": { "type": "string" }, "Access-Control-Allow-Methods": { "type": "string" }, "Access-Control-Allow-Headers": { "type": "string" } } } }, "x-amazon-apigateway-integration": { "responses": { "default": { "statusCode": "200", "responseParameters": { "method.response.header.Access-Control-Allow-Methods": "'POST,OPTIONS'", "method.response.header.Access-Control-Allow-Headers": "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'", "method.response.header.Access-Control-Allow-Origin": "'*'" }, "responseTemplates": { "application/json": "{}" } } }, "requestTemplates": { "application/json": "{\"statusCode\": 200}" }, "type": "mock" } } } }, "securityDefinitions": { "api_key": { "type": "apiKey", "name": "x-api-key", "in": "header" } }, "definitions": { "GetListResponse": { "type": "object", "properties": { "list_name": { "type": "string" }, "administrator": { "type": "string" }, "created": { "type": "string" } } }, "CreateMessageResponse": { "type": "object", "properties": { "list_name": { "type": "string" }, "message_id": { "type": "string" } } }, "UpdateMemberResponse": { "type": "object", "properties": { "list_name": { "type": "string" }, "email_address": { "type": "string" }, "status": { "type": "string" } } }, "UpdateAccountRequest": { "type": "object", "properties": { "token": { "type": "string" } } }, "CreateAccountResponse": { "type": "object", "properties": { "email_address": { "type": "string" }, "status": { "type": "string" } } }, "GetMembersRequest": { "type": "object" }, "UpdateAccountResponse": { "type": "object", "properties": { "email_address": { "type": "string" }, "status": { "type": "string" } } }, "Error": { "type": "object", "properties": { "message": { "type": "string" } } }, "DeleteMemberResponse": { "type": "object" }, "CreateAccountRequest": { "type": "object", "properties": { "password": { "type": "string" } } }, "Empty": { "type": "object" }, "CreateListResponse": { "type": "object", "properties": { "list_name": { "type": "string" }, "administrator": { "type": "string" } } }, "DeleteMemberRequest": { "type": "object" }, "UpdateMemberRequest": { "type": "object", "properties": { "token": { "type": "string" } } }, "CreateMemberResponse": { "type": "object", "properties": { "list_name": { "type": "string" }, "email_address": { "type": "string" }, "status": { "type": "string" } } }, "GetListRequest": { "type": "object" }, "CreateMessageRequest": { "type": "object", "properties": { "email_address": { "type": "string" }, "message": { "type": "string" } } }, "CreateListRequest": { "type": "object", "properties": { "email_address": { "type": "string" }, "password": { "type": "string" } } }, "GetMembersResponse": { "type": "array", "items": { "type": "string" } } } }