## Create `v1.customers.create(CustomerCreateParams**kwargs) -> CustomerCreateResponse` **post** `/v1/customers` Create a new customer ### Parameters - **name:** `str` This will be truncated to 160 characters if the provided name is longer. - **billing\_config:** `BillingConfig` - **billing\_provider\_customer\_id:** `str` - **billing\_provider\_type:** `Literal["aws_marketplace", "stripe", "netsuite", 5 more]` - `"aws_marketplace"` - `"stripe"` - `"netsuite"` - `"custom"` - `"azure_marketplace"` - `"quickbooks_online"` - `"workday"` - `"gcp_marketplace"` - **aws\_is\_subscription\_product:** `bool` True if the aws_product_code is a SAAS subscription product, false otherwise. - **aws\_product\_code:** `str` - **aws\_region:** `Literal["af-south-1", "ap-east-1", "ap-northeast-1", 22 more]` - `"af-south-1"` - `"ap-east-1"` - `"ap-northeast-1"` - `"ap-northeast-2"` - `"ap-northeast-3"` - `"ap-south-1"` - `"ap-southeast-1"` - `"ap-southeast-2"` - `"ca-central-1"` - `"cn-north-1"` - `"cn-northwest-1"` - `"eu-central-1"` - `"eu-north-1"` - `"eu-south-1"` - `"eu-west-1"` - `"eu-west-2"` - `"eu-west-3"` - `"me-south-1"` - `"sa-east-1"` - `"us-east-1"` - `"us-east-2"` - `"us-gov-east-1"` - `"us-gov-west-1"` - `"us-west-1"` - `"us-west-2"` - **stripe\_collection\_method:** `Literal["charge_automatically", "send_invoice"]` - `"charge_automatically"` - `"send_invoice"` - **custom\_fields:** `Dict[str, str]` - **customer\_billing\_provider\_configurations:** `Iterable[CustomerBillingProviderConfiguration]` - **billing\_provider:** `Literal["aws_marketplace", "azure_marketplace", "gcp_marketplace", 2 more]` The billing provider set for this configuration. - `"aws_marketplace"` - `"azure_marketplace"` - `"gcp_marketplace"` - `"stripe"` - `"netsuite"` - **configuration:** `Dict[str, object]` Configuration for the billing provider. The structure of this object is specific to the billing provider and delivery provider combination. Defaults to an empty object, however, for most billing provider + delivery method combinations, it will not be a valid configuration. - **delivery\_method:** `Literal["direct_to_billing_provider", "aws_sqs", "tackle", "aws_sns"]` The method to use for delivering invoices to this customer. If not provided, the `delivery_method_id` must be provided. - `"direct_to_billing_provider"` - `"aws_sqs"` - `"tackle"` - `"aws_sns"` - **delivery\_method\_id:** `str` ID of the delivery method to use for this customer. If not provided, the `delivery_method` must be provided. - **external\_id:** `str` (deprecated, use ingest_aliases instead) an alias that can be used to refer to this customer in usage events - **ingest\_aliases:** `List[str]` Aliases that can be used to refer to this customer in usage events ### Returns - `class CustomerCreateResponse` - **data:** `Customer` ### Example ```python from metronome import Metronome client = Metronome( bearer_token="My Bearer Token", ) customer = client.v1.customers.create( name="Example, Inc.", customer_billing_provider_configurations=[{ "billing_provider": "stripe", "delivery_method": "direct_to_billing_provider", "configuration": { "stripe_customer_id": "cus_123", "stripe_collection_method": "charge_automatically", }, }], ingest_aliases=["team@example.com"], ) print(customer.data) ```