view api/server/ui/swagger.json @ 196:b67208d82543

Make test output more comprehensive Running all tests in one transaction ensures the final output tells about any failing test, not just in the last transaction (i.e. test script). The price is that no traces of the tests are left in the database because we have to rollback in order to have no left-over test roles in the cluster.
author Tom Gottfried <tom@intevation.de>
date Fri, 20 Jul 2018 18:31:45 +0200
parents 9fcfccb18b16
children
line wrap: on
line source

{
  "openapi": "3.0.0",
  "info": {
    "version": "1.0.0",
    "title": "Gemma",
    "description": "API draft of gemma backend"
  },
  "servers": [
    {
      "url": "http://localhost:8000"
    }
  ],
  "tags": [
    {
      "name": "users",
      "description": "User related stuff"
    },
    {
      "name": "auth",
      "description": "Login logout"
    },
    {
      "name": "health",
      "description": "Everything considered health"
    },
    {
      "name": "management",
      "description": "Everything about management"
    },
    {
      "name": "templates",
      "description": "Everything about templates"
    }
  ],
  "paths": {
    "/users": {
      "get": {
        "summary": "Get list of users",
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "users"
        ]
      },
      "post": {
        "summary": "Create a new user",
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "users"
        ]
      }
    },
    "/users/{id}": {
      "get": {
        "summary": "Get user with id",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "integer"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "users"
        ]
      },
      "put": {
        "summary": "Update user with id",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "integer"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "users"
        ]
      },
      "patch": {
        "summary": "Partially update user with id",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "integer"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "users"
        ]
      },
      "delete": {
        "summary": "Delete user with id",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "integer"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "users"
        ]
      }
    },
    "/users/{id}/passwordreset": {
      "post": {
        "summary": "Reset password for user with id",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "integer"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "users"
        ]
      }
    },
    "/login": {
      "get": {
        "summary": "Authenticates user",
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "auth"
        ]
      }
    },
    "/logout": {
      "get": {
        "summary": "Deauthenticates user",
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "auth"
        ]
      }
    },
    "/health/hardware": {
      "get": {
        "summary": "Access hardware logs",
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "health"
        ]
      }
    },
    "/health/system": {
      "get": {
        "summary": "Access sytem eventlogs",
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "health"
        ]
      }
    },
    "/health/access": {
      "get": {
        "summary": "Access the access logs",
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "health"
        ]
      }
    },
    "/health/sendtestmail": {
      "post": {
        "summary": "Send testemail",
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "health"
        ]
      }
    },
    "/management": {
      "get": {
        "summary": "Get the current system settings",
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "management"
        ]
      },
      "put": {
        "summary": "Update the current system settings",
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "management"
        ]
      },
      "patch": {
        "summary": "Partially update the current system settings",
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "management"
        ]
      }
    },
    "/templates": {
      "get": {
        "summary": "Get the templates",
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "templates"
        ]
      },
      "post": {
        "summary": "Create template",
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "templates"
        ]
      }
    },
    "/templates/{id}": {
      "get": {
        "summary": "Get template with id",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "integer"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "templates"
        ]
      },
      "put": {
        "summary": "Update template with id",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "integer"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "templates"
        ]
      },
      "patch": {
        "summary": "Partially update template with id",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "integer"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "templates"
        ]
      },
      "delete": {
        "summary": "Delete template with id",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "integer"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Success response"
          }
        },
        "tags": [
          "templates"
        ]
      }
    },
    "/maps": {
      "get": {
        "summary": "Everything about maps",
        "responses": {
          "200": {
            "description": "Success response"
          }
        }
      }
    },
    "/search": {
      "get": {
        "summary": "Search",
        "responses": {
          "200": {
            "description": "Success response"
          }
        }
      }
    },
    "/bottlenecks": {
      "get": {
        "summary": "Search",
        "responses": {
          "200": {
            "description": "Success response"
          }
        }
      }
    }
  }
}