Aller à la documentation
SparkGlimSparkGlim Développeurs
Rechercher dans toute la documentation

Essayez un sujet dans votre langue ou un chemin API exact.

    Référence API

    Modifier un type de billet

    Modifie les champs de billet autorisés après vérification de leur appartenance à l’organisation.

    PATCHhttps://api.sparkglim.net/api/white-label/v1/ticket-types/:ticketTypeId

    Modèle d’accès

    Modèle d’accès
    HMAC Organisation côté serveur
    Portée requise
    tickets:write
    Disponibilité documentée
    Implémenté dans le code

    La disponibilité est vérifiée dans le code, pas garantie en production.

    La signature privée reste sur votre serveur. L’API Version 1 utilise le format de signature v2 ; ce n’est pas une API v2.

    En-têtes

    NomTypeValidation
    x-white-label-domainObligatoire

    Domaine vérifié qui résout le compte Organisation approuvé et lie cette requête.

    stringValidation : Nom d’hôte HTTPS vérifié.
    x-white-label-key-idObligatoire

    Identifiant extrait de la clé privée unique ; n’envoyez jamais son secret dans cet en-tête.

    stringValidation : Identifiant interne de la clé privée émise.
    x-white-label-signature-versionObligatoire

    Sélectionne le format signé lié au domaine ; les routes API restent Version 1.

    stringValidation : 2.
    x-white-label-timestampObligatoire

    Heure de signature en millisecondes comparée à l’horloge serveur pour rejeter les requêtes périmées.

    stringValidation : Millisecondes sur 13 chiffres ; dans une fenêtre de cinq minutes.
    x-white-label-nonceObligatoire

    Valeur aléatoire fraîche enregistrée par le serveur pour empêcher la répétition d’une requête signée.

    stringValidation : Valeur nouvelle : 16–128 [A-Za-z0-9_-].
    x-white-label-signatureObligatoire

    HMAC-SHA256 du domaine, clé d’idempotence, clé de campagne, horodatage, nonce, méthode, chemin, requête triée et empreinte exacte du corps.

    stringValidation : HMAC-SHA256 hexadécimal en minuscules.
    x-white-label-campaign-keyFacultatif

    Clé de campagne complète facultative qui limite la requête privée à la même campagne autorisée.

    stringValidation : Valeur keyId:secret complète, facultative et limitée à son périmètre.

    Paramètres

    NomTypeValidation
    ticketTypeIdObligatoire

    Type de billet choisi de la campagne indiquée ; le serveur vérifie statut, capacité et prix.

    stringValidation : UUID ou identifiant de ressource documenté.

    Requête

    NomTypeValidation
    campaignIdFacultatif

    Campagne existante dans le compte et dans tout périmètre de clé de campagne plus limité.

    stringValidation : UUID.
    nameFacultatif

    Nom affiché du type de billet ou participant géré.

    stringValidation : 2–120.
    priceFacultatif

    Prix de billet stocké et validé par le serveur dans la devise de campagne.

    numberValidation : >=0.
    quantity_availableFacultatif

    Stock configuré ; ventes et achats simultanés restent contrôlés par le serveur.

    integerValidation : >=0.
    descriptionFacultatif

    Description de l’organisateur expliquant la campagne ou le billet.

    string|nullValidation : <=1000.
    ticket_typeFacultatif

    Niveau d’admission configuré, payant, gratuit ou de groupe.

    enumValidation : paid | free | early_bird | vip | student | group.
    statusFacultatif

    État de cycle pris en charge ; les règles d’approbation contrôlent encore publication et accès.

    enumValidation : active | inactive | sold_out.
    is_freeFacultatif

    Indique un billet gratuit pris en charge ; l’émission reste contrôlée par le serveur.

    booleanValidation : Valeur par défaut : false.
    max_per_personFacultatif

    Quantité maximum configurée par acheteur, imposée à l’achat.

    integerValidation : >0.
    image_urlFacultatif

    URL de l’image fournie ; utilisez un média public autorisé.

    string|nullValidation : URL.
    required_attendee_fieldsFacultatif

    Configuration existante des champs de participants requis pour ce billet.

    object[]Validation : Champs de participants configurés.

    Requête

    Les exemples décrivent le contrat et ne sont pas exécutés. Utilisez des données de test autorisées ; ne saisissez jamais de secret réel ici.

    PATCH /api/white-label/v1/ticket-types/:ticketTypeId
    http
    PATCH /api/white-label/v1/ticket-types/11111111-1111-4111-8111-111111111111 HTTP/1.1
    Host: api.sparkglim.net
    x-white-label-domain: events.example.com
    x-white-label-key-id: <ISSUED_KEY_ID>
    x-white-label-signature-version: 2
    x-white-label-timestamp: <FRESH_MILLISECONDS>
    x-white-label-nonce: <FRESH_SIGNING_NONCE>
    x-white-label-signature: <SERVER_GENERATED_SIGNATURE>
    Content-Type: application/json
    
    {
      "name": "Updated example ticket"
    }

    Réponse

    Réponse de succès · HTTP 200
    json
    {
      "success": true,
      "data": {
        "id": "11111111-1111-4111-8111-111111111111",
        "status": "pending"
      },
      "requestId": "wlapi_example"
    }
    Réponse d’erreur · HTTP 400
    json
    {
      "success": false,
      "error": "<ERROR_MESSAGE>",
      "requestId": "wlapi_example"
    }

    Validation, permissions, données indisponibles et pannes utilisent le statut HTTP et l’erreur du gestionnaire.

    Limites et tentatives

    Limiteur Organisation : 120 requêtes par clé et 300 par IP par fenêtre ; respectez Retry-After et X-RateLimit.

    Compatibilité du code

    Les opérations autorisées nécessitent des tests propres au compte.

    • server/src/api/router.ts
    • server/src/api/routes/white-label.ts
    • server/src/white-label/auth.ts
    • server/src/white-label/schemas.ts
    • server/src/white-label/organization-service.ts
    • server/src/white-label/service.ts