{
  "openapi": "3.0.3",
  "info": {
    "title": "sondahub Infisical sandbox",
    "version": "0.14.2",
    "description": "An independent imitation of Infisical’s API for testing, run by sondahub — not affiliated with or endorsed by Infisical. No Infisical account is involved and nothing is encrypted.\n\nAuth: log in with Universal Auth (clientId 9e3779b1-ccd0-8520-64cf-8f988c2ee30a, clientSecret sondahub-infisical-sandbox-client-secret — or any UUID and any secret) and send the accessToken as a bearer token. The site URL is https://api.sondahub.com itself (also https://api.sondahub.com/sandbox/infisical).\n\nWrites live in the X-Sondahub-Session token each answer carries: send the newest one back as a header and the next request sees what you made; without it every request starts from the seed. More at https://sondahub.com/sandboxes/infisical/",
    "contact": {
      "name": "sondahub",
      "url": "https://sondahub.com/sandboxes/infisical/"
    }
  },
  "externalDocs": {
    "description": "The sandbox, in full",
    "url": "https://sondahub.com/sandboxes/infisical/"
  },
  "servers": [
    {
      "url": "https://api.sondahub.com"
    }
  ],
  "security": [
    {
      "bearer": []
    }
  ],
  "tags": [
    {
      "name": "Auth",
      "description": "Universal Auth for a machine identity."
    },
    {
      "name": "Secrets",
      "description": "The raw secrets API."
    },
    {
      "name": "Folders",
      "description": "Folders inside an environment."
    },
    {
      "name": "Imports",
      "description": "A folder that reads another folder’s secrets."
    },
    {
      "name": "Projects",
      "description": "Projects (workspaces) and their environments."
    }
  ],
  "paths": {
    "/api/v1/auth/universal-auth/login": {
      "post": {
        "tags": [
          "Auth"
        ],
        "summary": "Log in",
        "operationId": "UniversalAuthLogin",
        "description": "accessToken (two hours), for Authorization: Bearer.",
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          }
        },
        "security": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "clientId": {
                    "type": "string",
                    "description": "The identity’s client id (any UUID; the published one has its secret checked).",
                    "example": "9e3779b1-ccd0-8520-64cf-8f988c2ee30a"
                  },
                  "clientSecret": {
                    "type": "string",
                    "description": "Its secret.",
                    "example": "sondahub-infisical-sandbox-client-secret"
                  }
                },
                "required": [
                  "clientId",
                  "clientSecret"
                ],
                "example": {
                  "clientId": "9e3779b1-ccd0-8520-64cf-8f988c2ee30a",
                  "clientSecret": "sondahub-infisical-sandbox-client-secret"
                }
              },
              "example": {
                "clientId": "9e3779b1-ccd0-8520-64cf-8f988c2ee30a",
                "clientSecret": "sondahub-infisical-sandbox-client-secret"
              }
            }
          }
        }
      }
    },
    "/api/v1/auth/token/renew": {
      "post": {
        "tags": [
          "Auth"
        ],
        "summary": "Renew a token",
        "operationId": "RenewToken",
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          }
        },
        "security": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accessToken": {
                    "type": "string",
                    "description": "The token."
                  }
                },
                "required": [
                  "accessToken"
                ],
                "example": {
                  "accessToken": "<accessToken>"
                }
              },
              "example": {
                "accessToken": "<accessToken>"
              }
            }
          }
        }
      }
    },
    "/api/v3/secrets/raw": {
      "get": {
        "tags": [
          "Secrets"
        ],
        "summary": "List secrets",
        "operationId": "ListSecretsRaw",
        "parameters": [
          {
            "name": "workspaceId",
            "in": "query",
            "required": false,
            "description": "The project id.",
            "schema": {
              "type": "string"
            },
            "example": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b"
          },
          {
            "name": "environment",
            "in": "query",
            "required": false,
            "description": "The environment slug: dev, staging, prod.",
            "schema": {
              "type": "string"
            },
            "example": "dev"
          },
          {
            "name": "secretPath",
            "in": "query",
            "required": false,
            "description": "The folder.",
            "schema": {
              "type": "string"
            },
            "example": "/"
          },
          {
            "name": "expandSecretReferences",
            "in": "query",
            "required": false,
            "description": "Resolve ${…} references.",
            "schema": {
              "type": "string"
            },
            "example": "true"
          },
          {
            "name": "recursive",
            "in": "query",
            "required": false,
            "description": "Folders below too.",
            "schema": {
              "type": "string"
            },
            "example": "false"
          },
          {
            "name": "include_imports",
            "in": "query",
            "required": false,
            "description": "The imported folders’ secrets, under imports.",
            "schema": {
              "type": "string"
            },
            "example": "true"
          },
          {
            "name": "tagSlugs",
            "in": "query",
            "required": false,
            "description": "Only with these tags.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          },
          "404": {
            "$ref": "#/components/responses/E404"
          }
        }
      }
    },
    "/api/v3/secrets/raw/{secretName}": {
      "get": {
        "tags": [
          "Secrets"
        ],
        "summary": "Get a secret",
        "operationId": "GetSecretRaw",
        "parameters": [
          {
            "name": "secretName",
            "in": "path",
            "required": true,
            "description": "The secret’s key.",
            "schema": {
              "type": "string"
            },
            "example": "DATABASE_URL"
          },
          {
            "name": "workspaceId",
            "in": "query",
            "required": false,
            "description": "The project id.",
            "schema": {
              "type": "string"
            },
            "example": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b"
          },
          {
            "name": "environment",
            "in": "query",
            "required": false,
            "description": "The environment slug: dev, staging, prod.",
            "schema": {
              "type": "string"
            },
            "example": "dev"
          },
          {
            "name": "secretPath",
            "in": "query",
            "required": false,
            "description": "The folder.",
            "schema": {
              "type": "string"
            },
            "example": "/"
          },
          {
            "name": "expandSecretReferences",
            "in": "query",
            "required": false,
            "description": "Resolve references.",
            "schema": {
              "type": "string"
            },
            "example": "true"
          },
          {
            "name": "version",
            "in": "query",
            "required": false,
            "description": "An earlier version.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "type",
            "in": "query",
            "required": false,
            "description": "shared or personal.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          },
          "404": {
            "$ref": "#/components/responses/E404"
          }
        }
      },
      "post": {
        "tags": [
          "Secrets"
        ],
        "summary": "Create a secret",
        "operationId": "CreateSecretRaw",
        "parameters": [
          {
            "name": "secretName",
            "in": "path",
            "required": true,
            "description": "The secret’s key.",
            "schema": {
              "type": "string"
            },
            "example": "QUEUE_URL"
          }
        ],
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          },
          "404": {
            "$ref": "#/components/responses/E404"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "workspaceId": {
                    "type": "string",
                    "description": "",
                    "example": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b"
                  },
                  "environment": {
                    "type": "string",
                    "description": "",
                    "example": "dev"
                  },
                  "secretPath": {
                    "type": "string",
                    "description": "",
                    "example": "/"
                  },
                  "secretValue": {
                    "type": "string",
                    "description": "",
                    "example": "redis://localhost:6379/1"
                  },
                  "secretComment": {
                    "type": "string",
                    "description": ""
                  },
                  "type": {
                    "type": "string",
                    "description": "shared or personal."
                  },
                  "tagIds": {
                    "type": "array",
                    "description": "",
                    "items": {}
                  }
                },
                "required": [
                  "workspaceId",
                  "environment",
                  "secretValue"
                ],
                "example": {
                  "workspaceId": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b",
                  "environment": "dev",
                  "secretPath": "/",
                  "secretValue": "redis://localhost:6379/1",
                  "secretComment": "The job queue",
                  "type": "shared"
                }
              },
              "example": {
                "workspaceId": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b",
                "environment": "dev",
                "secretPath": "/",
                "secretValue": "redis://localhost:6379/1",
                "secretComment": "The job queue",
                "type": "shared"
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Secrets"
        ],
        "summary": "Update a secret",
        "operationId": "UpdateSecretRaw",
        "parameters": [
          {
            "name": "secretName",
            "in": "path",
            "required": true,
            "description": "The secret’s key.",
            "schema": {
              "type": "string"
            },
            "example": "LOG_LEVEL"
          }
        ],
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          },
          "404": {
            "$ref": "#/components/responses/E404"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "workspaceId": {
                    "type": "string",
                    "description": ""
                  },
                  "environment": {
                    "type": "string",
                    "description": ""
                  },
                  "secretPath": {
                    "type": "string",
                    "description": ""
                  },
                  "secretValue": {
                    "type": "string",
                    "description": ""
                  },
                  "newSecretName": {
                    "type": "string",
                    "description": "Rename it."
                  }
                },
                "required": [
                  "workspaceId",
                  "environment"
                ],
                "example": {
                  "workspaceId": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b",
                  "environment": "staging",
                  "secretPath": "/",
                  "secretValue": "debug"
                }
              },
              "example": {
                "workspaceId": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b",
                "environment": "staging",
                "secretPath": "/",
                "secretValue": "debug"
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Secrets"
        ],
        "summary": "Delete a secret",
        "operationId": "DeleteSecretRaw",
        "parameters": [
          {
            "name": "secretName",
            "in": "path",
            "required": true,
            "description": "The secret’s key.",
            "schema": {
              "type": "string"
            },
            "example": "SENDGRID_API_KEY"
          }
        ],
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          },
          "404": {
            "$ref": "#/components/responses/E404"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "workspaceId": {
                    "type": "string",
                    "description": ""
                  },
                  "environment": {
                    "type": "string",
                    "description": ""
                  },
                  "secretPath": {
                    "type": "string",
                    "description": ""
                  }
                },
                "required": [
                  "workspaceId",
                  "environment"
                ],
                "example": {
                  "workspaceId": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b",
                  "environment": "staging",
                  "secretPath": "/"
                }
              },
              "example": {
                "workspaceId": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b",
                "environment": "staging",
                "secretPath": "/"
              }
            }
          }
        }
      }
    },
    "/api/v3/secrets/batch/raw": {
      "post": {
        "tags": [
          "Secrets"
        ],
        "summary": "Create several",
        "operationId": "CreateSecretsBatchRaw",
        "description": "All or nothing. PATCH and DELETE on the same path update and delete in a batch.",
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          },
          "404": {
            "$ref": "#/components/responses/E404"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "workspaceId": {
                    "type": "string",
                    "description": ""
                  },
                  "environment": {
                    "type": "string",
                    "description": ""
                  },
                  "secretPath": {
                    "type": "string",
                    "description": ""
                  },
                  "secrets": {
                    "type": "array",
                    "description": "{secretKey, secretValue, secretComment}.",
                    "items": {}
                  }
                },
                "required": [
                  "workspaceId",
                  "environment",
                  "secrets"
                ],
                "example": {
                  "workspaceId": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b",
                  "environment": "dev",
                  "secretPath": "/",
                  "secrets": [
                    {
                      "secretKey": "A",
                      "secretValue": "1"
                    },
                    {
                      "secretKey": "B",
                      "secretValue": "2"
                    }
                  ]
                }
              },
              "example": {
                "workspaceId": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b",
                "environment": "dev",
                "secretPath": "/",
                "secrets": [
                  {
                    "secretKey": "A",
                    "secretValue": "1"
                  },
                  {
                    "secretKey": "B",
                    "secretValue": "2"
                  }
                ]
              }
            }
          }
        }
      }
    },
    "/api/v4/secrets": {
      "get": {
        "tags": [
          "Secrets"
        ],
        "summary": "List secrets (v4)",
        "operationId": "ListSecretsV4",
        "description": "The v4 paths take projectId; the rest is as v3 raw: /api/v4/secrets/{secretName} to get, create, update and delete, /api/v4/secrets/batch.",
        "parameters": [
          {
            "name": "projectId",
            "in": "query",
            "required": false,
            "description": "The project id.",
            "schema": {
              "type": "string"
            },
            "example": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b"
          },
          {
            "name": "environment",
            "in": "query",
            "required": false,
            "description": "The environment slug: dev, staging, prod.",
            "schema": {
              "type": "string"
            },
            "example": "dev"
          },
          {
            "name": "secretPath",
            "in": "query",
            "required": false,
            "description": "The folder.",
            "schema": {
              "type": "string"
            },
            "example": "/"
          }
        ],
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          },
          "404": {
            "$ref": "#/components/responses/E404"
          }
        }
      }
    },
    "/api/v2/folders": {
      "get": {
        "tags": [
          "Folders"
        ],
        "summary": "List folders",
        "operationId": "ListFolders",
        "parameters": [
          {
            "name": "projectId",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            },
            "example": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b"
          },
          {
            "name": "environment",
            "in": "query",
            "required": false,
            "description": "The environment slug: dev, staging, prod.",
            "schema": {
              "type": "string"
            },
            "example": "prod"
          },
          {
            "name": "path",
            "in": "query",
            "required": false,
            "description": "The parent.",
            "schema": {
              "type": "string"
            },
            "example": "/"
          }
        ],
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          },
          "404": {
            "$ref": "#/components/responses/E404"
          }
        }
      },
      "post": {
        "tags": [
          "Folders"
        ],
        "summary": "Create a folder",
        "operationId": "CreateFolder",
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          },
          "404": {
            "$ref": "#/components/responses/E404"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "projectId": {
                    "type": "string",
                    "description": ""
                  },
                  "environment": {
                    "type": "string",
                    "description": ""
                  },
                  "name": {
                    "type": "string",
                    "description": ""
                  },
                  "path": {
                    "type": "string",
                    "description": "The parent."
                  }
                },
                "required": [
                  "projectId",
                  "environment",
                  "name"
                ],
                "example": {
                  "projectId": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b",
                  "environment": "dev",
                  "name": "queues",
                  "path": "/"
                }
              },
              "example": {
                "projectId": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b",
                "environment": "dev",
                "name": "queues",
                "path": "/"
              }
            }
          }
        }
      }
    },
    "/api/v2/folders/{folderIdOrName}": {
      "delete": {
        "tags": [
          "Folders"
        ],
        "summary": "Delete a folder",
        "operationId": "DeleteFolder",
        "description": "With everything in it.",
        "parameters": [
          {
            "name": "folderIdOrName",
            "in": "path",
            "required": true,
            "description": "Its id, or its name with path.",
            "schema": {
              "type": "string"
            },
            "example": "database"
          }
        ],
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          },
          "404": {
            "$ref": "#/components/responses/E404"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "projectId": {
                    "type": "string",
                    "description": ""
                  },
                  "environment": {
                    "type": "string",
                    "description": ""
                  },
                  "path": {
                    "type": "string",
                    "description": ""
                  }
                },
                "example": {
                  "projectId": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b",
                  "environment": "staging",
                  "path": "/"
                }
              },
              "example": {
                "projectId": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b",
                "environment": "staging",
                "path": "/"
              }
            }
          }
        }
      }
    },
    "/api/v1/secret-imports": {
      "get": {
        "tags": [
          "Imports"
        ],
        "summary": "List imports",
        "operationId": "ListSecretImports",
        "parameters": [
          {
            "name": "workspaceId",
            "in": "query",
            "required": false,
            "description": "The project id.",
            "schema": {
              "type": "string"
            },
            "example": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b"
          },
          {
            "name": "environment",
            "in": "query",
            "required": false,
            "description": "The environment slug: dev, staging, prod.",
            "schema": {
              "type": "string"
            },
            "example": "prod"
          },
          {
            "name": "path",
            "in": "query",
            "required": false,
            "description": "The folder.",
            "schema": {
              "type": "string"
            },
            "example": "/"
          }
        ],
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          },
          "404": {
            "$ref": "#/components/responses/E404"
          }
        }
      },
      "post": {
        "tags": [
          "Imports"
        ],
        "summary": "Create an import",
        "operationId": "CreateSecretImport",
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          },
          "404": {
            "$ref": "#/components/responses/E404"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "workspaceId": {
                    "type": "string",
                    "description": ""
                  },
                  "environment": {
                    "type": "string",
                    "description": ""
                  },
                  "path": {
                    "type": "string",
                    "description": ""
                  },
                  "import": {
                    "type": "object",
                    "description": "{environment, path}."
                  }
                },
                "example": {
                  "workspaceId": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b",
                  "environment": "staging",
                  "path": "/",
                  "import": {
                    "environment": "staging",
                    "path": "/database"
                  }
                }
              },
              "example": {
                "workspaceId": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b",
                "environment": "staging",
                "path": "/",
                "import": {
                  "environment": "staging",
                  "path": "/database"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/workspace": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "List projects",
        "operationId": "ListProjects",
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/E401"
          }
        }
      }
    },
    "/api/v1/workspace/{workspaceId}": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "Get a project",
        "operationId": "GetProject",
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "description": "The project id.",
            "schema": {
              "type": "string"
            },
            "example": "9e3779b1-8889-ed6a-7bdb-82e5f94b1a0b"
          }
        ],
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          },
          "404": {
            "$ref": "#/components/responses/E404"
          }
        }
      }
    },
    "/api/v2/workspace": {
      "post": {
        "tags": [
          "Projects"
        ],
        "summary": "Create a project",
        "operationId": "CreateProject",
        "responses": {
          "200": {
            "description": "The object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/E400"
          },
          "401": {
            "$ref": "#/components/responses/E401"
          },
          "404": {
            "$ref": "#/components/responses/E404"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "projectName": {
                    "type": "string",
                    "description": ""
                  },
                  "slug": {
                    "type": "string",
                    "description": ""
                  }
                },
                "required": [
                  "projectName"
                ],
                "example": {
                  "projectName": "Worker"
                }
              },
              "example": {
                "projectName": "Worker"
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "bearer": {
        "type": "http",
        "scheme": "bearer",
        "description": "The accessToken from Universal Auth."
      }
    },
    "responses": {
      "E400": {
        "description": "BadRequest.",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "reqId": {
                  "type": "string"
                },
                "statusCode": {
                  "type": "integer"
                },
                "message": {
                  "type": "string"
                },
                "error": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "E401": {
        "description": "UnauthorizedError.",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "reqId": {
                  "type": "string"
                },
                "statusCode": {
                  "type": "integer"
                },
                "message": {
                  "type": "string"
                },
                "error": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "E404": {
        "description": "NotFound.",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "reqId": {
                  "type": "string"
                },
                "statusCode": {
                  "type": "integer"
                },
                "message": {
                  "type": "string"
                },
                "error": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    }
  }
}