openapi: 3.0.3 info: title: Hex.pm API Keys Authentication API description: REST API for the Hex.pm package registry, providing endpoints to search and retrieve package metadata, manage releases, handle authentication, manage API keys, and administer organizations and package ownership. The API supports JSON and Erlang media types. version: 1.0.0 contact: name: Hex Support email: support@hex.pm url: https://hex.pm/docs termsOfService: https://hex.pm/policies/terms license: name: Hex.pm Terms of Service url: https://hex.pm/policies/terms servers: - url: https://hex.pm/api description: Hex.pm Production API security: - ApiKeyAuth: [] tags: - name: Authentication description: Authentication verification. paths: /auth: get: operationId: verifyAuthentication summary: Verify Authentication description: Verifies that the current authentication credentials are valid. tags: - Authentication responses: '200': description: Authentication is valid. content: application/json: schema: type: object properties: authed_as: type: string description: The username authenticated as. '401': description: Authentication failed. content: application/json: schema: $ref: '#/components/schemas/Error' components: schemas: Error: type: object properties: status: type: integer message: type: string errors: type: object additionalProperties: type: string required: - status - message securitySchemes: ApiKeyAuth: type: apiKey in: header name: Authorization description: 'API token authentication. Pass the token directly: `Authorization: token`. For OAuth2 Bearer tokens use: `Authorization: Bearer token`.' BearerAuth: type: http scheme: bearer description: OAuth2 Bearer token obtained via Device Authorization Grant (RFC 8628). BasicAuth: type: http scheme: basic description: Deprecated. Basic authentication with username and password. Only allowed on specific endpoints for generating API tokens. externalDocs: description: Hex.pm API Documentation url: https://hex.pm/docs/api