Skip to content
EntitlerDocs

POST/v1/customers/{external_id}/provider-state:sync

Refresh a customer's payment provider state

Reads the customer's linked Stripe customer on connectionId again, then returns their state as ListProviderState does. Needs customers:write.

curl -X POST 'https://api.entitler.co/v1/customers/ada/provider-state:sync' \
  -H "Authorization: Bearer $ENTITLER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"connectionId":"connectionId","target":{"environmentId":"environmentId","projectId":"projectId","teamId":"teamId"}}'

Credentials

Send any one of these:

  • Bearer token

Path parameters

NameTypeDescription
external_idrequiredstringThe customer's external ID, or me for the customer a customer token or identity token names.

Request body

object

  • connectionIdstring
  • targetProductTarget
    • environmentIdstring
    • projectIdstring
    • teamIdstring

Responses

200The SyncProviderStateResponse message.

SyncProviderStateResponse

  • providersCustomerProviders
    • alertsarray of ProviderAlertrequired
      • connectionIdstringrequired
      • connectionNamestringrequired
      • customerIdstring
      • customerNamestring
      • externalIdstring
      • factsAlertFacts
        • changedFieldsarray of stringrequired
        • connectionNamestringrequired
        • countinteger (int64)

          at least 0; at most 4294967295

        • currencystring
        • feeKeystring
        • heldPlanIdstring
        • invoiceIdstring
        • marketCurrencystring
        • marketIdstring
        • otherConnectionIdstring
        • otherExternalIdstring
        • planIdstring
        • planIdsarray of stringrequired
        • priceIdsarray of stringrequired
        • productIdstring
        • providerPaymentProviderrequired

          One of PAYMENT_PROVIDER_UNSPECIFIED, PAYMENT_PROVIDER_STRIPE, PAYMENT_PROVIDER_APPLE, PAYMENT_PROVIDER_GOOGLE.

        • providerCustomerIdstring
        • providerProductIdstring
        • reasonstring
        • refusalMoneyRefusalrequired

          One of MONEY_REFUSAL_UNSPECIFIED, MONEY_REFUSAL_REAL_MONEY_IN_TEST_ENVIRONMENT, MONEY_REFUSAL_TEST_MONEY_ON_REAL_MONEY_TRACK.

        • transactionIdstring
      • idstringrequired
      • openedAtintegerrequired

        at least 0; at most 18446744073709552000

      • providerPaymentProviderrequired

        One of PAYMENT_PROVIDER_UNSPECIFIED, PAYMENT_PROVIDER_STRIPE, PAYMENT_PROVIDER_APPLE, PAYMENT_PROVIDER_GOOGLE.

      • resolvedAtinteger

        at least 0; at most 18446744073709552000

      • resolvedBycommon.Actor
        • idstringrequired
        • typecommon.ActorTyperequired

          One of ACTOR_TYPE_UNSPECIFIED, ACTOR_TYPE_USER, ACTOR_TYPE_KEY, ACTOR_TYPE_SYSTEM.

      • ruleAlertRulerequired

        One of ALERT_RULE_UNSPECIFIED, ALERT_RULE_PRICE_WITHOUT_LISTING, ALERT_RULE_LONG_PAST_DUE, ALERT_RULE_TWO_PLANS_IN_PRODUCT, ALERT_RULE_SECOND_PRODUCT, ALERT_RULE_HELD_PLAN_DIFFERS, ALERT_RULE_REFUND_PARTIAL, ALERT_RULE_ONE_TIME_NOT_FOLLOWED, ALERT_RULE_OTHER_CONNECTION, ALERT_RULE_MONEY_REFUSED, ALERT_RULE_NOT_FOLLOWED, ALERT_RULE_UNKNOWN_CUSTOMER, ALERT_RULE_CURRENCY_DIFFERS, ALERT_RULE_PRICE_ARCHIVED, ALERT_RULE_PRICE_CHANGED, ALERT_RULE_PRODUCT_ARCHIVED, ALERT_RULE_PRODUCT_BILLED_TWICE, ALERT_RULE_STORE_PRODUCT_NOT_LISTED, ALERT_RULE_STORE_KEY_REFUSED, ALERT_RULE_PURCHASE_LINKED_ELSEWHERE, ALERT_RULE_ADOPTION_REFUSED, ALERT_RULE_FEE_NOT_BILLED.

      • seenAtintegerrequired

        at least 0; at most 18446744073709552000

      • subjectstringrequired
    • connectionsarray of ConnectionStaterequired
      • connectionIdstringrequired
      • connectionNamestringrequired
      • providerPaymentProviderrequired

        One of PAYMENT_PROVIDER_UNSPECIFIED, PAYMENT_PROVIDER_STRIPE, PAYMENT_PROVIDER_APPLE, PAYMENT_PROVIDER_GOOGLE.

      • readAtintegerrequired

        at least 0; at most 18446744073709552000

      • stateProviderState
        • paymentsarray of ProviderPaymentrequired
          • amountPaymentAmount
            • currencystringrequired
            • valueintegerrequired

              at least 0; at most 18446744073709552000

          • idstringrequired
          • paidAtintegerrequired

            at least 0; at most 18446744073709552000

          • priceIdstringrequired
          • quantityinteger (int64)required

            at least 0; at most 4294967295

          • saleProviderSale
            • marketIdstring
            • periodIdstring
            • planIdstringrequired
            • planKindPlanKindrequired

              One of PLAN_KIND_UNSPECIFIED, PLAN_KIND_PLAN, PLAN_KIND_ADD_ON.

            • productIdstring
            • versionNumberintegerrequired

              at least 0; at most 18446744073709552000

          • statusProviderPaymentStatusrequired

            One of PROVIDER_PAYMENT_STATUS_UNSPECIFIED, PROVIDER_PAYMENT_STATUS_PAID, PROVIDER_PAYMENT_STATUS_REFUNDED, PROVIDER_PAYMENT_STATUS_PARTIALLY_REFUNDED.

        • subscriptionsarray of ProviderSubscriptionrequired
          • billingbooleanrequired
          • cancelsAtinteger

            at least 0; at most 18446744073709552000

          • currencystring
          • discountsarray of ProviderDiscountrequired
            • amountOffPaymentAmount
              • currencystringrequired
              • valueintegerrequired

                at least 0; at most 18446744073709552000

            • couponIdstring
            • durationstring
            • durationInMonthsinteger (int64)

              at least 0; at most 4294967295

            • endsAtinteger

              at least 0; at most 18446744073709552000

            • idstringrequired
            • namestring
            • percentOffstring
            • startsAtinteger

              at least 0; at most 18446744073709552000

          • idstringrequired
          • itemsarray of ProviderItemrequired
            • idstringrequired
            • priceIdstringrequired
            • quantityinteger (int64)required

              at least 0; at most 4294967295

            • saleProviderSale
              • marketIdstring
              • periodIdstring
              • planIdstringrequired
              • planKindPlanKindrequired

                One of PLAN_KIND_UNSPECIFIED, PLAN_KIND_PLAN, PLAN_KIND_ADD_ON.

              • productIdstring
              • versionNumberintegerrequired

                at least 0; at most 18446744073709552000

          • periodEndsAtinteger

            at least 0; at most 18446744073709552000

          • periodStartedAtinteger

            at least 0; at most 18446744073709552000

          • statusProviderSubscriptionStatusrequired

            One of PROVIDER_SUBSCRIPTION_STATUS_UNSPECIFIED, PROVIDER_SUBSCRIPTION_STATUS_ACTIVE, PROVIDER_SUBSCRIPTION_STATUS_TRIALING, PROVIDER_SUBSCRIPTION_STATUS_PAST_DUE, PROVIDER_SUBSCRIPTION_STATUS_INCOMPLETE, PROVIDER_SUBSCRIPTION_STATUS_INCOMPLETE_EXPIRED, PROVIDER_SUBSCRIPTION_STATUS_CANCELED, PROVIDER_SUBSCRIPTION_STATUS_UNPAID, PROVIDER_SUBSCRIPTION_STATUS_PAUSED.

          • trialEndsAtinteger

            at least 0; at most 18446744073709552000

    • linkedConnectionIdsarray of stringrequired

ErrorA refusal, with the HTTP status of its gRPC code.

Error

  • errorobjectrequired
    • codestringrequired
    • parametersobjectrequired

      Each value: string

    • reasonstringor nullrequired