From 4fbb83f7f80cb618d0660e47ac5d403a2452556c Mon Sep 17 00:00:00 2001 From: masky5859 Date: Fri, 15 Nov 2024 23:09:59 +0900 Subject: [PATCH] =?UTF-8?q?feat:mock=E3=82=B5=E3=83=BC=E3=83=90=E3=83=BC?= =?UTF-8?q?=E3=82=92=E7=AB=8B=E3=81=A1=E4=B8=8A=E3=81=92=E3=82=8B=E3=82=B3?= =?UTF-8?q?=E3=83=9E=E3=83=B3=E3=83=89=E3=82=92=E4=BD=9C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 +- Dockerfile | 12 + demo.json | 389 ++++++ mock_test.json | 1802 +++++++++++++++++++++++++ scripts/gen-api.sh | 2 +- scripts/run-mock-api.sh | 7 + src/api/mock/front-back-api-mock.json | 1762 ++++++++++++++++++++++++ 7 files changed, 3974 insertions(+), 2 deletions(-) create mode 100644 Dockerfile create mode 100644 demo.json create mode 100644 mock_test.json create mode 100755 scripts/run-mock-api.sh create mode 100644 src/api/mock/front-back-api-mock.json diff --git a/.gitignore b/.gitignore index b3e890d..0e3f832 100644 --- a/.gitignore +++ b/.gitignore @@ -29,4 +29,4 @@ coverage *.tsbuildinfo -src/api +src/api/generated diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..3fd8f68 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,12 @@ +# Dockerfile +FROM node:14 + +# Prismのインストール +RUN npm install -g @stoplight/prism-cli + +# 作業ディレクトリの設定 +WORKDIR /app + +# モックサーバーを起動 +CMD ["prism", "mock", "https://raw.githubusercontent.com/traP-jp/traO-Judge-docs/refs/tags/1.1.0/api/backend/frontend-backend.yaml", "-h", "0.0.0.0"] + diff --git a/demo.json b/demo.json new file mode 100644 index 0000000..36e45a6 --- /dev/null +++ b/demo.json @@ -0,0 +1,389 @@ +{ + "uuid": "089a83e7-37d4-46ed-b3b7-b92715de3253", + "lastMigration": 33, + "name": "Demo API", + "endpointPrefix": "", + "latency": 0, + "port": 3000, + "hostname": "", + "folders": [], + "routes": [ + { + "uuid": "5de3cc62-8261-4567-b93e-8b5ee139646b", + "type": "crud", + "documentation": "Endpoint performing CRUD operations on a data bucket (automatically creates GET, POST, PUT, DELETE routes)", + "method": "", + "endpoint": "users", + "responses": [ + { + "uuid": "f9831833-349d-48ea-909e-140713245973", + "body": "{}", + "latency": 0, + "statusCode": 200, + "label": "Perform CRUD operations on the \"Users\" databucket (\"Data\" tab at the top)", + "headers": [], + "bodyType": "DATABUCKET", + "filePath": "", + "databucketID": "haqq", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "76ebdfee-d68c-4c2d-beba-bdca267d0b89", + "type": "http", + "documentation": "Generate random body (JSON, text, CSV, etc) with templating", + "method": "get", + "endpoint": "template", + "responses": [ + { + "uuid": "710d5716-73ab-4562-aa39-c7556c4cf044", + "body": "{\n \"Templating example\": \"For more information about templating, click the blue 'i' above this editor\",\n \"users\": [\n {{# repeat (queryParam 'total' '10') }}\n {\n \"userId\": \"{{ faker 'number.int' min=10000 max=100000 }}\",\n \"firstname\": \"{{ faker 'person.firstName' }}\",\n \"lastname\": \"{{ faker 'person.lastName' }}\",\n \"friends\": [\n {{# repeat (faker 'number.int' 5) }}\n {\n \"id\": \"{{ faker 'string.uuid' }}\"\n }\n {{/ repeat }}\n ]\n },\n {{/ repeat }}\n ],\n \"total\": \"{{queryParam 'total' '10'}}\"\n}", + "latency": 0, + "statusCode": 200, + "label": "Creates 10 random users, or the amount specified in the 'total' query param", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "63c3af5e-a2a5-4ed6-ada3-e79535a4650c", + "type": "http", + "documentation": "Use multiple responses with rules", + "method": "post", + "endpoint": "content/:param1", + "responses": [ + { + "uuid": "740b7afa-4a61-4032-b5e8-ecfb789fba23", + "body": "{\n \"Rules example\": \"Default response. Served if route param 'param1' is not present.\"\n}", + "latency": 0, + "statusCode": 200, + "label": "Default response", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "a1f44b50-9fa9-4209-a679-b5608d36f1c3", + "body": "{\n \"Rules example\": \"Content XYZ. Served if route param 'param1' equals 'xyz'. (See in 'Rules' tab)\"\n}", + "latency": 0, + "statusCode": 200, + "label": "Content XYZ", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "params", + "modifier": "param1", + "value": "xyz", + "invert": false, + "operator": "equals" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "f19b383b-d5d2-4650-ade0-8a31e7f2606b", + "body": "{\n \"Rules example\": \"Content not found. Served if route param 'param1' is not equal to 'xyz'. (See in 'Rules' tab)\"\n}\n", + "latency": 0, + "statusCode": 404, + "label": "Content not found", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "params", + "modifier": "param1", + "value": "^(?!.*xyz).*$", + "invert": false, + "operator": "regex" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "fe0bfd21-0b3a-4c07-ab70-6c57f1c061f4", + "type": "http", + "documentation": "Path supports various patterns", + "method": "put", + "endpoint": "path/with/pattern(s)?/*", + "responses": [ + { + "uuid": "b5af0d10-f998-4664-acad-2a6619d1bfd2", + "body": "The current path will match the following routes: \nhttp://localhost:3000/path/with/pattern/\nhttp://localhost:3000/path/with/patterns/\nhttp://localhost:3000/path/with/patterns/anything-else\n\nLearn more about Mockoon's routing: https://mockoon.com/docs/latest/api-endpoints/routing/", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [ + { + "key": "Content-Type", + "value": "text/plain" + } + ], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "e73c6a66-f251-4616-b293-feeb53b4690f", + "type": "http", + "documentation": "\"Guard\" route protecting all routes starting with /protected/", + "method": "all", + "endpoint": "protected/*", + "responses": [ + { + "uuid": "f9955da5-6e10-4397-8582-06ae901330fe", + "body": "{\n \"error\": \"Unauthorized\"\n}", + "latency": 0, + "statusCode": 401, + "label": "Requires the presence of an 'Authorization' header", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "header", + "modifier": "Authorization", + "operator": "null", + "invert": false, + "value": "" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": "FALLBACK", + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "16339f67-bb5d-43dd-81f3-a33e1261cb21", + "type": "http", + "documentation": "Protected route", + "method": "get", + "endpoint": "protected/path", + "responses": [ + { + "uuid": "c9cead90-3a84-4a13-b986-7e0935bfb4dd", + "body": "You can serve the same responses based on the same rules for all or part of your endpoints by creating global routes using the fallback mode and a wildcard path. \nThis is useful if you want to protect all your endpoints by checking if an Authorization header is present or if you want to verify that all your requests contain a specific property in their body.\nTo learn more: https://mockoon.com/docs/latest/route-responses/global-routes-with-rules/", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [ + { + "key": "Content-Type", + "value": "text/plain" + } + ], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "method": "get", + "endpoint": "forward-and-record", + "documentation": "Can Mockoon forward or record entering requests?", + "responses": [ + { + "uuid": "7c6aaa49-4832-4485-96bb-bb6ff370cde3", + "body": "Mockoon can also act as a proxy and forward all entering requests that are not caught by declared routes. \nYou can activate this option in the environment settings (\"Settings\" tab at the top). \nTo learn more: https://mockoon.com/docs/latest/server-configuration/proxy-mode/\n\nAll entering requests, and responses from the proxied server will be recorded and can be automatically mocked (\"Logs\" tab at the top).\nTo learn more: https://mockoon.com/docs/latest/logging-and-recording/requests-logging/", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [ + { + "key": "Content-Type", + "value": "text/plain" + } + ], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "uuid": "d8ac3f47-d3eb-42af-baf7-91d17934aa45", + "type": "http", + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + } + ], + "rootChildren": [ + { + "type": "route", + "uuid": "5de3cc62-8261-4567-b93e-8b5ee139646b" + }, + { + "type": "route", + "uuid": "76ebdfee-d68c-4c2d-beba-bdca267d0b89" + }, + { + "type": "route", + "uuid": "63c3af5e-a2a5-4ed6-ada3-e79535a4650c" + }, + { + "type": "route", + "uuid": "fe0bfd21-0b3a-4c07-ab70-6c57f1c061f4" + }, + { + "type": "route", + "uuid": "e73c6a66-f251-4616-b293-feeb53b4690f" + }, + { + "type": "route", + "uuid": "16339f67-bb5d-43dd-81f3-a33e1261cb21" + }, + { + "type": "route", + "uuid": "d8ac3f47-d3eb-42af-baf7-91d17934aa45" + } + ], + "proxyMode": false, + "proxyHost": "", + "proxyRemovePrefix": false, + "tlsOptions": { + "enabled": false, + "type": "CERT", + "pfxPath": "", + "certPath": "", + "keyPath": "", + "caPath": "", + "passphrase": "" + }, + "cors": true, + "headers": [ + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Access-Control-Allow-Origin", + "value": "*" + }, + { + "key": "Access-Control-Allow-Methods", + "value": "GET,POST,PUT,PATCH,DELETE,HEAD,OPTIONS" + }, + { + "key": "Access-Control-Allow-Headers", + "value": "Content-Type, Origin, Accept, Authorization, Content-Length, X-Requested-With" + } + ], + "proxyReqHeaders": [ + { + "key": "", + "value": "" + } + ], + "proxyResHeaders": [ + { + "key": "", + "value": "" + } + ], + "data": [ + { + "uuid": "9cf6dca6-482e-4acf-8a94-9ae043784414", + "id": "haqq", + "name": "Users", + "documentation": "", + "value": "[\n {{#repeat 50}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"username\": \"{{faker 'internet.userName'}}\"\n }\n {{/repeat}}\n]" + } + ], + "callbacks": [] +} diff --git a/mock_test.json b/mock_test.json new file mode 100644 index 0000000..fe220e0 --- /dev/null +++ b/mock_test.json @@ -0,0 +1,1802 @@ +{ + "uuid": "b2e47609-0a64-4c7b-adef-554e6b55f02c", + "lastMigration": 33, + "name": "Front back api mock (copy)", + "endpointPrefix": "", + "latency": 0, + "port": 4011, + "hostname": "", + "folders": [], + "routes": [ + { + "uuid": "15c9a50d-34ad-4697-99c3-facb9497e053", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "editorials/:editorialId", + "responses": [ + { + "uuid": "0cc6f290-f23f-4767-9e03-c8210ca0b88b", + "body": "{\n \"id\": \"{{urlParam 'editorialId'}}\",\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"statement\": \"{{faker 'lorem.sentence'}}\",\n \"isPublic\": true\n}\n", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "1c1ff331-43cc-48f7-b97f-a102ec3cf219", + "body": "{\n \"status\": 404,\n \"body\": {\n \"message\": \"解説が存在しません(または解説の閲覧権限がありません)\"\n }\n}", + "latency": 0, + "statusCode": 404, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "9ee833e3-aa2d-4b95-9e38-5d0138c1cb9d", + "type": "http", + "documentation": "", + "method": "put", + "endpoint": "editorials/:editorialId", + "responses": [ + { + "uuid": "da9acfe7-23a5-4a2f-828b-04d19ae5b74f", + "body": "", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "PutEditorialRequest", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "5538dece-27ed-4eac-bad6-9e5c79a45211", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "", + "value": "{{data '9ht6'}}", + "invert": false, + "operator": "equals" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": true, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "8431daab-f846-4285-80de-cf8f90bfc63c", + "type": "http", + "documentation": "", + "method": "delete", + "endpoint": "editorials/:editorialId", + "responses": [ + { + "uuid": "92a2a13b-fb73-45ff-88d2-ad108ed520e6", + "body": "", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "bf5d4a45-7ea9-44bc-a2c1-535fdfcc4d0d", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "testcases/:testcaseId", + "responses": [ + { + "uuid": "47c5f370-df8b-40cc-bced-3b020065bb22", + "body": "{\n \"name\": \"testcase_sample\",\n \"id\": \"{{urlParam 'testcaseId'}}\",\n \"testInput\": \"10 20\",\n \"testOutput\": \"Aoki\",\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n}\n", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "nfur", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "ce1b515b-4c29-412e-9a90-ec35b7d32226", + "body": "{\n \"status\": 404,\n \"body\": {\n \"message\": \"解説が存在しません(または解説の閲覧権限がありません)\"\n }\n}", + "latency": 0, + "statusCode": 404, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "1f2654ea-83e6-4c66-8caf-f6906544caf2", + "type": "http", + "documentation": "", + "method": "put", + "endpoint": "testcases/:testcaseId", + "responses": [ + { + "uuid": "40a1c628-57a6-4b27-8e2f-3a91c1639ac1", + "body": "", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "PutTestcaseRequest", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "b4401d24-1ffe-49f8-b446-2c1171335aa6", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "", + "value": "{{data '9ht6'}}", + "invert": false, + "operator": "equals" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": true, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "fefb6922-82d3-4ae4-9775-a3a92dd92c85", + "type": "http", + "documentation": "", + "method": "delete", + "endpoint": "testcases/:testcaseId", + "responses": [ + { + "uuid": "5c9500aa-3e11-48db-9784-38a1d77d1ee5", + "body": "", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "538ce2fa-2532-4482-bc9a-dd529f486956", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "problems", + "responses": [ + { + "uuid": "262fc751-32e3-4487-abe9-c2582456d4a3", + "body": "{\n \"total\": {{queryParam 'limit' 20}},\n \"problems\": [\n {{#repeat (queryParam 'limit' 20)}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n}", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "9h5u", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "6d177eb3-257f-4d87-b94a-fb6c6097ea49", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "problems", + "responses": [ + { + "uuid": "b793d109-d656-4fb0-ada6-9ebf8d4084ea", + "body": "{\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{body 'title'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": \"{{body 'difficulty'}}\",\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": 0,\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n}\n", + "latency": 0, + "statusCode": 201, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "3yxo", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "e2c44c26-bda9-4577-9f43-4d9f71a11250", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "a27efba8-58a9-4171-9327-314cf71ee520", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "problems/:problemId", + "responses": [ + { + "uuid": "089eb808-6539-4292-817e-23af84399bbe", + "body": "{\n \"id\": \"{{urlParam 'problemId'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"statement\": \"{{faker 'lorem.sentence'}}\"\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"testcases\": [\n {{#repeat 3}}\n {\n \"name\": \"testcase_sample\"\n \"id\": \"{{urlParam 'testcaseId'}}\",\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n}\n", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "6b94bfe1-2fac-4a52-9d09-c9e41bb3256b", + "body": "{\n \"status\": 404,\n \"body\": {\n \"message\": \"解説が存在しません(または解説の閲覧権限がありません)\"\n }\n}", + "latency": 0, + "statusCode": 404, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "bb3edc0e-3823-4075-8881-6fd7bb3fb25e", + "type": "http", + "documentation": "", + "method": "put", + "endpoint": "problems/:problemId", + "responses": [ + { + "uuid": "a251bd46-464c-41ab-8d7a-ab3dde237a82", + "body": "\"\"", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "sc5i", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "9a2ee6ec-90aa-4487-8bde-8f3d5237ec80", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "", + "value": "{{data '9ht6'}}", + "invert": false, + "operator": "equals" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": true, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "a55a6b93-b21e-46ae-b0d7-6e66f99a59e4", + "type": "http", + "documentation": "", + "method": "delete", + "endpoint": "problems/:problemId", + "responses": [ + { + "uuid": "a1330c7f-fa98-4b21-8f87-4873ffa9391d", + "body": "", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "02188d57-3786-447f-ae13-d571f813a275", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "problems/:problemId/editorials", + "responses": [ + { + "uuid": "d81ed75f-e47c-4bf5-a345-08e27a18707a", + "body": "[\n {\n \"id\": \"{{urlParam 'editorialId'}}\",\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true\n }\n]", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "9h5u", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "33cc7022-d888-4509-b542-1150a924e888", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "problems/:problemId/editorials", + "responses": [ + { + "uuid": "326e8f97-170a-4277-9973-9415cb00a62e", + "body": "{\n \"id\": \"{{faker 'string.uuid'}}\",\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"statement\": \"{{body 'statement'}}\",\n \"isPublic\": true\n}\n", + "latency": 0, + "statusCode": 201, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "iekc", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "5815a56a-e191-4c59-af74-d74213d46bcf", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "27c74ddc-02c1-4dd2-90b8-02effae1aaea", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "problems/:problemId/testcases", + "responses": [ + { + "uuid": "683b9cfc-cd7f-4835-baa0-c3937fbbb586", + "body": "[\n {\n \"name\": \"testcase_sample\".\n \"id\": \"{{faker 'string.uuid'}}\",\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n]", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "9h5u", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "e3d4a00e-e1ff-4473-bd9e-a65555f6049e", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "problems/:problemId/testcases", + "responses": [ + { + "uuid": "3c056629-6aea-4890-aab4-e3b509430f7b", + "body": "{\n \"name\": \"{{body 'name'}}\",\n \"id\": \"{{body 'id'}}\",\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n}\n", + "latency": 0, + "statusCode": 201, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "6ycz", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "fbbd67fc-3f93-4863-9ae0-b558a5eb3613", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "6ycz", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "64302a12-5ea2-46a0-b6ad-b1ee89d4b56c", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "problems/:problemId/submissions", + "responses": [ + { + "uuid": "2e18b5ba-bb5f-4b16-a02d-401c9c66942b", + "body": "{\n \"id\": \"{{faker 'string.uuid'}}\",\n \"userId\": \"{{faker 'string.uuid'}}\",\n \"userName\": \"{{faker 'internet.userName'}}\"\n \"problemId\": {{faker 'number.int' min=100 max=1000}},\n \"totalScore\": {{faker 'number.int' min=100 max=1000}},\n \"maxTime\": {{faker 'number.int' min=100 max=1000}},\n \"maxMemory\": {{faker 'number.float' min=100 max=1000}},\n \"codeLength\": {{faker 'number.float' min=100 max=1000}},\n \"languageId\": \"{{body 'languageId'}},\n \"overallJudgeStatus\": \"{{oneOf (array 'AC' 'WA' 'TLE' 'CE')}}\",\n \"submittedAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"judgeResults\": [\n {{#repeat 3}}\n {\n \"testcaseId\": \"{{faker 'string.uuid'}}\",\n \"testcaseName\": \"{{faker 'internet.userName'}}\",\n \"judgeStatus\": \"{{oneOf (array 'AC' 'WA' 'TLE' 'CE')}}\",\n \"score\": {{faker 'number.int' min=100 max=1000}},\n \"time\": {{faker 'number.int' min=100 max=1000}},\n \"memory\": {{faker 'number.float' min=100 max=1000}},\n }\n {{/repeat}}\n ]\n}\n", + "latency": 0, + "statusCode": 201, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "zeip", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "91c22af0-1778-4e43-bdfd-ca2a46de618a", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "6ycz", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "cfbddfb0-efc7-4df3-b88e-ba8d8e83cdf4", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "submissions", + "responses": [ + { + "uuid": "b7ec01ad-712c-4b6b-a650-1efd7591f210", + "body": "{\n \"total\": {{queryParam 'limit' 20}},\n \"submissions\": [\n {{#repeat (queryParam 'limit' 20)}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"userId\": \"{{faker 'string.uuid'}}\",\n \"userName\": \"{{faker 'internet.userName'}}\"\n \"problemId\": {{faker 'number.int' min=100 max=1000}},\n \"totalScore\": {{faker 'number.int' min=100 max=1000}},\n \"maxTime\": {{faker 'number.int' min=100 max=1000}},\n \"maxMemory\": {{faker 'number.float' min=100 max=1000}},\n \"codeLength\": {{faker 'number.float' min=100 max=1000}},\n \"languageId\": \"{{body 'languageId'}},\n \"judgeStatus\": \"{{oneOf (array 'AC' 'WA' 'TLE' 'CE')}}\",\n \"submittedAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n}", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "51304282-cc26-42b9-a2be-cd7c81b1d154", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "submissions/:submissionId", + "responses": [ + { + "uuid": "29b969ae-acdf-4121-b29b-c61f27ba2f71", + "body": "{\n \"id\": \"{{urlParam 'submissionId'}}\",\n \"userId\": \"{{faker 'string.uuid'}}\",\n \"userName\": \"{{faker 'internet.userName'}}\"\n \"problemId\": {{faker 'number.int' min=100 max=1000}},\n \"totalScore\": {{faker 'number.int' min=100 max=1000}},\n \"maxTime\": {{faker 'number.int' min=100 max=1000}},\n \"maxMemory\": {{faker 'number.float' min=100 max=1000}},\n \"codeLength\": {{faker 'number.float' min=100 max=1000}},\n \"languageId\": \"{{body 'languageId'}},\n \"overallJudgeStatus\": \"{{oneOf (array 'AC' 'WA' 'TLE' 'CE')}}\",\n \"submittedAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"judgeResults\": [\n {{#repeat 3}}\n {\n \"testcaseId\": \"{{faker 'string.uuid'}}\",\n \"testcaseName\": \"{{faker 'internet.userName'}}\",\n \"judgeStatus\": \"{{oneOf (array 'AC' 'WA' 'TLE' 'CE')}}\",\n \"score\": {{faker 'number.int' min=100 max=1000}},\n \"time\": {{faker 'number.int' min=100 max=1000}},\n \"memory\": {{faker 'number.float' min=100 max=1000}},\n }\n {{/repeat}}\n ]\n}", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "f85e12e3-24cd-4903-9836-0f090d1a5b24", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "users/:userId", + "responses": [ + { + "uuid": "1b620753-8a08-4274-9b49-cd02a851d9de", + "body": "{\n \"id\": \"{{faker 'string.uuid'}}\",\n \"name\": \"{{faker 'internet.userName'}}\",\n \"traqId\": \"{{faker 'internet.userName'}}\",\n \"githubId\": \"{{faker 'internet.userName'}}\",\n \"iconUrl\": \"https://randomuser.me/api/portraits/{{oneOf (array 'men' 'women')}}/{{faker 'number.int' min=1 max=99}}.jpg\",\n \"postProblems\": {\n \"total\": 5,\n \"problems\": [\n {{#repeat 5}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n },\n \"submitProblems\": {\n \"total\": 5,\n \"problems\": [\n {{#repeat 5}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n },\n \"xLink\": \"{{faker 'internet.url'}}\",\n \"githubLink\": \"https://github.com/{{faker 'internet.userName'}}\",\n \"selfIntroduction\": \"{{faker 'lorem.sentence'}}\",\n \"role\": \"{{oneOf (array 'Admin' 'traPUser' 'CommonUser')}}\"\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n}\n", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "7a763606-1d11-42c5-8d0b-792b82416b8f", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "users/me", + "responses": [ + { + "uuid": "88ce814d-c297-44e5-b206-81a3b155fac7", + "body": "{\n \"id\": \"{{faker 'string.uuid'}}\",\n \"name\": \"{{faker 'internet.userName'}}\",\n \"traqId\": \"{{faker 'internet.userName'}}\",\n \"githubId\": \"{{faker 'internet.userName'}}\",\n \"iconUrl\": \"https://randomuser.me/api/portraits/{{oneOf (array 'men' 'women')}}/{{faker 'number.int' min=1 max=99}}.jpg\",\n \"postProblems\": {\n \"total\": 5,\n \"problems\": [\n {{#repeat 5}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n },\n \"submitProblems\": {\n \"total\": 5,\n \"problems\": [\n {{#repeat 5}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n },\n \"xLink\": \"{{faker 'internet.url'}}\",\n \"githubLink\": \"https://github.com/{{faker 'internet.userName'}}\",\n \"selfIntroduction\": \"{{faker 'lorem.sentence'}}\",\n \"role\": \"{{oneOf (array 'Admin' 'traPUser' 'CommonUser')}}\"\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n}\n", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "a919ed8e-1372-4034-9a3b-f1e83c8b0cec", + "type": "http", + "documentation": "", + "method": "put", + "endpoint": "users/me", + "responses": [ + { + "uuid": "067cb31c-effa-46a3-bbee-dfaadd15ffa1", + "body": "{\n \"id\": \"{{faker 'string.uuid'}}\",\n \"name\": \"{{faker 'internet.userName'}}\",\n \"traqId\": \"{{faker 'internet.userName'}}\",\n \"githubId\": \"{{faker 'internet.userName'}}\",\n \"iconUrl\": \"https://randomuser.me/api/portraits/{{oneOf (array 'men' 'women')}}/{{faker 'number.int' min=1 max=99}}.jpg\",\n \"postProblems\": {\n \"total\": 5,\n \"problems\": [\n {{#repeat 5}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n },\n \"submitProblems\": {\n \"total\": 5,\n \"problems\": [\n {{#repeat 5}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n },\n \"xLink\": \"{{faker 'internet.url'}}\",\n \"githubLink\": \"https://github.com/{{faker 'internet.userName'}}\",\n \"selfIntroduction\": \"{{faker 'lorem.sentence'}}\",\n \"role\": \"{{oneOf (array 'Admin' 'traPUser' 'CommonUser')}}\"\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n}\n", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "cmm7", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "7e7ef88b-f11b-449c-a85c-7290ed17f907", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "cmm7", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "06ac0144-604b-4b4d-85b2-f27c4a62da4d", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "languages", + "responses": [ + { + "uuid": "e5cb0ced-6ff2-4f13-b2b8-66aa9af5dd55", + "body": "[\n { \"id\": 1, \"name\": \"C\" },\n { \"id\": 2, \"name\": \"C++\" },\n { \"id\": 3, \"name\": \"Java\" },\n { \"id\": 4, \"name\": \"Python\" },\n { \"id\": 5, \"name\": \"JavaScript\" },\n { \"id\": 6, \"name\": \"Ruby\" },\n { \"id\": 7, \"name\": \"Swift\" },\n { \"id\": 8, \"name\": \"Go\" },\n { \"id\": 9, \"name\": \"Rust\" },\n { \"id\": 10, \"name\": \"Kotlin\" }\n]\n", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "79def08b-2550-40ef-9d80-59ec8656cf92", + "type": "http", + "documentation": "", + "method": "put", + "endpoint": "users/me/password", + "responses": [ + { + "uuid": "23b735e4-249e-4891-83e0-4b3f5931254d", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "dl11", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "f4de3f40-84e6-42b5-83a2-2f85e0395e2c", + "body": "\"\"", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "dl11", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "c01fa2b9-1e7a-4448-92e7-2ca8cdb5569b", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "signup/request", + "responses": [ + { + "uuid": "5e866bf6-4150-4c3c-a542-052791ea160a", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "6ab6", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "038e0348-541d-44ca-83a4-571cc5799d54", + "body": "{\n \"status\": 201,\n \"body\": {\n \"message\": \"認証用のURLを送信しました メール認証を行なってください\"\n }\n}", + "latency": 0, + "statusCode": 201, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "6ab6", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "1ce2968a-0cbc-4ff1-90d9-f716109c2bed", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "login", + "responses": [ + { + "uuid": "2af64f66-525b-4ddf-a4d7-7fdb9a32e08c", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "w7nf", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "d7b1bebf-b4ca-442a-be63-c1cacb763aed", + "body": "\"\"", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "w7nf", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "a3eb9458-fd44-48a2-b70e-e7310fd8463b", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "signup", + "responses": [ + { + "uuid": "11b5d70b-f3a3-47c3-a110-05008abb2889", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "x8be", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "2369f10a-9c14-41e6-a5ac-fde54b33b748", + "body": "{\n \"status\": 201,\n \"body\": {\n \"message\": \"正常にユーザーを作成できました\"\n }\n}", + "latency": 0, + "statusCode": 201, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "x8be", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "8d893431-9ab9-4c50-848c-fdaf4bb52fac", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "logout", + "responses": [ + { + "uuid": "8d1dc98d-32a4-4e3b-89fa-7348e37cfb3f", + "body": "\"\"", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "54fceb4f-a905-4b5b-9339-72d45e2c9d63", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "reset-password/request", + "responses": [ + { + "uuid": "2695cc5a-7527-4807-8efc-2c6cfcf51443", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "6ab6", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "352bc8b6-4fbc-4bdf-b544-5a3a97d79c8a", + "body": "\"\"", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "4xdo", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "0e431f44-4df3-4059-b421-7dd2ed5ce8c0", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "reset-password", + "responses": [ + { + "uuid": "92c70123-9bb0-4aa6-a56d-21bdd3448aca", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "lrxq", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "30a70dde-b3b8-459a-a787-88c0d14e076f", + "body": "\"\"", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "4xdo", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "cfe80772-cc40-4a2a-87e4-e3307fff4b86", + "type": "http", + "documentation": "", + "method": "put", + "endpoint": "users/me/email", + "responses": [ + { + "uuid": "0ee59a0b-2389-4a8a-983f-a6fc69580790", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "4xdo", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "d27cd4b8-c8c7-4fda-8531-2b0b24996738", + "body": "\"\"", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "dl11", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + } + ], + "rootChildren": [ + { + "type": "route", + "uuid": "15c9a50d-34ad-4697-99c3-facb9497e053" + }, + { + "type": "route", + "uuid": "9ee833e3-aa2d-4b95-9e38-5d0138c1cb9d" + }, + { + "type": "route", + "uuid": "8431daab-f846-4285-80de-cf8f90bfc63c" + }, + { + "type": "route", + "uuid": "bf5d4a45-7ea9-44bc-a2c1-535fdfcc4d0d" + }, + { + "type": "route", + "uuid": "1f2654ea-83e6-4c66-8caf-f6906544caf2" + }, + { + "type": "route", + "uuid": "fefb6922-82d3-4ae4-9775-a3a92dd92c85" + }, + { + "type": "route", + "uuid": "538ce2fa-2532-4482-bc9a-dd529f486956" + }, + { + "type": "route", + "uuid": "6d177eb3-257f-4d87-b94a-fb6c6097ea49" + }, + { + "type": "route", + "uuid": "a27efba8-58a9-4171-9327-314cf71ee520" + }, + { + "type": "route", + "uuid": "bb3edc0e-3823-4075-8881-6fd7bb3fb25e" + }, + { + "type": "route", + "uuid": "a55a6b93-b21e-46ae-b0d7-6e66f99a59e4" + }, + { + "type": "route", + "uuid": "02188d57-3786-447f-ae13-d571f813a275" + }, + { + "type": "route", + "uuid": "33cc7022-d888-4509-b542-1150a924e888" + }, + { + "type": "route", + "uuid": "27c74ddc-02c1-4dd2-90b8-02effae1aaea" + }, + { + "type": "route", + "uuid": "e3d4a00e-e1ff-4473-bd9e-a65555f6049e" + }, + { + "type": "route", + "uuid": "64302a12-5ea2-46a0-b6ad-b1ee89d4b56c" + }, + { + "type": "route", + "uuid": "cfbddfb0-efc7-4df3-b88e-ba8d8e83cdf4" + }, + { + "type": "route", + "uuid": "51304282-cc26-42b9-a2be-cd7c81b1d154" + }, + { + "type": "route", + "uuid": "f85e12e3-24cd-4903-9836-0f090d1a5b24" + }, + { + "type": "route", + "uuid": "7a763606-1d11-42c5-8d0b-792b82416b8f" + }, + { + "type": "route", + "uuid": "a919ed8e-1372-4034-9a3b-f1e83c8b0cec" + }, + { + "type": "route", + "uuid": "06ac0144-604b-4b4d-85b2-f27c4a62da4d" + }, + { + "type": "route", + "uuid": "79def08b-2550-40ef-9d80-59ec8656cf92" + }, + { + "type": "route", + "uuid": "c01fa2b9-1e7a-4448-92e7-2ca8cdb5569b" + }, + { + "type": "route", + "uuid": "1ce2968a-0cbc-4ff1-90d9-f716109c2bed" + }, + { + "type": "route", + "uuid": "a3eb9458-fd44-48a2-b70e-e7310fd8463b" + }, + { + "type": "route", + "uuid": "8d893431-9ab9-4c50-848c-fdaf4bb52fac" + }, + { + "type": "route", + "uuid": "54fceb4f-a905-4b5b-9339-72d45e2c9d63" + }, + { + "type": "route", + "uuid": "0e431f44-4df3-4059-b421-7dd2ed5ce8c0" + }, + { + "type": "route", + "uuid": "cfe80772-cc40-4a2a-87e4-e3307fff4b86" + } + ], + "proxyMode": false, + "proxyHost": "", + "proxyRemovePrefix": false, + "tlsOptions": { + "enabled": false, + "type": "CERT", + "pfxPath": "", + "certPath": "", + "keyPath": "", + "caPath": "", + "passphrase": "" + }, + "cors": true, + "headers": [ + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Access-Control-Allow-Origin", + "value": "*" + }, + { + "key": "Access-Control-Allow-Methods", + "value": "GET,POST,PUT,PATCH,DELETE,HEAD,OPTIONS" + }, + { + "key": "Access-Control-Allow-Headers", + "value": "Content-Type, Origin, Accept, Authorization, Content-Length, X-Requested-With" + } + ], + "proxyReqHeaders": [ + { + "key": "", + "value": "" + } + ], + "proxyResHeaders": [ + { + "key": "", + "value": "" + } + ], + "data": [ + { + "uuid": "6aebf7ce-21fe-4a36-8712-9c3319bf8337", + "id": "jljx", + "name": "PutEditorialRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"statement\": { \"type\": \"string\" },\n \"isPublic\": { \"type\": \"boolean\" }\n },\n \"required\": [\"statement\", \"isPublic\"]\n}" + }, + { + "uuid": "f5b7b4c9-bdb0-4a64-b146-308a23998f2e", + "id": "nfur", + "name": "PutTestcaseRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"name\": {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n },\n \"testInput\": {\n \"type\": \"string\"\n },\n \"testOutput\": {\n \"type\": \"string\"\n },\n \"createdAt\": {\n \"type\": \"string\"\n },\n \"updatedAt\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"name\",\n \"id\",\n \"testInput\",\n \"testOutput\"\n ]\n}" + }, + { + "uuid": "09c1ec1a-b561-4a08-8c5d-35ee2c3b21e1", + "id": "alf4", + "name": "Test", + "documentation": "", + "value": "[\n {\n \"test\": \"test\"\n }\n]\n" + }, + { + "uuid": "e8c1a7f8-cb21-40d5-8d38-c48d637f434f", + "id": "9ht6", + "name": "Test2", + "documentation": "", + "value": "{\n \"test\": \"test\"\n}" + }, + { + "uuid": "9c47f427-1dde-4c25-b6e0-f8cc4454b4ff", + "id": "hvie", + "name": "Test3", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"properties\": {\n \"name\": { \"type\": \"string\" },\n \"age\": { \"type\": \"number\" }\n },\n \"required\": [\"name\"]\n}" + }, + { + "uuid": "a8f89dd9-ce9a-4455-9312-f1874facedfe", + "id": "9h5u", + "name": "Problems", + "documentation": "", + "value": "" + }, + { + "uuid": "a64bbac5-bd1e-45d6-8fae-b1d3c0ec596b", + "id": "3yxo", + "name": "PostProblemRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"title\": {\n \"type\": \"string\"\n },\n \"difficulty\": {\n \"type\": \"integer\"\n },\n \"statement\": {\n \"type\": \"string\"\n },\n \"timeLimit\": {\n \"type\": \"integer\"\n },\n \"memoryLimit\": {\n \"type\": \"integer\"\n }\n },\n \"required\": [\n \"title\",\n \"difficulty\",\n \"statement\",\n \"timeLimit\",\n \"memoryLimit\"\n ]\n}" + }, + { + "uuid": "89f4a0c5-8926-4689-aab7-bc7cf3938748", + "id": "sc5i", + "name": "PutProblemRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"title\": {\n \"type\": \"string\"\n },\n \"isPublic\": {\n \"type\": \"boolean\"\n },\n \"difficulty\": {\n \"type\": \"integer\"\n },\n \"statement\": {\n \"type\": \"string\"\n },\n \"timeLimit\": {\n \"type\": \"integer\"\n },\n \"memoryLimit\": {\n \"type\": \"integer\"\n }\n },\n \"required\": [\n \"title\",\n \"difficulty\",\n \"isPublic\",\n \"timeLimit\",\n \"memoryLimit\"\n ]\n}" + }, + { + "uuid": "1b681309-2649-43fe-974c-8bbd795f6c59", + "id": "iekc", + "name": "PostEditorialRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"statement\": { \"type\": \"string\" },\n \"isPublic\": { \"type\": \"boolean\" }\n },\n \"required\": [\"statement\", \"isPublic\"]\n}" + }, + { + "uuid": "19a8fa96-87ca-45a4-9dc6-2bcf6d28b82e", + "id": "6ycz", + "name": "PostTestcaseRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"name\": { \"type\": \"string\" },\n \"testInput\": { \"type\": \"string\" },\n \"testOutput\": { \"type\": \"string\" }\n },\n \"required\": [\"name\", \"testInput\", \"testOutput\"]\n}" + }, + { + "uuid": "d4a34d59-b9b3-445f-a435-d462bdfca9e7", + "id": "zeip", + "name": "PostSubmissionRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"languageId\": { \"type\": \"integer\" },\n \"source\": { \"type\": \"string\" }\n },\n \"required\": [\"languageId\"]\n}" + }, + { + "uuid": "8331428b-a09c-4d11-8b09-be6ceaf1df0a", + "id": "cmm7", + "name": "PutMeRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"userName\": { \"type\": \"string\" },\n \"icon\": { \"type\": \"string\" },\n \"xLink\": { \"type\": \"string\" },\n \"githubLink\": { \"type\": \"string\" },\n \"selfIntroduction\": { \"type\": \"string\" }\n }\n}" + }, + { + "uuid": "fcfab74c-a085-400d-b29f-63d9f6308073", + "id": "4xdo", + "name": "Email", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"email\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\"email\"]\n}" + }, + { + "uuid": "3e90fc8d-cbe4-4c0d-9cef-974fe68da27c", + "id": "dl11", + "name": "PutPasswordRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"oldPassword\": { \"type\": \"string\" },\n \"newPassword\": { \"type\": \"string\" }\n },\n \"required\": [\"oldPassword\", \"newPassword\"]\n}" + }, + { + "uuid": "f28b058d-e5c3-4aec-bd22-f36863183b62", + "id": "6ab6", + "name": "SignupRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"email\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\"email\"]\n}" + }, + { + "uuid": "3e30af32-c70d-4282-b2ca-e458e19d7894", + "id": "x8be", + "name": "Signup", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"userName\": {\n \"type\": \"string\"\n },\n \"password\": {\n \"type\": \"string\"\n },\n \"token\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"userName\",\n \"password\",\n \"token\"\n ]\n}" + }, + { + "uuid": "f330fa95-ca85-463b-a52b-64f04b434114", + "id": "w7nf", + "name": "UserEmailAndPassword", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"email\": {\n \"type\": \"string\"\n },\n \"password\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\"email\", \"password\"]\n}" + }, + { + "uuid": "7263997d-474a-468a-a431-61476d4c3916", + "id": "lrxq", + "name": "ResetPasswordRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"password\": {\n \"type\": \"string\"\n },\n \"token\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"password\",\n \"token\"\n ]\n}" + } + ], + "callbacks": [] +} \ No newline at end of file diff --git a/scripts/gen-api.sh b/scripts/gen-api.sh index e6ff110..fd696dc 100755 --- a/scripts/gen-api.sh +++ b/scripts/gen-api.sh @@ -3,4 +3,4 @@ docker run --rm -v "$(dirname $0)/../:/local" -u $(id -u):$(id -g) openapitools/openapi-generator-cli generate \ -i https://raw.githubusercontent.com/traP-jp/traO-Judge-docs/refs/tags/1.1.0/api/backend/frontend-backend.yaml \ -g typescript-fetch \ - -o /local/src/api + -o /local/src/api/generated diff --git a/scripts/run-mock-api.sh b/scripts/run-mock-api.sh new file mode 100755 index 0000000..94cb572 --- /dev/null +++ b/scripts/run-mock-api.sh @@ -0,0 +1,7 @@ +#!/bin/bash -eux + +# スクリプトのディレクトリを基準にパスを設定 +SCRIPT_DIR=$(dirname "$0") + +# Dockerコンテナをバックグラウンドで起動し、指定された設定ファイルを使用してモックサーバーを立ち上げる +docker run -d --mount type=bind,source="${SCRIPT_DIR}/../src/api/mock/front-back-api-mock.json",target=/data,readonly -p 4010:4010 mockoon/cli:latest -d /data -p 4010 \ No newline at end of file diff --git a/src/api/mock/front-back-api-mock.json b/src/api/mock/front-back-api-mock.json new file mode 100644 index 0000000..9d2930c --- /dev/null +++ b/src/api/mock/front-back-api-mock.json @@ -0,0 +1,1762 @@ +{ + "uuid": "c4a4b5de-9980-4520-b918-9d37ad6497d0", + "lastMigration": 33, + "name": "Front back api mock", + "endpointPrefix": "", + "latency": 0, + "port": 4010, + "hostname": "", + "folders": [], + "routes": [ + { + "uuid": "c5caf911-66f0-4681-af4a-8a218830edf5", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "editorials/:editorialId", + "responses": [ + { + "uuid": "3de1792a-6d37-450f-b186-9db8a6faf27a", + "body": "{\n \"id\": \"{{urlParam 'editorialId'}}\",\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"statement\": \"{{faker 'lorem.sentence'}}\",\n \"isPublic\": true\n}\n", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "906ab518-b18a-4dff-ac55-b13c5e6601ae", + "body": "{\n \"status\": 404,\n \"body\": {\n \"message\": \"解説が存在しません(または解説の閲覧権限がありません)\"\n }\n}", + "latency": 0, + "statusCode": 404, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "50ff6da3-34bb-4737-a80e-a8e0d34146f4", + "type": "http", + "documentation": "", + "method": "put", + "endpoint": "editorials/:editorialId", + "responses": [ + { + "uuid": "01e61a05-ace1-4d40-8af8-785d779cb449", + "body": "", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "PutEditorialRequest", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "a5f9a44a-974a-42da-8ba1-db3489bb9aa7", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "", + "value": "{{data '9ht6'}}", + "invert": false, + "operator": "equals" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": true, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "6aa1878c-5763-4a51-8957-980d8ce62a29", + "type": "http", + "documentation": "", + "method": "delete", + "endpoint": "editorials/:editorialId", + "responses": [ + { + "uuid": "eb48aadf-3ee8-4707-981f-accc5713b16d", + "body": "", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "2fabf737-e573-40c9-bd4e-c79c8880d645", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "testcases/:testcaseId", + "responses": [ + { + "uuid": "d0d0a7fd-002e-468b-bef5-4d4c7b211c7c", + "body": "{\n \"name\": \"testcase_sample\",\n \"id\": \"{{urlParam 'testcaseId'}}\",\n \"testInput\": \"10 20\",\n \"testOutput\": \"Aoki\",\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n}\n", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "nfur", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "db83ea1d-f305-43e5-ad51-f58bc3b5fda6", + "body": "{\n \"status\": 404,\n \"body\": {\n \"message\": \"解説が存在しません(または解説の閲覧権限がありません)\"\n }\n}", + "latency": 0, + "statusCode": 404, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "69337bac-92d5-4e72-823b-c891d7776b5e", + "type": "http", + "documentation": "", + "method": "put", + "endpoint": "testcases/:testcaseId", + "responses": [ + { + "uuid": "5de5d852-2e3a-49fe-91d0-a94adada6025", + "body": "", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "PutTestcaseRequest", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "7b2ac929-5164-4638-93ed-6141d8a97a06", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "", + "value": "{{data '9ht6'}}", + "invert": false, + "operator": "equals" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": true, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "2df4f50d-782e-47e1-9618-e9e62a8fd7ac", + "type": "http", + "documentation": "", + "method": "delete", + "endpoint": "testcases/:testcaseId", + "responses": [ + { + "uuid": "aaf0c2db-f386-4b87-97d7-0dd12180b385", + "body": "", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "9abf7405-25b5-4cdb-b971-9cf5d7704523", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "problems", + "responses": [ + { + "uuid": "a95aa68e-22c9-4ab5-8c89-16a6086dd112", + "body": "{\n \"total\": {{queryParam 'limit' 20}},\n \"problems\": [\n {{#repeat (queryParam 'limit' 20)}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n}", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "9h5u", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "a6ec23be-6028-4ae4-b5b1-e0a736412b70", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "problems", + "responses": [ + { + "uuid": "34612cbf-8455-4965-83fd-845f1849d4a4", + "body": "{\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{body 'title'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": \"{{body 'difficulty'}}\",\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": 0,\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n}\n", + "latency": 0, + "statusCode": 201, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "3yxo", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "f2a0e533-27e6-44bf-b266-f6a45ebbb5a4", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "3f457cd1-ba06-4f8b-a25c-50ec518a8576", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "problems/:problemId", + "responses": [ + { + "uuid": "d5a0ef36-66fc-45f8-ac9c-eba4e848be2d", + "body": "{\n \"id\": \"{{urlParam 'problemId'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"statement\": \"{{faker 'lorem.sentence'}}\"\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"testcases\": [\n {{#repeat 3}}\n {\n \"name\": \"testcase_sample\"\n \"id\": \"{{urlParam 'testcaseId'}}\",\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n}\n", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "224f9912-7c14-4a3e-9c4d-40995c0bfb56", + "body": "{\n \"status\": 404,\n \"body\": {\n \"message\": \"解説が存在しません(または解説の閲覧権限がありません)\"\n }\n}", + "latency": 0, + "statusCode": 404, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "03d558d5-58a6-4356-b8f6-c8e537faea0f", + "type": "http", + "documentation": "", + "method": "put", + "endpoint": "problems/:problemId", + "responses": [ + { + "uuid": "c4c5b28d-1baa-4a91-a492-fd5f9d354c93", + "body": "\"\"", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "sc5i", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "db7899df-e1c1-49fe-9549-a479bd2d9ade", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "", + "value": "{{data '9ht6'}}", + "invert": false, + "operator": "equals" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": true, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "4fdf91f1-18a2-46a6-991c-6f3ccd56f0ad", + "type": "http", + "documentation": "", + "method": "delete", + "endpoint": "problems/:problemId", + "responses": [ + { + "uuid": "7284be89-b8a0-4989-8eda-41f849af3f20", + "body": "", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "81eb9c4f-027c-4983-a6f8-377a9d5cd2c2", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "problems/:problemId/editorials", + "responses": [ + { + "uuid": "018b08db-6355-45c1-b013-1bae5951553c", + "body": "[\n {\n \"id\": \"{{urlParam 'editorialId'}}\",\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true\n }\n]", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "9h5u", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "a1c09cbf-2a8d-4508-8a64-8cd21b096531", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "problems/:problemId/editorials", + "responses": [ + { + "uuid": "607bd965-96db-44c1-b507-3034fd1abb91", + "body": "{\n \"id\": \"{{faker 'string.uuid'}}\",\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"statement\": \"{{body 'statement'}}\",\n \"isPublic\": true\n}\n", + "latency": 0, + "statusCode": 201, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "iekc", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "5a05f63d-51a9-43c1-8f2a-35a349572e8e", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "ac5bd44c-5c64-410e-8c16-f5e2e4e3fabe", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "problems/:problemId/testcases", + "responses": [ + { + "uuid": "632f0d05-527b-4fa5-9b1b-031c13942e53", + "body": "[\n {\n \"name\": \"testcase_sample\".\n \"id\": \"{{faker 'string.uuid'}}\",\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n]", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "9h5u", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "18bca6de-b2e3-4991-b404-d41782cda3d1", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "problems/:problemId/testcases", + "responses": [ + { + "uuid": "d707e121-bc68-452c-af1f-0f2c835f6167", + "body": "{\n \"name\": \"{{body 'name'}}\",\n \"id\": \"{{body 'id'}}\",\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n}\n", + "latency": 0, + "statusCode": 201, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "6ycz", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "61603046-a5f7-435a-85c9-ec89617518a9", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "6ycz", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "f121bd0b-47cb-4c45-8dc6-600fc1c1816d", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "problems/:problemId/submissions", + "responses": [ + { + "uuid": "9713fd85-5c01-45d1-8081-9e02a517fc76", + "body": "{\n \"id\": \"{{faker 'string.uuid'}}\",\n \"userId\": \"{{faker 'string.uuid'}}\",\n \"userName\": \"{{faker 'internet.userName'}}\"\n \"problemId\": {{faker 'number.int' min=100 max=1000}},\n \"totalScore\": {{faker 'number.int' min=100 max=1000}},\n \"maxTime\": {{faker 'number.int' min=100 max=1000}},\n \"maxMemory\": {{faker 'number.float' min=100 max=1000}},\n \"codeLength\": {{faker 'number.float' min=100 max=1000}},\n \"languageId\": \"{{body 'languageId'}},\n \"overallJudgeStatus\": \"{{oneOf (array 'AC' 'WA' 'TLE' 'CE')}}\",\n \"submittedAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"judgeResults\": [\n {{#repeat 3}}\n {\n \"testcaseId\": \"{{faker 'string.uuid'}}\",\n \"testcaseName\": \"{{faker 'internet.userName'}}\",\n \"judgeStatus\": \"{{oneOf (array 'AC' 'WA' 'TLE' 'CE')}}\",\n \"score\": {{faker 'number.int' min=100 max=1000}},\n \"time\": {{faker 'number.int' min=100 max=1000}},\n \"memory\": {{faker 'number.float' min=100 max=1000}},\n }\n {{/repeat}}\n ]\n}\n", + "latency": 0, + "statusCode": 201, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "zeip", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "4ffd0b6e-fd7c-4cf9-bb9f-88cb02f99f0a", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "6ycz", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "8b00d34d-ae1c-4131-81d5-b99351e62e09", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "submissions", + "responses": [ + { + "uuid": "3cf210e3-b730-4b1a-a652-7899a949a8b8", + "body": "{\n \"total\": {{queryParam 'limit' 20}},\n \"submissions\": [\n {{#repeat (queryParam 'limit' 20)}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"userId\": \"{{faker 'string.uuid'}}\",\n \"userName\": \"{{faker 'internet.userName'}}\"\n \"problemId\": {{faker 'number.int' min=100 max=1000}},\n \"totalScore\": {{faker 'number.int' min=100 max=1000}},\n \"maxTime\": {{faker 'number.int' min=100 max=1000}},\n \"maxMemory\": {{faker 'number.float' min=100 max=1000}},\n \"codeLength\": {{faker 'number.float' min=100 max=1000}},\n \"languageId\": \"{{body 'languageId'}},\n \"judgeStatus\": \"{{oneOf (array 'AC' 'WA' 'TLE' 'CE')}}\",\n \"submittedAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n}", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "88012fdb-7b91-4bb0-bb71-449dab9a9c4e", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "submissions/:submissionId", + "responses": [ + { + "uuid": "fc3acdfa-24cc-4a96-a00d-f07861ab8b39", + "body": "{\n \"id\": \"{{urlParam 'submissionId'}}\",\n \"userId\": \"{{faker 'string.uuid'}}\",\n \"userName\": \"{{faker 'internet.userName'}}\"\n \"problemId\": {{faker 'number.int' min=100 max=1000}},\n \"totalScore\": {{faker 'number.int' min=100 max=1000}},\n \"maxTime\": {{faker 'number.int' min=100 max=1000}},\n \"maxMemory\": {{faker 'number.float' min=100 max=1000}},\n \"codeLength\": {{faker 'number.float' min=100 max=1000}},\n \"languageId\": \"{{body 'languageId'}},\n \"overallJudgeStatus\": \"{{oneOf (array 'AC' 'WA' 'TLE' 'CE')}}\",\n \"submittedAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"judgeResults\": [\n {{#repeat 3}}\n {\n \"testcaseId\": \"{{faker 'string.uuid'}}\",\n \"testcaseName\": \"{{faker 'internet.userName'}}\",\n \"judgeStatus\": \"{{oneOf (array 'AC' 'WA' 'TLE' 'CE')}}\",\n \"score\": {{faker 'number.int' min=100 max=1000}},\n \"time\": {{faker 'number.int' min=100 max=1000}},\n \"memory\": {{faker 'number.float' min=100 max=1000}},\n }\n {{/repeat}}\n ]\n}", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "861327e3-a7e8-459c-82c5-71d80c4ce275", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "users/:userId", + "responses": [ + { + "uuid": "230ffe17-478e-441f-a1a1-95b4d8aa4ef4", + "body": "{\n \"id\": \"{{faker 'string.uuid'}}\",\n \"name\": \"{{faker 'internet.userName'}}\",\n \"traqId\": \"{{faker 'internet.userName'}}\",\n \"githubId\": \"{{faker 'internet.userName'}}\",\n \"iconUrl\": \"https://randomuser.me/api/portraits/{{oneOf (array 'men' 'women')}}/{{faker 'number.int' min=1 max=99}}.jpg\",\n \"postProblems\": {\n \"total\": 5,\n \"problems\": [\n {{#repeat 5}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n },\n \"submitProblems\": {\n \"total\": 5,\n \"problems\": [\n {{#repeat 5}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n },\n \"xLink\": \"{{faker 'internet.url'}}\",\n \"githubLink\": \"https://github.com/{{faker 'internet.userName'}}\",\n \"selfIntroduction\": \"{{faker 'lorem.sentence'}}\",\n \"role\": \"{{oneOf (array 'Admin' 'traPUser' 'CommonUser')}}\"\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n}\n", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "bca29e19-cac3-4946-8f5d-530858e35112", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "users/me", + "responses": [ + { + "uuid": "9f4698ea-c88b-43c2-a2c9-5cab0838f25e", + "body": "{\n \"id\": \"{{faker 'string.uuid'}}\",\n \"name\": \"{{faker 'internet.userName'}}\",\n \"traqId\": \"{{faker 'internet.userName'}}\",\n \"githubId\": \"{{faker 'internet.userName'}}\",\n \"iconUrl\": \"https://randomuser.me/api/portraits/{{oneOf (array 'men' 'women')}}/{{faker 'number.int' min=1 max=99}}.jpg\",\n \"postProblems\": {\n \"total\": 5,\n \"problems\": [\n {{#repeat 5}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n },\n \"submitProblems\": {\n \"total\": 5,\n \"problems\": [\n {{#repeat 5}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n },\n \"xLink\": \"{{faker 'internet.url'}}\",\n \"githubLink\": \"https://github.com/{{faker 'internet.userName'}}\",\n \"selfIntroduction\": \"{{faker 'lorem.sentence'}}\",\n \"role\": \"{{oneOf (array 'Admin' 'traPUser' 'CommonUser')}}\"\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n}\n", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "9779bf5a-97d5-4546-af7a-c589e2a41a38", + "type": "http", + "documentation": "", + "method": "put", + "endpoint": "users/me", + "responses": [ + { + "uuid": "7c388738-628f-4f93-9ff7-f9d9629cbd61", + "body": "{\n \"id\": \"{{faker 'string.uuid'}}\",\n \"name\": \"{{faker 'internet.userName'}}\",\n \"traqId\": \"{{faker 'internet.userName'}}\",\n \"githubId\": \"{{faker 'internet.userName'}}\",\n \"iconUrl\": \"https://randomuser.me/api/portraits/{{oneOf (array 'men' 'women')}}/{{faker 'number.int' min=1 max=99}}.jpg\",\n \"postProblems\": {\n \"total\": 5,\n \"problems\": [\n {{#repeat 5}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n },\n \"submitProblems\": {\n \"total\": 5,\n \"problems\": [\n {{#repeat 5}}\n {\n \"id\": \"{{faker 'string.uuid'}}\",\n \"title\": \"{{faker 'lorem.sentence'}}\",\n \"authorId\": \"{{faker 'string.uuid'}}\",\n \"isPublic\": true,\n \"difficulty\": {{faker 'number.int' min=100 max=1000}},\n \"timeLimit\": 2000,\n \"memoryLimit\": 1024,\n \"solvedCount\": {{faker 'number.int' min=10 max=100}},\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n }\n {{/repeat}}\n ]\n },\n \"xLink\": \"{{faker 'internet.url'}}\",\n \"githubLink\": \"https://github.com/{{faker 'internet.userName'}}\",\n \"selfIntroduction\": \"{{faker 'lorem.sentence'}}\",\n \"role\": \"{{oneOf (array 'Admin' 'traPUser' 'CommonUser')}}\"\n \"createdAt\": \"{{date '2020-01-01' '2024-11-05' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\",\n \"updatedAt\": \"{{date '2024-11-06' '2024-11-11' 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS\\'Z\\''}}\"\n}\n", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "cmm7", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "e10920ad-6710-422c-a16c-b108fefafd60", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "cmm7", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "c048cf0e-5743-41f9-9587-cd6612f2c1f1", + "type": "http", + "documentation": "", + "method": "get", + "endpoint": "languages", + "responses": [ + { + "uuid": "6f9c5036-4eba-463a-a7a2-49a1d0b82a33", + "body": "[\n { \"id\": 1, \"name\": \"C\" },\n { \"id\": 2, \"name\": \"C++\" },\n { \"id\": 3, \"name\": \"Java\" },\n { \"id\": 4, \"name\": \"Python\" },\n { \"id\": 5, \"name\": \"JavaScript\" },\n { \"id\": 6, \"name\": \"Ruby\" },\n { \"id\": 7, \"name\": \"Swift\" },\n { \"id\": 8, \"name\": \"Go\" },\n { \"id\": 9, \"name\": \"Rust\" },\n { \"id\": 10, \"name\": \"Kotlin\" }\n]\n", + "latency": 0, + "statusCode": 200, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "2234efa7-7dd8-4739-a26a-7d9d4a43a223", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "logout", + "responses": [ + { + "uuid": "cdf29ed2-6bb6-41bf-a6a9-174c513d7624", + "body": "\"\"", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "21fa2fad-7956-4ac7-9785-a49eb041f14f", + "type": "http", + "documentation": "", + "method": "put", + "endpoint": "users/me/email", + "responses": [ + { + "uuid": "e30a1b81-a5dc-4287-9fc2-730e879ab8f3", + "body": "{\n \"status\": 204,\n \"body\": {\n \"message\": \"正常に更新されました メール認証を行なってください\"\n }\n}", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "4xdo", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "84986a04-46dc-4f14-a4b8-5290fd660ca4", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "cmm7", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "0b6e9f50-4877-422b-903f-601ee290ea37", + "type": "http", + "documentation": "", + "method": "put", + "endpoint": "users/me/password", + "responses": [ + { + "uuid": "71988104-c8f9-41c8-b5e4-6f541a8059ac", + "body": "\"\"", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "dl11", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "b30f3542-a129-4729-8617-bec3a66168ab", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "cmm7", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "7a3964bb-ba58-464c-9cbd-4bd33bee9ce8", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "signup/request", + "responses": [ + { + "uuid": "eb4ba6ff-34ca-4de1-9df1-5322d00335b5", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "ed4fd246-1a0f-49cd-9fda-db612fe352b3", + "body": "{\n \"status\": 201,\n \"body\": {\n \"message\": \"認証用のURLを送信しました メール認証を行なってください\"\n }\n}", + "latency": 0, + "statusCode": 201, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "6ab6", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "e1800ed3-c24e-437b-94a6-b5c9e1e2c2ce", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "signup", + "responses": [ + { + "uuid": "d61daffa-0288-4218-b414-8b756733ab7d", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "c899370d-bd79-4905-8bc9-2cef93ccfab3", + "body": "{\n \"status\": 201,\n \"body\": {\n \"message\": \"正常にユーザーを作成できました\"\n }\n}", + "latency": 0, + "statusCode": 201, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "x8be", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "ef97f4b7-8afd-4d4c-a560-b5c1bc8bf880", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "login", + "responses": [ + { + "uuid": "a72786b4-6c6d-4b4f-bf9c-21ba87732dd3", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "9206db1e-d245-493a-a12c-59811e306a1d", + "body": "\"\"", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "w7nf", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "6f2ce6d5-bf4d-4ce0-9e6a-d7bad2e33729", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "reset-password/request", + "responses": [ + { + "uuid": "68d91c4c-ec9d-4bdc-981a-3764be1a1fdb", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "0a232e4c-7fb5-4f73-9c25-7109bd88b9de", + "body": "\"\"", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "4xdo", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + }, + { + "uuid": "a16a737e-575e-4f75-a1fc-f3fadb1a2315", + "type": "http", + "documentation": "", + "method": "post", + "endpoint": "reset-password", + "responses": [ + { + "uuid": "4a79aec8-42db-43aa-bced-599e65dc4130", + "body": "{\n \"status\": 400,\n \"body\": {\n \"message\": \"Bad Request\"\n }\n}", + "latency": 0, + "statusCode": 400, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": true, + "crudKey": "id", + "callbacks": [] + }, + { + "uuid": "16d8cd95-3a7a-4764-afa1-effa83e8ca98", + "body": "\"\"", + "latency": 0, + "statusCode": 204, + "label": "", + "headers": [], + "bodyType": "INLINE", + "filePath": "", + "databucketID": "", + "sendFileAsBody": false, + "rules": [ + { + "target": "body", + "modifier": "$", + "value": "lrxq", + "invert": false, + "operator": "valid_json_schema" + } + ], + "rulesOperator": "OR", + "disableTemplating": false, + "fallbackTo404": false, + "default": false, + "crudKey": "id", + "callbacks": [] + } + ], + "responseMode": null, + "streamingMode": null, + "streamingInterval": 0 + } + ], + "rootChildren": [ + { + "type": "route", + "uuid": "c5caf911-66f0-4681-af4a-8a218830edf5" + }, + { + "type": "route", + "uuid": "50ff6da3-34bb-4737-a80e-a8e0d34146f4" + }, + { + "type": "route", + "uuid": "6aa1878c-5763-4a51-8957-980d8ce62a29" + }, + { + "type": "route", + "uuid": "2fabf737-e573-40c9-bd4e-c79c8880d645" + }, + { + "type": "route", + "uuid": "69337bac-92d5-4e72-823b-c891d7776b5e" + }, + { + "type": "route", + "uuid": "2df4f50d-782e-47e1-9618-e9e62a8fd7ac" + }, + { + "type": "route", + "uuid": "9abf7405-25b5-4cdb-b971-9cf5d7704523" + }, + { + "type": "route", + "uuid": "a6ec23be-6028-4ae4-b5b1-e0a736412b70" + }, + { + "type": "route", + "uuid": "3f457cd1-ba06-4f8b-a25c-50ec518a8576" + }, + { + "type": "route", + "uuid": "03d558d5-58a6-4356-b8f6-c8e537faea0f" + }, + { + "type": "route", + "uuid": "4fdf91f1-18a2-46a6-991c-6f3ccd56f0ad" + }, + { + "type": "route", + "uuid": "81eb9c4f-027c-4983-a6f8-377a9d5cd2c2" + }, + { + "type": "route", + "uuid": "a1c09cbf-2a8d-4508-8a64-8cd21b096531" + }, + { + "type": "route", + "uuid": "ac5bd44c-5c64-410e-8c16-f5e2e4e3fabe" + }, + { + "type": "route", + "uuid": "18bca6de-b2e3-4991-b404-d41782cda3d1" + }, + { + "type": "route", + "uuid": "f121bd0b-47cb-4c45-8dc6-600fc1c1816d" + }, + { + "type": "route", + "uuid": "8b00d34d-ae1c-4131-81d5-b99351e62e09" + }, + { + "type": "route", + "uuid": "88012fdb-7b91-4bb0-bb71-449dab9a9c4e" + }, + { + "type": "route", + "uuid": "861327e3-a7e8-459c-82c5-71d80c4ce275" + }, + { + "type": "route", + "uuid": "bca29e19-cac3-4946-8f5d-530858e35112" + }, + { + "type": "route", + "uuid": "9779bf5a-97d5-4546-af7a-c589e2a41a38" + }, + { + "type": "route", + "uuid": "c048cf0e-5743-41f9-9587-cd6612f2c1f1" + }, + { + "type": "route", + "uuid": "2234efa7-7dd8-4739-a26a-7d9d4a43a223" + }, + { + "type": "route", + "uuid": "21fa2fad-7956-4ac7-9785-a49eb041f14f" + }, + { + "type": "route", + "uuid": "0b6e9f50-4877-422b-903f-601ee290ea37" + }, + { + "type": "route", + "uuid": "7a3964bb-ba58-464c-9cbd-4bd33bee9ce8" + }, + { + "type": "route", + "uuid": "e1800ed3-c24e-437b-94a6-b5c9e1e2c2ce" + }, + { + "type": "route", + "uuid": "ef97f4b7-8afd-4d4c-a560-b5c1bc8bf880" + }, + { + "type": "route", + "uuid": "6f2ce6d5-bf4d-4ce0-9e6a-d7bad2e33729" + }, + { + "type": "route", + "uuid": "a16a737e-575e-4f75-a1fc-f3fadb1a2315" + } + ], + "proxyMode": false, + "proxyHost": "", + "proxyRemovePrefix": false, + "tlsOptions": { + "enabled": false, + "type": "CERT", + "pfxPath": "", + "certPath": "", + "keyPath": "", + "caPath": "", + "passphrase": "" + }, + "cors": true, + "headers": [ + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Access-Control-Allow-Origin", + "value": "*" + }, + { + "key": "Access-Control-Allow-Methods", + "value": "GET,POST,PUT,PATCH,DELETE,HEAD,OPTIONS" + }, + { + "key": "Access-Control-Allow-Headers", + "value": "Content-Type, Origin, Accept, Authorization, Content-Length, X-Requested-With" + } + ], + "proxyReqHeaders": [ + { + "key": "", + "value": "" + } + ], + "proxyResHeaders": [ + { + "key": "", + "value": "" + } + ], + "data": [ + { + "uuid": "d72c99dd-1aff-4e07-880a-42c81fee72ab", + "id": "jljx", + "name": "PutEditorialRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"statement\": { \"type\": \"string\" },\n \"isPublic\": { \"type\": \"boolean\" }\n },\n \"required\": [\"statement\", \"isPublic\"]\n}" + }, + { + "uuid": "82c4b793-6868-489d-9eaf-c84fb08aecaf", + "id": "nfur", + "name": "PutTestcaseRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"name\": {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n },\n \"testInput\": {\n \"type\": \"string\"\n },\n \"testOutput\": {\n \"type\": \"string\"\n },\n \"createdAt\": {\n \"type\": \"string\"\n },\n \"updatedAt\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"name\",\n \"id\",\n \"testInput\",\n \"testOutput\"\n ]\n}" + }, + { + "uuid": "395403f5-23ae-4883-97da-4753aedd4883", + "id": "alf4", + "name": "Test", + "documentation": "", + "value": "[\n {\n \"test\": \"test\"\n }\n]\n" + }, + { + "uuid": "4dbf43e1-fa80-4c85-b527-8c126dd9959e", + "id": "9ht6", + "name": "Test2", + "documentation": "", + "value": "{\n \"test\": \"test\"\n}" + }, + { + "uuid": "d7d43a9e-76bd-4e08-aaeb-816191acec20", + "id": "hvie", + "name": "Test3", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"properties\": {\n \"name\": { \"type\": \"string\" },\n \"age\": { \"type\": \"number\" }\n },\n \"required\": [\"name\"]\n}" + }, + { + "uuid": "f15166c4-946d-4491-b04e-a0564cd9d788", + "id": "9h5u", + "name": "Problems", + "documentation": "", + "value": "" + }, + { + "uuid": "771c0e23-23bb-4c32-97c7-caa04d6870a3", + "id": "3yxo", + "name": "PostProblemRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"title\": {\n \"type\": \"string\"\n },\n \"difficulty\": {\n \"type\": \"integer\"\n },\n \"statement\": {\n \"type\": \"string\"\n },\n \"timeLimit\": {\n \"type\": \"integer\"\n },\n \"memoryLimit\": {\n \"type\": \"integer\"\n }\n },\n \"required\": [\n \"title\",\n \"difficulty\",\n \"statement\",\n \"timeLimit\",\n \"memoryLimit\"\n ]\n}" + }, + { + "uuid": "c7888dea-60b1-469d-8142-57e86af4006b", + "id": "sc5i", + "name": "PutProblemRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"title\": {\n \"type\": \"string\"\n },\n \"isPublic\": {\n \"type\": \"boolean\"\n },\n \"difficulty\": {\n \"type\": \"integer\"\n },\n \"statement\": {\n \"type\": \"string\"\n },\n \"timeLimit\": {\n \"type\": \"integer\"\n },\n \"memoryLimit\": {\n \"type\": \"integer\"\n }\n },\n \"required\": [\n \"title\",\n \"difficulty\",\n \"isPublic\",\n \"timeLimit\",\n \"memoryLimit\"\n ]\n}" + }, + { + "uuid": "2553879b-0c16-4d6f-9b9e-105c3a6c962a", + "id": "iekc", + "name": "PostEditorialRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"statement\": { \"type\": \"string\" },\n \"isPublic\": { \"type\": \"boolean\" }\n },\n \"required\": [\"statement\", \"isPublic\"]\n}" + }, + { + "uuid": "95eb86db-f407-45e9-8b43-6283761e596d", + "id": "6ycz", + "name": "PostTestcaseRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"name\": { \"type\": \"string\" },\n \"testInput\": { \"type\": \"string\" },\n \"testOutput\": { \"type\": \"string\" }\n },\n \"required\": [\"name\", \"testInput\", \"testOutput\"]\n}" + }, + { + "uuid": "bfd940e8-2328-4f70-8c7a-82c019a2a073", + "id": "zeip", + "name": "PostSubmissionRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"languageId\": { \"type\": \"integer\" },\n \"source\": { \"type\": \"string\" }\n },\n \"required\": [\"languageId\"]\n}" + }, + { + "uuid": "d32cdb07-bb4b-49ba-9fe4-727404c3459d", + "id": "cmm7", + "name": "PutMeRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"userName\": { \"type\": \"string\" },\n \"icon\": { \"type\": \"string\" },\n \"xLink\": { \"type\": \"string\" },\n \"githubLink\": { \"type\": \"string\" },\n \"selfIntroduction\": { \"type\": \"string\" }\n }\n}" + }, + { + "uuid": "4e267faf-66d3-4333-8f99-84c65d26c7e9", + "id": "4xdo", + "name": "Email", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"email\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\"email\"]\n}" + }, + { + "uuid": "77f53f4c-eb78-49fd-a6c6-41b832420c63", + "id": "dl11", + "name": "PutPasswordRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"oldPassword\": { \"type\": \"string\" },\n \"newPassword\": { \"type\": \"string\" }\n },\n \"required\": [\"oldPassword\", \"newPassword\"]\n}" + }, + { + "uuid": "76b59c4a-a3e5-4637-9413-5afa4f9fe588", + "id": "6ab6", + "name": "SignupRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"email\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\"email\"]\n}" + }, + { + "uuid": "8b8e9e18-ab42-462b-8314-c532769a8540", + "id": "x8be", + "name": "Signup", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"userName\": {\n \"type\": \"string\"\n },\n \"password\": {\n \"type\": \"string\"\n },\n \"token\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"userName\",\n \"password\",\n \"token\"\n ]\n}" + }, + { + "uuid": "524b101e-ea57-4310-a419-becab66f392e", + "id": "w7nf", + "name": "UserEmailAndPassword", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"email\": {\n \"type\": \"string\"\n },\n \"password\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\"email\", \"password\"]\n}" + }, + { + "uuid": "282df5b6-d4ab-4df4-a8a0-a1b9050a1e8a", + "id": "lrxq", + "name": "ResetPasswordRequest", + "documentation": "", + "value": "{\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"password\": {\n \"type\": \"string\"\n },\n \"token\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"password\",\n \"token\"\n ]\n}" + } + ], + "callbacks": [] +} \ No newline at end of file