Docs API reference

neoserver 0.1.2

Create API key

POST /api/v1/workspaces/{workspace}/apikeys · API Keys

← All operations and schemas
POST /api/v1/workspaces/{workspace}/apikeys

Creates a new API key. The full key is only returned once on creation.

Operation ID: createAPIKey

Authentication

Use one of the following authentication options. Permissions and workspace scope still apply. See authentication and access control.

  • Authorization: Bearer YOUR_ACCESS_TOKEN
  • X-API-Key: YOUR_API_KEY

Parameters

workspace path required

Workspace ID

string

Request body

Required

API key to create

Content type application/json

object
expires_at string · date-time
name string required
owner_email string
owner_name string
role_id string required
Allowed values
["admin","editor","viewer"]

Responses

201 Created API key with secret

Content type application/json

400 Bad Request

Content type application/json

401 Unauthorized

Content type application/json

403 Forbidden

Content type application/json

413 Request body exceeds the configured limit

Content type application/json

426 HTTPS required

Content type application/json

429 Request rate exceeded

Content type application/json

503 Service temporarily unavailable

Content type application/json

OpenAPI operation definition
{
  "description": "Creates a new API key. The full key is only returned once on creation.",
  "operationId": "createAPIKey",
  "parameters": [
    {
      "description": "Workspace ID",
      "in": "path",
      "name": "workspace",
      "required": true,
      "schema": {
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "properties": {
            "expires_at": {
              "format": "date-time",
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "owner_email": {
              "type": "string"
            },
            "owner_name": {
              "type": "string"
            },
            "role_id": {
              "enum": [
                "admin",
                "editor",
                "viewer"
              ],
              "type": "string"
            }
          },
          "required": [
            "name",
            "role_id"
          ],
          "type": "object"
        }
      }
    },
    "description": "API key to create",
    "required": true
  },
  "responses": {
    "201": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/APIKeyWithSecret"
          }
        }
      },
      "description": "Created API key with secret"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Error"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Error"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Error"
          }
        }
      },
      "description": "Forbidden"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Error"
          }
        }
      },
      "description": "Request body exceeds the configured limit"
    },
    "426": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Error"
          }
        }
      },
      "description": "HTTPS required"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Error"
          }
        }
      },
      "description": "Request rate exceeded"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Error"
          }
        }
      },
      "description": "Service temporarily unavailable"
    }
  },
  "summary": "Create API key",
  "tags": [
    "API Keys"
  ]
}

Search documentation

Type to search guides and reference pages.