diff --git a/embedded/openapi/spec3.beta.sdk.json b/embedded/openapi/spec3.beta.sdk.json index 21187394..9b96f6c4 100644 --- a/embedded/openapi/spec3.beta.sdk.json +++ b/embedded/openapi/spec3.beta.sdk.json @@ -11192,6 +11192,22 @@ "type": "customer.discount.updated" } }, + "customer.entitlement_summary.updated": { + "description": "Occurs whenever a customer's entitlements change.", + "properties": { + "object": { + "$ref": "#/components/schemas/customer_entitlement_summary" + } + }, + "required": [ + "object" + ], + "type": "object", + "x-expandableFields": [], + "x-stripeEvent": { + "type": "customer.entitlement_summary.updated" + } + }, "customer.source.created": { "description": "Occurs whenever a new source is created for a customer.", "properties": { @@ -12346,6 +12362,182 @@ "type": "customer_cash_balance_transaction.created" } }, + "customer_entitlement": { + "description": "A entitlement for a customer describes access to a feature.", + "properties": { + "feature": { + "description": "The feature that the customer is entitled to.", + "maxLength": 5000, + "type": "string" + }, + "id": { + "description": "Unique identifier for the object.", + "maxLength": 5000, + "type": "string" + }, + "livemode": { + "description": "Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.", + "type": "boolean" + }, + "lookup_key": { + "description": "A unique key you provide as your own system identifier. This may be up to 80 characters.", + "maxLength": 5000, + "type": "string" + }, + "object": { + "description": "String representing the object's type. Objects of the same type share the same value.", + "enum": [ + "customer_entitlement" + ], + "type": "string" + }, + "quantity": { + "anyOf": [ + { + "$ref": "#/components/schemas/customer_entitlement_quantity" + } + ], + "description": "Contains information about entitlements relating to features with type=quantity. Required when the feature has type=quantity.", + "nullable": true + }, + "type": { + "description": "The type of feature.", + "enum": [ + "quantity", + "switch" + ], + "type": "string" + } + }, + "required": [ + "feature", + "id", + "livemode", + "lookup_key", + "object", + "quantity", + "type" + ], + "title": "CustomerEntitlement", + "type": "object", + "x-expandableFields": [ + "quantity" + ], + "x-resourceId": "customer_entitlement", + "x-stripeOperations": [ + { + "method_name": "list", + "method_on": "service", + "method_type": "list", + "operation": "get", + "path": "/v1/customers/{customer}/entitlements" + } + ], + "x-stripeResource": { + "class_name": "CustomerEntitlement", + "has_collection_class": true, + "in_package": "" + } + }, + "customer_entitlement_quantity": { + "description": "", + "properties": { + "total_available": { + "description": "The total quantity available to the customer.", + "type": "integer" + } + }, + "required": [ + "total_available" + ], + "title": "CustomerEntitlementQuantity", + "type": "object", + "x-expandableFields": [] + }, + "customer_entitlement_summary": { + "description": "A summary of a customer's entitlements.", + "properties": { + "customer": { + "description": "The customer that is entitled to this feature.", + "maxLength": 5000, + "type": "string" + }, + "entitlements": { + "description": "The list of entitlements this customer has.", + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/customer_entitlement" + }, + "type": "array" + }, + "has_more": { + "description": "True if this list has another page of items after this one that can be fetched.", + "type": "boolean" + }, + "object": { + "description": "String representing the object's type. Objects of the same type share the same value. Always has the value `list`.", + "enum": [ + "list" + ], + "type": "string" + }, + "url": { + "description": "The URL where this list can be accessed.", + "maxLength": 5000, + "type": "string" + } + }, + "required": [ + "data", + "has_more", + "object", + "url" + ], + "title": "EntitlementsResourceCustomerEntitlementList", + "type": "object", + "x-expandableFields": [ + "data" + ] + }, + "livemode": { + "description": "Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.", + "type": "boolean" + }, + "object": { + "description": "String representing the object's type. Objects of the same type share the same value.", + "enum": [ + "customer_entitlement_summary" + ], + "type": "string" + } + }, + "required": [ + "customer", + "entitlements", + "livemode", + "object" + ], + "title": "CustomerEntitlementSummary", + "type": "object", + "x-expandableFields": [ + "entitlements" + ], + "x-resourceId": "customer_entitlement_summary", + "x-stripeOperations": [ + { + "method_name": "retrieve", + "method_on": "service", + "method_type": "retrieve", + "operation": "get", + "path": "/v1/customers/{customer}/entitlement_summary" + } + ], + "x-stripeResource": { + "class_name": "CustomerEntitlementSummary", + "in_package": "" + } + }, "customer_session": { "description": "A customer session allows you to grant client access to Stripe's frontend SDKs (like StripeJs)\ncontrol over a customer.", "properties": { @@ -14677,6 +14869,316 @@ "type": "object", "x-expandableFields": [] }, + "entitlement_event_grant": { + "description": "", + "properties": { + "expires_at": { + "description": "When manually creating a grant entitlement event, you can make it a temporary grant by setting it to expire.", + "format": "unix-time", + "type": "integer" + }, + "granted_by": { + "description": "Who/what created this grant entitlement event.", + "enum": [ + "subscription_item", + "user" + ], + "type": "string" + }, + "subscription_item": { + "anyOf": [ + { + "$ref": "#/components/schemas/entitlement_event_subscription_item" + } + ], + "description": "If this entitlement event was created by a subscription_item, this will contains information about the subscription_item.", + "nullable": true + } + }, + "required": [ + "expires_at", + "granted_by", + "subscription_item" + ], + "title": "EntitlementEventGrant", + "type": "object", + "x-expandableFields": [ + "subscription_item" + ] + }, + "entitlement_event_quantity": { + "description": "", + "properties": { + "units": { + "description": "When granting or revoking an entitlement to a type=quantity feature, you must specify the number of units you're granting/revoking. When the entitlement event type=grant, this number increments the total quantity available to the customer, and when type=revoke it decrements the total quantity available to the customer.", + "type": "integer" + } + }, + "required": [ + "units" + ], + "title": "EntitlementEventQuantity", + "type": "object", + "x-expandableFields": [] + }, + "entitlement_event_revoke": { + "description": "", + "properties": { + "expires_at": { + "description": "A revoke entitlement event will always expire at the same time as the grant it is revoking.", + "format": "unix-time", + "type": "integer" + }, + "revoked_by": { + "description": "Who/what created this revoke entitlement event.", + "enum": [ + "subscription_item", + "user" + ], + "type": "string" + }, + "subscription_item": { + "anyOf": [ + { + "$ref": "#/components/schemas/entitlement_event_subscription_item" + } + ], + "description": "If this entitlement event was created by a subscription_item, this will contains information about the subscription_item.", + "nullable": true + } + }, + "required": [ + "expires_at", + "revoked_by", + "subscription_item" + ], + "title": "EntitlementEventRevoke", + "type": "object", + "x-expandableFields": [ + "subscription_item" + ] + }, + "entitlement_event_subscription_item": { + "description": "", + "properties": { + "item_quantity": { + "description": "The subscription line item quantity.", + "type": "integer" + }, + "price": { + "description": "The price for the product that contains the feature for this entitlement event.", + "maxLength": 5000, + "type": "string" + }, + "product": { + "description": "The product that contains the feature for this entitlement event.", + "maxLength": 5000, + "type": "string" + }, + "subscription": { + "description": "The subscription that created this entitlement event.", + "maxLength": 5000, + "type": "string" + }, + "subscription_item": { + "description": "The subscription item that created this entitlement event.", + "maxLength": 5000, + "type": "string" + } + }, + "required": [ + "item_quantity", + "price", + "product", + "subscription", + "subscription_item" + ], + "title": "EntitlementEventSubscriptionItem", + "type": "object", + "x-expandableFields": [] + }, + "entitlements.event": { + "description": "An entitlement event either grants or revokes an entitlement to a feature for a customer.", + "properties": { + "customer": { + "description": "The customer that is being granted or revoked entitlement to/from a feature.", + "maxLength": 5000, + "type": "string" + }, + "feature": { + "description": "The feature that the customer is being granted/revoked entitlement to/from.", + "maxLength": 5000, + "type": "string" + }, + "grant": { + "anyOf": [ + { + "$ref": "#/components/schemas/entitlement_event_grant" + } + ], + "description": "Contains information about type=grant entitlement event.", + "nullable": true + }, + "id": { + "description": "Unique identifier for the object.", + "maxLength": 5000, + "type": "string" + }, + "livemode": { + "description": "Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.", + "type": "boolean" + }, + "object": { + "description": "String representing the object's type. Objects of the same type share the same value.", + "enum": [ + "entitlements.event" + ], + "type": "string" + }, + "quantity": { + "anyOf": [ + { + "$ref": "#/components/schemas/entitlement_event_quantity" + } + ], + "description": "Contains information about entitlement events relating to features with type=quantity. Required when the feature has type=quantity.", + "nullable": true + }, + "revoke": { + "anyOf": [ + { + "$ref": "#/components/schemas/entitlement_event_revoke" + } + ], + "description": "Contains information about type=revoke entitlement event.", + "nullable": true + }, + "type": { + "description": "Whether the event is a grant or revocation of the feature.", + "enum": [ + "grant", + "revoke" + ], + "type": "string" + } + }, + "required": [ + "customer", + "feature", + "grant", + "id", + "livemode", + "object", + "quantity", + "revoke", + "type" + ], + "title": "EntitlementEvent", + "type": "object", + "x-expandableFields": [ + "grant", + "quantity", + "revoke" + ], + "x-resourceId": "entitlements.event", + "x-stripeOperations": [ + { + "method_name": "create", + "method_on": "service", + "method_type": "create", + "operation": "post", + "path": "/v1/entitlements/events" + } + ], + "x-stripeResource": { + "class_name": "Event", + "in_package": "Entitlements" + } + }, + "entitlements.feature": { + "description": "A feature represents a monetizable ability or functionality in your system.\nFeatures can be assigned to products, and when those products are purchased, Stripe will create an entitlement to the feature for the purchasing customer.", + "properties": { + "id": { + "description": "Unique identifier for the object.", + "maxLength": 5000, + "type": "string" + }, + "livemode": { + "description": "Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.", + "type": "boolean" + }, + "lookup_key": { + "description": "A unique key you provide as your own system identifier. This may be up to 80 characters.", + "maxLength": 5000, + "type": "string" + }, + "name": { + "description": "The feature's name, for your own purpose, not meant to be displayable to the customer.", + "maxLength": 80, + "type": "string" + }, + "object": { + "description": "String representing the object's type. Objects of the same type share the same value.", + "enum": [ + "entitlements.feature" + ], + "type": "string" + }, + "quantity": { + "anyOf": [ + { + "$ref": "#/components/schemas/feature_quantity" + } + ], + "description": "Contains information about type=quantity features. This is required when type=quantity.", + "nullable": true + }, + "type": { + "description": "The type of feature.", + "enum": [ + "quantity", + "switch" + ], + "type": "string" + } + }, + "required": [ + "id", + "livemode", + "lookup_key", + "name", + "object", + "quantity", + "type" + ], + "title": "Feature", + "type": "object", + "x-expandableFields": [ + "quantity" + ], + "x-resourceId": "entitlements.feature", + "x-stripeOperations": [ + { + "method_name": "list", + "method_on": "service", + "method_type": "list", + "operation": "get", + "path": "/v1/entitlements/features" + }, + { + "method_name": "create", + "method_on": "service", + "method_type": "create", + "operation": "post", + "path": "/v1/entitlements/features" + } + ], + "x-stripeResource": { + "class_name": "Feature", + "has_collection_class": true, + "in_package": "Entitlements" + } + }, "ephemeral_key": { "description": "", "properties": { @@ -14884,6 +15386,7 @@ "customer.discount.created", "customer.discount.deleted", "customer.discount.updated", + "customer.entitlement_summary.updated", "customer.source.created", "customer.source.deleted", "customer.source.expiring", @@ -15304,6 +15807,21 @@ "errors" ] }, + "feature_quantity": { + "description": "", + "properties": { + "units_available": { + "description": "The quantity of units made available by this feature. This quantity will be multiplied by the line_item quantity for line_items that contain this feature.", + "type": "integer" + } + }, + "required": [ + "units_available" + ], + "title": "FeatureQuantity", + "type": "object", + "x-expandableFields": [] + }, "fee": { "description": "", "properties": { @@ -45230,7 +45748,7 @@ "type": "string" }, "features": { - "description": "A list of up to 15 features for this product. These are displayed in [pricing tables](https://stripe.com/docs/payments/checkout/pricing-table).", + "description": "A list of up to 15 features for this product. Entries using `name` are displayed in [pricing tables](https://stripe.com/docs/payments/checkout/pricing-table).", "items": { "$ref": "#/components/schemas/product_feature" }, @@ -45478,6 +45996,25 @@ "product_feature": { "description": "", "properties": { + "feature": { + "anyOf": [ + { + "maxLength": 5000, + "type": "string" + }, + { + "$ref": "#/components/schemas/entitlements.feature" + } + ], + "description": "The ID of the [Feature](docs/api/entitlements/feature) object. This property is mutually-exclusive with `name`; either one must be specified, but not both.", + "x-expansionResources": { + "oneOf": [ + { + "$ref": "#/components/schemas/entitlements.feature" + } + ] + } + }, "name": { "description": "The feature's name. Up to 80 characters long.", "maxLength": 5000, @@ -45486,7 +46023,9 @@ }, "title": "ProductFeature", "type": "object", - "x-expandableFields": [] + "x-expandableFields": [ + "feature" + ] }, "products_resource_provisioning_api_resource_provisioning_gift_card": { "description": "", @@ -90285,6 +90824,211 @@ } } }, + "/v1/customers/{customer}/entitlement_summary": { + "get": { + "description": "

Retrieve the entitlement summary for a customer

", + "operationId": "GetCustomersCustomerEntitlementSummary", + "parameters": [ + { + "description": "The ID of the customer.", + "in": "path", + "name": "customer", + "required": true, + "schema": { + "maxLength": 5000, + "type": "string" + }, + "style": "simple" + }, + { + "description": "Specifies which fields in the response should be expanded.", + "explode": true, + "in": "query", + "name": "expand", + "required": false, + "schema": { + "items": { + "maxLength": 5000, + "type": "string" + }, + "type": "array" + }, + "style": "deepObject" + } + ], + "requestBody": { + "content": { + "application/x-www-form-urlencoded": { + "encoding": {}, + "schema": { + "additionalProperties": false, + "properties": {}, + "type": "object" + } + } + }, + "required": false + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/customer_entitlement_summary" + } + } + }, + "description": "Successful response." + }, + "default": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + }, + "description": "Error response." + } + } + } + }, + "/v1/customers/{customer}/entitlements": { + "get": { + "description": "

Retrieve a list of entitlements for a customer

", + "operationId": "GetCustomersCustomerEntitlements", + "parameters": [ + { + "description": "The ID of the customer.", + "in": "path", + "name": "customer", + "required": true, + "schema": { + "maxLength": 5000, + "type": "string" + }, + "style": "simple" + }, + { + "description": "A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.", + "in": "query", + "name": "ending_before", + "required": false, + "schema": { + "maxLength": 5000, + "type": "string" + }, + "style": "form" + }, + { + "description": "Specifies which fields in the response should be expanded.", + "explode": true, + "in": "query", + "name": "expand", + "required": false, + "schema": { + "items": { + "maxLength": 5000, + "type": "string" + }, + "type": "array" + }, + "style": "deepObject" + }, + { + "description": "A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "type": "integer" + }, + "style": "form" + }, + { + "description": "A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.", + "in": "query", + "name": "starting_after", + "required": false, + "schema": { + "maxLength": 5000, + "type": "string" + }, + "style": "form" + } + ], + "requestBody": { + "content": { + "application/x-www-form-urlencoded": { + "encoding": {}, + "schema": { + "additionalProperties": false, + "properties": {}, + "type": "object" + } + } + }, + "required": false + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/customer_entitlement" + }, + "type": "array" + }, + "has_more": { + "description": "True if this list has another page of items after this one that can be fetched.", + "type": "boolean" + }, + "object": { + "description": "String representing the object's type. Objects of the same type share the same value. Always has the value `list`.", + "enum": [ + "list" + ], + "type": "string" + }, + "url": { + "description": "The URL where this list can be accessed.", + "maxLength": 5000, + "type": "string" + } + }, + "required": [ + "data", + "has_more", + "object", + "url" + ], + "title": "EntitlementsResourceCustomerEntitlementList", + "type": "object", + "x-expandableFields": [ + "data" + ] + } + } + }, + "description": "Successful response." + }, + "default": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + }, + "description": "Error response." + } + } + } + }, "/v1/customers/{customer}/funding_instructions": { "post": { "description": "

Retrieve funding instructions for a customer cash balance. If funding instructions do not yet exist for the customer, new\nfunding instructions will be created. If funding instructions have already been created for a given customer, the same\nfunding instructions will be retrieved. In other words, we will return the same funding instructions each time.

", @@ -92782,6 +93526,341 @@ } } }, + "/v1/entitlements/events": { + "post": { + "description": "

Create an entitlement event manually, outside of the entitlement events automatically created by Stripe lifecycle events.

", + "operationId": "PostEntitlementsEvents", + "requestBody": { + "content": { + "application/x-www-form-urlencoded": { + "encoding": { + "expand": { + "explode": true, + "style": "deepObject" + }, + "grant": { + "explode": true, + "style": "deepObject" + }, + "quantity": { + "explode": true, + "style": "deepObject" + } + }, + "schema": { + "additionalProperties": false, + "properties": { + "customer": { + "description": "The customer that is being granted or revoked entitlement to/from a feature.", + "maxLength": 5000, + "type": "string" + }, + "expand": { + "description": "Specifies which fields in the response should be expanded.", + "items": { + "maxLength": 5000, + "type": "string" + }, + "type": "array" + }, + "feature": { + "description": "The feature that the customer is being granted/revoked entitlement to/from.", + "maxLength": 5000, + "type": "string" + }, + "grant": { + "description": "Contains information about type=grant entitlement event.", + "properties": { + "expires_at": { + "description": "When manually creating a grant entitlement event, you can make it a temporary grant by setting it to expire.", + "format": "unix-time", + "type": "integer" + } + }, + "required": [ + "expires_at" + ], + "title": "grant_param", + "type": "object" + }, + "quantity": { + "description": "Contains information about entitlement events relating to features with type=quantity. Required when the feature has type=quantity.", + "properties": { + "units": { + "description": "When granting or revoking an entitlement to a type=quantity feature, you must specify the number of units you're granting/revoking. When the entitlement event type=grant, this number increments the total quantity available to the customer, and when type=revoke it decrements the total quantity available to the customer.", + "type": "integer" + } + }, + "required": [ + "units" + ], + "title": "quantity_param", + "type": "object" + }, + "type": { + "description": "Whether the event is a grant or revocation of the feature.", + "enum": [ + "grant", + "revoke" + ], + "type": "string" + } + }, + "required": [ + "customer", + "feature", + "type" + ], + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/entitlements.event" + } + } + }, + "description": "Successful response." + }, + "default": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + }, + "description": "Error response." + } + } + } + }, + "/v1/entitlements/features": { + "get": { + "description": "

Retrieve a list of features

", + "operationId": "GetEntitlementsFeatures", + "parameters": [ + { + "description": "A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.", + "in": "query", + "name": "ending_before", + "required": false, + "schema": { + "maxLength": 5000, + "type": "string" + }, + "style": "form" + }, + { + "description": "Specifies which fields in the response should be expanded.", + "explode": true, + "in": "query", + "name": "expand", + "required": false, + "schema": { + "items": { + "maxLength": 5000, + "type": "string" + }, + "type": "array" + }, + "style": "deepObject" + }, + { + "description": "A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "type": "integer" + }, + "style": "form" + }, + { + "description": "A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.", + "in": "query", + "name": "starting_after", + "required": false, + "schema": { + "maxLength": 5000, + "type": "string" + }, + "style": "form" + } + ], + "requestBody": { + "content": { + "application/x-www-form-urlencoded": { + "encoding": {}, + "schema": { + "additionalProperties": false, + "properties": {}, + "type": "object" + } + } + }, + "required": false + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/entitlements.feature" + }, + "type": "array" + }, + "has_more": { + "description": "True if this list has another page of items after this one that can be fetched.", + "type": "boolean" + }, + "object": { + "description": "String representing the object's type. Objects of the same type share the same value. Always has the value `list`.", + "enum": [ + "list" + ], + "type": "string" + }, + "url": { + "description": "The URL where this list can be accessed.", + "maxLength": 5000, + "pattern": "^/v1/entitlements/features", + "type": "string" + } + }, + "required": [ + "data", + "has_more", + "object", + "url" + ], + "title": "EntitlementsResourceFeatureList", + "type": "object", + "x-expandableFields": [ + "data" + ] + } + } + }, + "description": "Successful response." + }, + "default": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + }, + "description": "Error response." + } + } + }, + "post": { + "description": "

Creates a feature

", + "operationId": "PostEntitlementsFeatures", + "requestBody": { + "content": { + "application/x-www-form-urlencoded": { + "encoding": { + "expand": { + "explode": true, + "style": "deepObject" + }, + "quantity": { + "explode": true, + "style": "deepObject" + } + }, + "schema": { + "additionalProperties": false, + "properties": { + "expand": { + "description": "Specifies which fields in the response should be expanded.", + "items": { + "maxLength": 5000, + "type": "string" + }, + "type": "array" + }, + "lookup_key": { + "description": "A unique key you provide as your own system identifier. This may be up to 80 characters.", + "maxLength": 80, + "type": "string" + }, + "name": { + "description": "The feature's name, for your own purpose, not meant to be displayable to the customer.", + "maxLength": 80, + "type": "string" + }, + "quantity": { + "description": "Contains information about type=quantity features. This is required when type=quantity.", + "properties": { + "units_available": { + "description": "The quantity of units made available by this feature. This quantity will be multiplied by the line_item quantity for line_items that contain this feature.", + "type": "integer" + } + }, + "required": [ + "units_available" + ], + "title": "feature_quantity_param", + "type": "object" + }, + "type": { + "description": "The type of feature.", + "enum": [ + "quantity", + "switch" + ], + "type": "string" + } + }, + "required": [ + "lookup_key", + "name", + "type" + ], + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/entitlements.feature" + } + } + }, + "description": "Successful response." + }, + "default": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + }, + "description": "Error response." + } + } + } + }, "/v1/ephemeral_keys": { "post": { "description": "

Creates a short-lived API key for a given resource.

", @@ -149474,9 +150553,14 @@ "type": "array" }, "features": { - "description": "A list of up to 15 features for this product. These are displayed in [pricing tables](https://stripe.com/docs/payments/checkout/pricing-table).", + "description": "A list of up to 15 features for this product. Entries using `name` are displayed in [pricing tables](https://stripe.com/docs/payments/checkout/pricing-table).", "items": { "properties": { + "feature": { + "description": "The ID of the [Feature](docs/api/entitlements/feature) object. This property is mutually-exclusive with `name`; either one must be specified, but not both.", + "maxLength": 5000, + "type": "string" + }, "name": { "description": "The feature's name. Up to 80 characters long.", "maxLength": 5000, @@ -150006,6 +151090,11 @@ { "items": { "properties": { + "feature": { + "description": "The ID of the [Feature](docs/api/entitlements/feature) object. This property is mutually-exclusive with `name`; either one must be specified, but not both.", + "maxLength": 5000, + "type": "string" + }, "name": { "description": "The feature's name. Up to 80 characters long.", "maxLength": 5000, @@ -150027,7 +151116,7 @@ "type": "string" } ], - "description": "A list of up to 15 features for this product. These are displayed in [pricing tables](https://stripe.com/docs/payments/checkout/pricing-table)." + "description": "A list of up to 15 features for this product. Entries using `name` are displayed in [pricing tables](https://stripe.com/docs/payments/checkout/pricing-table)." }, "images": { "anyOf": [ @@ -194013,6 +195102,7 @@ "customer.discount.created", "customer.discount.deleted", "customer.discount.updated", + "customer.entitlement_summary.updated", "customer.source.created", "customer.source.deleted", "customer.source.expiring", @@ -194519,6 +195609,7 @@ "customer.discount.created", "customer.discount.deleted", "customer.discount.updated", + "customer.entitlement_summary.updated", "customer.source.created", "customer.source.deleted", "customer.source.expiring",