Skip to main content
POST
/
v1
/
customer
/
can
can feature
curl --request POST \
  --url https://api.unprice.dev/v1/customer/can \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "customerId": "cus_1H7KQFLr7RepUyQBKdnvY",
  "featureSlug": "tokens",
  "metadata": {
    "action": "create",
    "country": "US"
  },
  "usage": 100
}
'
{
  "allowed": true,
  "message": "<string>",
  "deniedReason": "INVALID_USAGE",
  "featureType": "flat",
  "cacheHit": true,
  "remaining": 123,
  "limit": 123,
  "usage": 123,
  "latency": 123
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json

Body of the request

customerId
string
required

The customer ID

Example:

"cus_1H7KQFLr7RepUyQBKdnvY"

featureSlug
string
required

The feature slug

Example:

"tokens"

metadata
object

The metadata

Example:
{ "action": "create", "country": "US" }
usage
number

The usage to check feature access for

Example:

100

Response

The result of the can check

allowed
boolean
required
message
string
deniedReason
enum<string>
Available options:
INVALID_USAGE,
ERROR_SYNCING_ENTITLEMENTS_LAST_USAGE,
FLAT_FEATURE_NOT_ALLOWED_REPORT_USAGE,
ENTITLEMENT_OUTSIDE_OF_CURRENT_BILLING_WINDOW,
ERROR_RESETTING_DO,
RATE_LIMITED,
ENTITLEMENT_NOT_FOUND,
LIMIT_EXCEEDED,
ENTITLEMENT_EXPIRED,
ENTITLEMENT_NOT_ACTIVE,
DO_NOT_INITIALIZED,
INCORRECT_USAGE_REPORTING,
ERROR_INSERTING_USAGE_DO,
ERROR_INSERTING_VERIFICATION_DO,
PROJECT_DISABLED,
CUSTOMER_DISABLED,
SUBSCRIPTION_DISABLED,
FETCH_ERROR,
SUBSCRIPTION_ERROR,
ENTITLEMENT_ERROR,
SUBSCRIPTION_EXPIRED,
NO_DEFAULT_PLAN_FOUND,
SUBSCRIPTION_NOT_ACTIVE,
PHASE_NOT_CREATED,
FEATURE_NOT_FOUND_IN_SUBSCRIPTION,
CUSTOMER_NOT_FOUND,
CUSTOMER_ENTITLEMENTS_NOT_FOUND,
FEATURE_TYPE_NOT_SUPPORTED,
PROJECT_DISABLED,
CUSTOMER_DISABLED,
PLAN_VERSION_NOT_PUBLISHED,
PLAN_VERSION_NOT_ACTIVE,
PAYMENT_PROVIDER_CONFIG_NOT_FOUND,
ENTITLEMENT_EXPIRED,
ENTITLEMENT_NOT_ACTIVE,
CUSTOMER_SESSION_NOT_CREATED,
CUSTOMER_SESSION_NOT_FOUND,
PLAN_VERSION_NOT_FOUND,
PAYMENT_PROVIDER_ERROR,
SUBSCRIPTION_NOT_CREATED,
CUSTOMER_NOT_CREATED,
SUBSCRIPTION_NOT_CANCELED,
CUSTOMER_PHASE_NOT_FOUND,
CURRENCY_MISMATCH,
BILLING_INTERVAL_MISMATCH,
ENTITLEMENT_NOT_FOUND,
SUBSCRIPTION_NOT_FOUND,
INVALID_ENTITLEMENT_TYPE,
NO_ACTIVE_PHASE_FOUND
featureType
enum<string>
Available options:
flat,
tier,
package,
usage
cacheHit
boolean
remaining
number
limit
number
usage
number
latency
number