> ## Documentation Index
> Fetch the complete documentation index at: https://developers.vidbeo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create JWT key

> Create a new JWT key



## OpenAPI

````yaml post /jwt_keys
openapi: 3.0.3
info:
  title: Video API
  description: Use our Video API to handle your video storage, transcoding and delivery.
  contact:
    name: Vidbeo Support
    url: https://www.vidbeo.com
    email: support@vidbeo.com
  version: 2.0.0
servers:
  - url: https://api.vidbeo.com/v2
security:
  - bearerAuth: []
tags:
  - name: Analytics
  - name: API keys
  - name: Audit logs
  - name: Categories
  - name: Folders
  - name: Identity providers
  - name: Invites
  - name: JWT keys
  - name: Players
  - name: Services
  - name: Stream keys
  - name: Tokens
  - name: Transcribes
  - name: Uploads
  - name: Users
  - name: Videos
paths:
  /jwt_keys:
    post:
      tags:
        - JWT keys
      summary: Create JWT key
      description: Create a new JWT key
      requestBody:
        $ref: '#/components/requestBodies/JwtKey'
      responses:
        '200':
          $ref: '#/components/responses/JwtKey'
        '400':
          $ref: '#/components/responses/Error400'
components:
  requestBodies:
    JwtKey:
      required: true
      content:
        application/json:
          schema:
            type: object
            properties:
              name:
                type: string
                minLength: 1
                maxLength: 40
                example: Example
              public_key:
                description: >-
                  The public half of the private/public key-pair which is the
                  certificate used to verify the JWT
                type: string
                minLength: 1
                maxLength: 500
                example: |-
                  ----- BEGIN PUBLIC KEY -----
                  MIIII...
  responses:
    JwtKey:
      description: JWT key
      content:
        application/json:
          schema:
            type: object
            required:
              - success
              - result
              - links
              - errors
            properties:
              success:
                type: boolean
                example: true
              result:
                $ref: '#/components/schemas/JwtKey'
              links:
                type: object
                example: {}
              errors:
                type: array
                items:
                  type: object
                minLength: 0
                maxLength: 0
                example: []
    Error400:
      description: Invalid request
      content:
        application/json:
          schema:
            type: object
            required:
              - success
              - result
              - links
              - errors
            properties:
              success:
                type: boolean
                example: false
              result:
                type: object
                example: {}
              links:
                type: object
                example: {}
              errors:
                type: array
                items:
                  type: object
                  properties:
                    message:
                      type: string
                      example: Invalid data sent
            example:
              success: false
              result: {}
              links: {}
              errors:
                - message: Invalid data sent
  schemas:
    JwtKey:
      type: object
      required:
        - id
        - name
        - public_key
        - created_by
        - created_time
        - updated_by
        - updated_time
      properties:
        id:
          type: string
          minLength: 21
          maxLength: 21
          example: abcde12345abcde12345a
        name:
          type: string
          minLength: 1
          maxLength: 40
          example: Example
        public_key:
          type: string
          minLength: 1
          maxLength: 500
          example: |-
            ----- BEGIN PUBLIC KEY -----
            MIIII...
        created_by:
          type: string
          minLength: 21
          maxLength: 21
          example: abcde12345abcde12345a
        created_time:
          type: string
          format: date-time
          example: '2024-01-01T00:00:00.000Z'
        updated_by:
          type: string
          minLength: 21
          maxLength: 21
          example: abcde12345abcde12345a
        updated_time:
          type: string
          format: date-time
          example: '2024-01-01T00:00:00.000Z'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````