PUT /api/v2/server-side-api/paywalls/{paywall_id}/

Mettre à jour un paywall

Met à jour le Remote Config d'un paywall spécifique. Ce point de terminaison vous permet de modifier les valeurs du Remote Config qui vous aident à personnaliser l'apparence et le comportement du paywall.

Important : Si vous mettez à jour un Remote Config, il écrasera tous les Remote Configs existants ! Si vous devez conserver les Remote Configs existants, commencez par récupérer le paywall. Copiez ensuite les remote_configs depuis celui-ci et modifiez les objets nécessaires dans la requête de mise à jour.

Path parameters

paywall_idstring · uuidrequired

L'identifiant unique du paywall à mettre à jour

Request body

Au moins un champ doit être fourni

remote_configsarray of objectrequired

Tableau d'objets RemoteConfig à mettre à jour

localestringrequired

La langue du Remote Config (par ex., "en", "es", "fr")

datastringrequired

Chaîne JSON contenant les données du Remote Config

Responses

Paywall mis à jour avec succès

Schema
titlestringrequired

Le nom du paywall, tel que défini dans votre Adapty Dashboard

paywall_idstringrequired

L'identifiant unique du paywall

use_paywall_builderbooleanrequired

Si le paywall utilise le Paywall Builder

use_paywall_builder_legacybooleanrequired

Si le paywall utilise le Paywall Builder hérité

updated_atstringrequired

Horodatage de la dernière mise à jour du paywall

created_atstringrequired

Horodatage de la création du paywall

statestringrequired

L'état actuel du paywall

One of: "draft", "live", "inactive", "archived"

is_deletedbooleanrequired

Si le paywall est marqué comme supprimé

web_purchase_urlstring

URL pour les achats web, le cas échéant

productsarray of objectrequired

Tableau d'objets produit contenant les informations sur les produits

product_idstringrequired

L'identifiant unique du produit

titlestringrequired

Le titre du produit

product_setstringrequired

La catégorie du groupe de produits

One of: "weekly", "monthly", "trimonthly", "semiannual", "annual", "lifetime", "uncategorised", "nonsubscriptions", "two_months", "consumable"

offerobjectrequired
product_offer_idstringrequired

L'identifiant unique de l'offre produit

titlestringrequired

Le titre de l'offre

remote_configsarray of object

Tableau d'objets RemoteConfig avec la langue et les données

localestringrequired

La langue du Remote Config

datastringrequired

Chaîne JSON contenant les données du Remote Config

main_screenshotobject

Objet capture d'écran principal avec image_id et url

image_idintegerrequired

L'identifiant unique de l'image

urlstringrequired

L'URL de l'image

Example
{
  "title": "Premium Subscription",
  "paywall_id": "fd891d4f-5906-45b9-97c1-13cc3dc665df",
  "use_paywall_builder": true,
  "use_paywall_builder_legacy": false,
  "updated_at": "2025-07-30T11:13:58.798Z",
  "created_at": "2025-07-30T11:13:58.798Z",
  "state": "live",
  "is_deleted": false,
  "web_purchase_url": "https://example.com/purchase",
  "products": [
    {
      "product_id": "b95e9e51-a056-4eb6-9cf7-b75d139e7c3c",
      "title": "Premium Monthly",
      "product_set": "uncategorised",
      "offer": {
        "product_offer_id": "e31a4296-f250-4faf-ac80-3cc93c2da8f5",
        "title": "Free Trial"
      }
    }
  ],
  "remote_configs": [
    {
      "locale": "en",
      "data": "{\"title\":\"Premium Features\",\"subtitle\":\"Unlock all premium content\"}"
    }
  ],
  "main_screenshot": {
    "image_id": 123456,
    "url": "https://public-media.adapty.io/public/screenshot.jpg"
  }
}

Requête incorrecte

Schema
errorsarray of objectrequired
sourcestring

Source de l'erreur

errorsarray of string

Tableau de messages d'erreur

error_codestringrequired

Nom court de l'erreur

status_codeintegerrequired

Code de statut HTTP

Example
{
  "errors": [
    {
      "source": "remote_configs",
      "errors": [
        "At least one field must be provided"
      ]
    }
  ],
  "error_code": "validation_error",
  "status_code": 400
}

Non autorisé

Schema
errorsarray of objectrequired
sourcestring

Source de l'erreur

errorsarray of string

Tableau de messages d'erreur

error_codestringrequired

Nom court de l'erreur

status_codeintegerrequired

Code de statut HTTP

Example
{
  "errors": [
    "Invalid API key"
  ],
  "error_code": "unauthorized",
  "status_code": 401
}

Paywall introuvable

Schema
errorsarray of objectrequired
sourcestring

Source de l'erreur

errorsarray of string

Tableau de messages d'erreur

error_codestringrequired

Nom court de l'erreur

status_codeintegerrequired

Code de statut HTTP

Example
{
  "errors": [
    {
      "source": null,
      "errors": [
        "Paywall not found"
      ]
    }
  ],
  "error_code": "paywall_does_not_exist",
  "status_code": 404
}

Erreur interne du serveur

Schema
errorsarray of objectrequired
sourcestring

Source de l'erreur

errorsarray of string

Tableau de messages d'erreur

error_codestringrequired

Nom court de l'erreur

status_codeintegerrequired

Code de statut HTTP