# Enregistrer une vue de paywall

> Adapty peut vous aider à mesurer le taux de conversion de vos paywalls. Cependant, 
> pour ce faire, vous devez enregistrer chaque affichage d'un paywall — sans cela, nous ne 
> connaîtrions que les utilisateurs ayant effectué un achat et nous manquerions ceux qui ne l'ont pas fait. 
> Utilisez cette requête pour enregistrer une vue de paywall.

## OpenAPI

```yaml
/api-specs/web-api.yaml post /api/v2/web-api/paywall/visit/
openapi: 3.1.0
info:
  title: Adapty Web API
  version: 1.0.0
  description: |
    L'API Web Adapty vous permet d'intégrer la plateforme de gestion des abonnements 
    Adapty dans vos applications web. Cette API fournit des endpoints pour récupérer des paywalls, 
    enregistrer des vues de paywall et ajouter des données d'attribution.
servers:
  - url: https://api.adapty.io
    description: Serveur de production
security:
  - apikeyAuth: []
paths:
  /api/v2/web-api/paywall/visit/:
    post:
      summary: Enregistrer une vue de paywall
      description: |
        Adapty peut vous aider à mesurer le taux de conversion de vos paywalls. Cependant, 
        pour ce faire, vous devez enregistrer chaque affichage d'un paywall — sans cela, nous ne 
        connaîtrions que les utilisateurs ayant effectué un achat et nous manquerions ceux qui ne l'ont pas fait. 
        Utilisez cette requête pour enregistrer une vue de paywall.
      operationId: recordPaywallView
      security:
        - apikeyAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RecordPaywallViewRequest"
            examples:
              basic:
                summary: Enregistrement simple d'une vue de paywall
                value:
                  visited_at: "2024-08-24T14:15:22Z"
                  store: app_store
                  variation_id: 00000000-0000-0000-0000-000000000000
                  customer_user_id: user123
      responses:
        "201":
          description: La vue du paywall a été enregistrée avec succès.
          content:
            application/json:
              schema:
                type: object
                description: Corps de réponse vide
        "400":
          description: Requête incorrecte
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/InvalidDateFormatError"
        "401":
          description: Non autorisé
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UnauthorizedError"
        "404":
          description: Introuvable
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ProfileNotFoundError"
components:
  schemas:
    RecordPaywallViewRequest:
      type: object
      required:
        - store
        - variation_id
      properties:
        customer_user_id:
          type: string
          description: Identifiant d'un utilisateur dans votre système. Soit `customer_user_id`, soit `profile_id` est requis.
          example: user123
        profile_id:
          type: string
          description: Identifiant d'un utilisateur dans Adapty. Soit `customer_user_id`, soit `profile_id` est requis.
          example: 3286abd3-48b0-4e9c-a5f6-ac0a006804a6
        visited_at:
          type: string
          format: date-time
          description: La date et l'heure auxquelles l'utilisateur a ouvert le paywall.
          example: "2024-08-24T14:15:22Z"
        store:
          type: string
          description: |
            Store où le produit a été acheté. Valeurs possibles : `app_store`, `play_store`, `stripe`, ou le `Store ID` de votre store personnalisé.
          example: app_store
        variation_id:
          type: string
          format: uuid
          description: L'ID de variante utilisé pour associer les achats au paywall spécifique depuis lequel ils ont été effectués.
          example: 00000000-0000-0000-0000-000000000000
    InvalidDateFormatError:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              source:
                type: string
              errors:
                type: array
                items:
                  type: string
        error_code:
          type: string
        status_code:
          type: integer
    UnauthorizedError:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              source:
                type: string
              errors:
                type: array
                items:
                  type: string
        error_code:
          type: string
        status_code:
          type: integer
    ProfileNotFoundError:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              source:
                type: string
              errors:
                type: array
                items:
                  type: string
        error_code:
          type: string
        status_code:
          type: integer
  securitySchemes:
    apikeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: |
        Les requêtes API doivent être authentifiées avec votre clé API publique dans l'en-tête **Authorization** 
        avec la valeur `Api-Key {votre_clé_api_publique}`, par exemple 
        `Api-Key public_live_...`. Vous trouverez cette clé dans l'Adapty Dashboard -> 
        **App Settings** -> onglet **General** -> section **API keys**.
```
