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

# Create Secret

> Creates a new secret for the specified project. Secrets are encrypted and stored securely.



## OpenAPI

````yaml /api-reference/openapi.json post /v1/projects/secrets
openapi: 3.0.1
info:
  title: Hamsa API
  description: Trying out our transcription and media-to-text APIs
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.tryhamsa.com
security: []
paths:
  /v1/projects/secrets:
    post:
      summary: Create a Secret
      description: >-
        Creates a new secret for the specified project. Secrets are encrypted
        and stored securely.
      requestBody:
        description: Request body containing the secret data
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateSecretRequestBody'
      responses:
        '201':
          description: Secret created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateSecretResponse'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchema'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchema'
        '409':
          description: Secret with the same name already exists
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchema'
        '500':
          description: Server Side Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchema'
      security:
        - ApiKeyAuth: []
        - ApiKeyAuth: []
components:
  schemas:
    CreateSecretRequestBody:
      type: object
      required:
        - name
        - value
      properties:
        name:
          type: string
          description: The name of the secret.
          example: API_KEY
        value:
          type: string
          description: The secret value to store.
          example: super-secret-value
        description:
          type: string
          description: An optional description of the secret.
          example: Production API key
        tags:
          type: array
          description: Optional tags to categorize the secret.
          items:
            type: string
          example:
            - production
            - api
    CreateSecretResponse:
      type: object
      properties:
        success:
          type: boolean
          example: true
        message:
          type: string
          example: success
        data:
          type: object
          properties:
            id:
              type: string
              example: ed9b5601-f731-441a-8500-d9fc7610ef8f
            name:
              type: string
              example: API_KEY
            description:
              type: string
              example: Production API key
            tags:
              type: array
              items:
                type: string
              example:
                - production
                - api
            lastAccessedAt:
              type: string
              nullable: true
              example: null
            createdAt:
              type: string
              example: '2024-12-15T00:00:00.000Z'
            updatedAt:
              type: string
              example: '2024-12-15T00:00:00.000Z'
    ErrorSchema:
      type: object
      properties:
        code:
          type: integer
        message:
          type: string
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: >-
        Pass the API key in the Authorization header, You need to put Token
        keyword before the API key. e.g. 'Authorization: Token <api-key>'

````