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

# Créer une nouvelle clé API pour l’utilisateur courant



## OpenAPI

````yaml /openapi.fr.json post /v1/billing/api-keys
openapi: 3.0.0
info:
  title: OneSubnet Core API
  description: >-
    OneSubnet hosting panel API. Toutes les routes sont préfixées par /v1/
    (versioning URI). Les routes Panel sont appelées par le daemon Wings, pas
    par les clients. Les routes Admin nécessitent le rôle admin.
  version: '1.0'
  contact: {}
servers: []
security: []
tags:
  - name: Auth & Users
    description: Authentification, profil, gestion utilisateurs
  - name: Store
    description: 'Boutique: catégories, produits, panier'
  - name: Billing
    description: Facturation, checkout Stripe, webhooks
  - name: Services
    description: Services hébergés (enregistrements facturation)
  - name: Affiliation
    description: Parrainage et commissions
  - name: Notifications
    description: Notifications
  - name: Admin - RBAC
    description: Gestion des rôles, permissions, groupes
  - name: Admin - Store & Invoices
    description: CRUD produits, plans, coupons, factures
  - name: Admin - Settings & Tenants
    description: Configuration, multi-tenant, whitelabel
  - name: Admin - Audit
    description: Journal d'audit des requêtes
  - name: System
    description: Health, meta-info
paths:
  /v1/billing/api-keys:
    post:
      tags:
        - Billing
      summary: Créer une nouvelle clé API pour l’utilisateur courant
      operationId: ApiKeyController_createApiKey_v1
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateApiKeyDto'
      responses:
        '201':
          description: ''
      security:
        - bearer: []
components:
  schemas:
    CreateApiKeyDto:
      type: object
      properties:
        name:
          type: string
          example: CI pipeline
          description: Human-readable label for the API key.
          maxLength: 64
        expiresAt:
          type: object
          example: '2026-08-19T12:00:00.000Z'
          description: >-
            Optional ISO 8601 expiration date. Omit (or null) for a key that
            never expires.
          nullable: true
        permissions:
          type: string
          example: read
          description: 'Scope of the key: ''read'' (GET only) or ''read-write'' (all methods).'
          default: read
      required:
        - name
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http

````

## Related topics

- [Activer une intégration pour l’utilisateur courant](/api-reference/integrations/activer-une-intégration-pour-l’utilisateur-courant.md)
- [Créer une nouvelle permission](/api-reference/admin--rbac/créer-une-nouvelle-permission.md)
- [Lister les clés API de l’utilisateur courant](/api-reference/billing/lister-les-clés-api-de-l’utilisateur-courant.md)
- [Intégrations](/panel/integrations.md)
- [Créer une session de paiement pour une offre](/api-reference/billing/créer-une-session-de-paiement-pour-une-offre.md)
