The first time that you call this endpoint for a given IP address and user ID, Corrily calculates the price. On subsequent calls (with the same IP address and user ID), Corrily returns the original calculated price.See Calculate price API examples for examples of how this endpoint is commonly used.
If you’re only using Corrily for price localization (i.e. you are not doing price optimization), this is the endpoint that you call in order to get localized prices.
If you’re also doing price optimization, this is the endpoint you call to get optimized prices.As explained in Price optimization overview, Corrily either returns an experimental price or a control price which will be used to benchmark the experimental prices.Experimental prices are affected by the following factors:
The (potential) customer’s location, which is inferred from their IP address
The product IDs that you want to calculate prices for. In general, you
probably want to include the product IDs for all the product offerings that
you intend to show your visitor. The response from Corrily will contain the
display price for each product. For example, if you provide ["monthly", "annual"], Corrily returns price data for your monthly and annual
products. Product IDs are created by Corrily when you set up your Corrily
account. Email support@corrily.com if you don’t know yours.
If packaging segmentation is enabled, package id can be passed to get the products for a package. That way
the products shown themselves will be based on the package segmentation.
When package segmentation is enabled, the products parameter is optional.
If there is no pacakge segmentation defined for given country, audience, and no package_id, products
are specified in request, an error will be returned.
An IPv4 or IPv6 address. Corrily uses this as the user ID if no user_id is
provided. ip is only required if no user_id is provided and
get_ip_from_request is false. Examples: 187.106.3.73 (IPv4),
2804:14d:ac91:8286:efcb:851f:b59f:fffc (IPv6).
If true, Corrily sources the user’s IP from this request.
get_ip_from_request therefore only works correctly when the Corrily API
request is made from a client device.
An object containing key-value pairs of arbitrary strings that represent features of this user which may affect their optimal price. See User features. Example: {"platform": "ios"}
A currency you wish the price to be tied to. Currencies do not need to match
the passed country. For example, it is possible to return a price in EUR for
someone based in the Unites Sates. Note that the country-adjusted price will
be returned, regardless of the currency set.
With this flag you can run a complete recomputation of what should be shown for a user: country, currency, experiment and arm.
For example, if a user was attached to country A and now you want to attach him to country B, and recompute products and prices for him,
then you can use this flag. After recomputation, all previously saved for this user data will be overrided.
Will override the currency of any previously saved price and instead return
the price in the currency provided. If set to true, a currency param must
be passed. Unlike override the price amount will not be recomputed.
Optional product id to coupon id mapping to explicitly specify the coupon to be applied in the pricing. Coupons feature needs to be enabled for this. example {"product_id_1": "coupon_id_1"}. Multiple coupons can be applied by a comma-delimited string, for example: {"product_id_1": "coupon_id_1,coupon_id2"}
The country that the price data is associated to. If you did not specify a
country when calling calculate price, the country value provided here in the
response is inferred from the user’s IP address.
The currency that the price data is associated to. Tip: check if products. {id}.display.price meets your needs before manually constructing a display price
with this field.
The currency symbol that the price data is associated to. Tip: check if
products.{id}.display.price meets your needs before manually constructing a
display price with this field.
The price data for each of the products that you specified when you called calculate price. The placeholder {id} below represents your product ID(s). See Setup to learn how to create product IDs.
A float version of your price, in case you want to do some custom formatting of the price. Tip: check if products.{id}.display.price meets your needs before manually constructing a display price with this field.
The price data, formatted in a way that your user will quickly understand. This is usually a combination of currency, currency_symbol, and products.{id}.price. products.{id}.price will use commas or periods as separators if that is the local custom. Example: JP¥2,200
If products.{id}.price is an experimental price, this field contains the baseline price striked out, followed by the experimental price. You may want to present this to your user to help them see that they would be paying less than normal customers. Example: ̶3̶4̶ 19
If products.{id}.price is an experimental price, this field contains the percentage discount of the experimental price compared to the baseline price. For example, if the baseline price is 34 and the experimental price is 19, the discount is about 44%: 1 - (19 ÷ 34)) × 100
The currency that products.{id}.integrations.{gateway}.amount is priced in. If this currency is not the same as the top-level currency value in this response (the “local currency”), it means that the payment gateway does not accept the local currency.
The amount that you should pass to the payment gateway when creating the
subscription or charge. Many payment gateways use smallest-unit currency
format
in which case this value will be an integer.
As mentioned in products.{id}.integrations.{gateway}.currency, sometimes a
payment gateway doesn’t support your user’s local currency. If that’s the
case, then products.{id}.integrations. {gateway}.formatted provides the equivalent price in a currency that the payment
gateway does support. This field is similar to products.{id}.display.price in
that it will be formatted in a way that your user will quickly understand.
The price data in a useful format after coupon application.
This value is formatted in the same way as products.{id}.price.
Uses coupons[i].display.price_numeric as a price source.
If products.{id}.price is an experimental price, this field contains the baseline price striked out, followed by the experimental price. You may want to present this to your user to help them see that they would be paying less than normal customers. Example: ̶3̶4̶ 19
If coupon is in percents, then here will be coupon value in percents.
If coupon is absolue value, then this field will contain relation in percents between base price and price after coupon is applied.
{"docsConfig":{"$schema":"https://mintlify.com/docs.json","theme":"mint","name":"Corrily","colors":{"primary":"#2AB896","light":"#3DE2BB","dark":"#371BB1"},"favicon":"/favicon.svg","logo":{"light":"https://mintcdn.com/corrily/Cn8I82iLKQofoT0a/logo/light.svg?fit=max\u0026auto=format\u0026n=Cn8I82iLKQofoT0a\u0026q=85\u0026s=1afe53d6becf6d0438247f620e7703c1","dark":"https://mintcdn.com/corrily/Cn8I82iLKQofoT0a/logo/dark.svg?fit=max\u0026auto=format\u0026n=Cn8I82iLKQofoT0a\u0026q=85\u0026s=35ccda704fe6fcae866645495262a3ef"},"api":{"mdx":{"server":null,"auth":{"method":"key","name":"X-Api-Key"}}},"footer":{"socials":{"website":"https://www.corrily.com","twitter":"https://twitter.com/usecorrily","linkedin":"https://www.linkedin.com/company/corrily"}},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"corrily","hasAudioNarration":false,"actualSubdomain":"corrily","customDomains":["docs.corrily.com"],"gitSource":{"type":"github","owner":"corrily","repo":"docs","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a20c34112ef21155ee55083","collectionId":"e8ba0cd2-8851-4efe-b256-d5ca4fa301f7","schemaVersion":"v2"},"entitlements":{},"buildId":"6ae913e406be5e94190d107c:success","clientVersion":"0.0.4054","searchFilterCounts":[{"language":"default","tag":"Documentation","count":36},{"language":"default","tag":"API Reference","count":18},{"language":"default","tag":"Users","count":7},{"language":"default","tag":"Integration Guides","count":7},{"language":"default","tag":"Price Management","count":6},{"language":"default","tag":"Experiments","count":6},{"language":"default","tag":"Products","count":5},{"language":"default","tag":"Charges","count":4},{"language":"default","tag":"Subscriptions","count":4},{"language":"default","tag":"Basics","count":3}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/calculate-price","slug":"/api-reference/calculate-price","pageMetadata":{"title":"Calculate price","description":"Calculate a localized or optimized price for your service or product based on the customer's location and other characteristics.","api":"POST https://client.corrily.com/v1/prices","href":"/api-reference/calculate-price"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Calculate a localized or optimized price for your service or product based on the customer’s location and other characteristics.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];const id=`\u003cid>`;const gateway=`\u003cgateway>`;function _createMdxContent(props){const _components={a:`a`,code:`code`,em:`em`,li:`li`,p:`p`,span:`span`,ul:`ul`,..._provideComponents(),...props.components},{Expandable,Heading,ParamField,ResponseField}=_components;if(!Expandable)_missingMdxReference(`Expandable`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!ParamField)_missingMdxReference(`ParamField`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`usage`,children:`Usage`}),`\n`,_jsx(_components.p,{children:`The first time that you call this endpoint for a given IP address and user ID, Corrily calculates the price. On subsequent calls (with the same IP address and user ID), Corrily returns the original calculated price.`}),`\n`,_jsxs(_components.p,{children:[`See `,_jsx(_components.a,{href:`/pricing/calculate-price-api-examples`,children:`Calculate price API examples`}),` for examples of how this endpoint is commonly used.`]}),`\n`,_jsx(Heading,{level:`3`,id:`price-localization`,children:`Price localization`}),`\n`,_jsx(_components.p,{children:`If you’re only using Corrily for price localization (i.e. you are not doing price optimization), this is the endpoint that you call in order to get localized prices.`}),`\n`,_jsx(Heading,{level:`3`,id:`price-optimization`,children:`Price optimization`}),`\n`,_jsx(_components.p,{children:`If you’re also doing price optimization, this is the endpoint you call to get optimized prices.`}),`\n`,_jsxs(_components.p,{children:[`As explained in `,_jsx(_components.a,{href:`/pricing/price-optimization-overview`,children:`Price optimization overview`}),`, Corrily either returns an experimental price or a control price which will be used to benchmark the experimental prices.`]}),`\n`,_jsx(_components.p,{children:`Experimental prices are affected by the following factors:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`The (potential) customer’s location, which is inferred from their IP address`}),`\n`,_jsxs(_components.li,{children:[`Any `,_jsx(_components.a,{href:`/users/02_user-features`,children:`user features`}),` that you have provided`]}),`\n`,_jsx(_components.li,{children:`The outcomes of previous price experiments`}),`\n`,_jsx(_components.li,{children:`The upper and lower bounds that you defined in the Corrily Dashboard`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`body-params`,children:`Body Params`}),`\n`,_jsx(ParamField,{body:`user_id`,type:`string`,id:`param-user-id`,children:_jsxs(_components.p,{children:[`A `,_jsx(_components.a,{href:`/users/01_users`,children:`User ID`}),`. Only required if no `,_jsx(_components.code,{children:`ip`}),` is provided and\n`,_jsx(_components.code,{children:`get_ip_from_request`}),` is `,_jsx(_components.code,{children:`false`}),`.`]})}),`\n`,_jsx(ParamField,{body:`products`,type:`string[]`,required:true,id:`param-products`,children:_jsxs(_components.p,{children:[`The product IDs that you want to calculate prices for. In general, you\nprobably want to include the product IDs for all the product offerings that\nyou intend to show your visitor. The response from Corrily will contain the\ndisplay price for each product. For example, if you provide `,_jsx(_components.code,{children:`[\"monthly\", \"annual\"]`}),`, Corrily returns price data for your `,_jsx(_components.code,{children:`monthly`}),` and `,_jsx(_components.code,{children:`annual`}),`\nproducts. Product IDs are created by Corrily when you set up your Corrily\naccount. Email `,_jsx(_components.a,{href:`mailto:support@corrily.com`,children:`support@corrily.com`}),` if you don’t know yours.`]})}),`\n`,_jsx(ParamField,{body:`package_id`,type:`string`,id:`param-package-id`,children:_jsx(_components.p,{children:`If packaging segmentation is enabled, package id can be passed to get the products for a package. That way\nthe products shown themselves will be based on the package segmentation.\nWhen package segmentation is enabled, the products parameter is optional.\nIf there is no pacakge segmentation defined for given country, audience, and no package_id, products\nare specified in request, an error will be returned.`})}),`\n`,_jsx(ParamField,{body:`ip`,type:`string`,id:`param-ip`,children:_jsxs(_components.p,{children:[`An IPv4 or IPv6 address. Corrily uses this as the user ID if no user_id is\nprovided. ip is only required if no user_id is provided and\n`,_jsx(_components.code,{children:`get_ip_from_request`}),` is false. Examples: `,_jsx(_components.code,{children:`187.106.3.73`}),` (IPv4),\n`,_jsx(_components.code,{children:`2804:14d:ac91:8286:efcb:851f:b59f:fffc`}),` (IPv6).`]})}),`\n`,_jsx(ParamField,{body:`get_ip_from_request`,type:`boolean`,id:`param-get-ip-from-request`,children:_jsxs(_components.p,{children:[`If `,_jsx(_components.code,{children:`true`}),`, Corrily sources the user’s IP from this request.\n`,_jsx(_components.code,{children:`get_ip_from_request`}),` therefore only works correctly when the Corrily API\nrequest is made from a client device.`]})}),`\n`,_jsx(ParamField,{body:`country`,type:`string`,id:`param-country`,children:_jsxs(_components.p,{children:[`A two-letter (Alpha-2) `,_jsx(_components.a,{href:`https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes#Current_ISO_3166_country_codes`,children:`ISO 3166 country\ncode`}),`.\nExample: `,_jsx(_components.code,{children:`US`})]})}),`\n`,_jsx(ParamField,{body:`features`,type:`object`,id:`param-features`,children:_jsxs(_components.p,{children:[`An object containing key-value pairs of arbitrary strings that represent features of this user which may affect their optimal price. See `,_jsx(_components.a,{href:`/users/02_user-features`,children:`User features`}),`. Example: `,_jsx(_components.code,{children:`{\"platform\": \"ios\"}`})]})}),`\n`,_jsx(ParamField,{body:`integrations`,type:`string[]`,id:`param-integrations`,children:_jsxs(_components.p,{children:[`The payment gateways to return integration objects for. Accepted values:\n`,_jsx(_components.code,{children:`stripe`}),`, `,_jsx(_components.code,{children:`paypal`}),`, `,_jsx(_components.code,{children:`chargebee`})]})}),`\n`,_jsx(ParamField,{body:`currency`,type:`string`,id:`param-currency`,children:_jsx(_components.p,{children:`A currency you wish the price to be tied to. Currencies do not need to match\nthe passed country. For example, it is possible to return a price in EUR for\nsomeone based in the Unites Sates. Note that the country-adjusted price will\nbe returned, regardless of the currency set.`})}),`\n`,_jsx(ParamField,{body:`override`,type:`boolean`,id:`param-override`,children:_jsx(_components.p,{children:`With this flag you can run a complete recomputation of what should be shown for a user: country, currency, experiment and arm.\nFor example, if a user was attached to country A and now you want to attach him to country B, and recompute products and prices for him,\nthen you can use this flag. After recomputation, all previously saved for this user data will be overrided.`})}),`\n`,_jsx(ParamField,{body:`override_currency`,type:`boolean`,id:`param-override-currency`,children:_jsxs(_components.p,{children:[`Will override the currency of any previously saved price and instead return\nthe price in the currency provided. If set to `,_jsx(_components.code,{children:`true`}),`, a `,_jsx(_components.code,{children:`currency`}),` param must\nbe passed. Unlike `,_jsx(_components.code,{children:`override`}),` the price amount will `,_jsx(_components.em,{children:`not`}),` be recomputed.`]})}),`\n`,_jsx(ParamField,{body:`run_experiment`,type:`boolean`,id:`param-run-experiment`,children:_jsx(_components.p,{children:`If set to false, will make sure no experiment is run.`})}),`\n`,_jsx(ParamField,{body:`coupons`,type:`object`,id:`param-coupons`,children:_jsxs(_components.p,{children:[`Optional product id to coupon id mapping to explicitly specify the coupon to be applied in the pricing. Coupons feature needs to be enabled for this. example `,_jsx(_components.code,{children:`{\"product_id_1\": \"coupon_id_1\"}`}),`. Multiple coupons can be applied by a comma-delimited string, for example: `,_jsx(_components.code,{children:`{\"product_id_1\": \"coupon_id_1,coupon_id2\"}`})]})}),`\n`,_jsx(Heading,{level:`2`,id:`response`,children:`Response`}),`\n`,_jsx(ResponseField,{name:`success`,type:`boolean`,id:`param-success`,children:_jsx(_components.p,{children:`Whether or not the request completed successfully.`})}),`\n`,_jsx(ResponseField,{name:`user_id`,type:`string`,id:`param-user-id-1`,children:_jsx(_components.p,{children:`The user ID that you provided when you called calculate price, or the user’s\nIP address (if you did not provide a user ID).`})}),`\n`,_jsx(ResponseField,{name:`country`,type:`enum`,id:`param-country-1`,children:_jsxs(_components.p,{children:[`The country that the price data is associated to. If you did not specify a\ncountry when calling calculate price, the `,_jsx(_components.code,{children:`country`}),` value provided here in the\nresponse is inferred from the user’s IP address.`]})}),`\n`,_jsx(ResponseField,{name:`currency`,type:`enum`,id:`param-currency-1`,children:_jsxs(_components.p,{children:[`The currency that the price data is associated to. Tip: check if `,_jsx(_components.code,{children:`products. {id}.display.price`}),` meets your needs before manually constructing a display price\nwith this field.`]})}),`\n`,_jsx(ResponseField,{name:`currency_symbol`,type:`string`,id:`param-currency-symbol`,children:_jsxs(_components.p,{children:[`The currency symbol that the price data is associated to. Tip: check if\n`,_jsx(_components.code,{children:`products.{id}.display.price`}),` meets your needs before manually constructing a\ndisplay price with this field.`]})}),`\n`,_jsx(ResponseField,{name:`package_id`,type:`string`,id:`param-package-id-1`,children:_jsx(_components.p,{children:`The package ID that was used to get the products.`})}),`\n`,_jsxs(ResponseField,{name:`products`,type:`object`,id:`param-products-1`,children:[_jsxs(_components.p,{children:[`The price data for each of the products that you specified when you called calculate price. The placeholder `,_jsx(_components.code,{children:`{id}`}),` below represents your product ID(s). See `,_jsx(_components.a,{href:`/basics/setup`,children:`Setup`}),` to learn how to create product IDs.`]}),_jsxs(Expandable,{title:`\u003cid>`,children:[_jsx(ResponseField,{name:`price`,type:`float`,id:`param-price`,children:_jsxs(_components.p,{children:[`A float version of your price, in case you want to do some custom formatting of the price. Tip: check if `,_jsx(_components.code,{children:`products.{id}.display.price`}),` meets your needs before manually constructing a display price with this field.`]})}),_jsx(ResponseField,{name:`price_usd`,type:`float`,id:`param-price-usd`,children:_jsxs(_components.p,{children:[`The current value of `,_jsx(_components.code,{children:`products.{id}.price`}),` in United States dollars.`]})}),_jsx(ResponseField,{name:`interval`,type:`enum`,id:`param-interval`,children:_jsxs(_components.p,{children:[`The billing interval of this product. Possible values: `,_jsx(_components.code,{children:`day`}),`, `,_jsx(_components.code,{children:`week`}),`, `,_jsx(_components.code,{children:`month`}),`, `,_jsx(_components.code,{children:`year`}),`, `,_jsx(_components.code,{children:`one_time`})]})}),_jsx(ResponseField,{name:`interval_count`,type:`integer`,id:`param-interval-count`}),_jsxs(ResponseField,{name:`display`,type:`object`,id:`param-display`,children:[_jsx(_components.p,{children:`The price data, formatted in various ways for display to your user.`}),_jsxs(Expandable,{title:`properties`,children:[_jsx(ResponseField,{name:`price`,type:`string`,id:`param-price-1`,children:_jsxs(_components.p,{children:[`The price data, formatted in a way that your user will quickly understand. This is usually a combination of `,_jsx(_components.code,{children:`currency`}),`, `,_jsx(_components.code,{children:`currency_symbol`}),`, and `,_jsx(_components.code,{children:`products.{id}.price`}),`. `,_jsx(_components.code,{children:`products.{id}.price`}),` will use commas or periods as separators if that is the local custom. Example: `,_jsx(_components.code,{children:`JP¥2,200`})]})}),_jsx(ResponseField,{name:`reference_interval_price`,type:`string`,id:`param-reference-interval-price`,children:_jsx(_components.p,{children:`The default price for the product. You can set this default price in your Corrily Dashboard.`})}),_jsx(ResponseField,{name:`price_with_baseline_strike`,type:`string`,id:`param-price-with-baseline-strike`,children:_jsxs(_components.p,{children:[`If `,_jsx(_components.code,{children:`products.{id}.price`}),` is an experimental price, this field contains the baseline price striked out, followed by the experimental price. You may want to present this to your user to help them see that they would be paying less than normal customers. Example: `,_jsx(_components.span,{className:`katex-error`,title:`ParseError: KaTeX parse error: Expected 'EOF', got '̶' at position 1: ̶̲3̶4̶ `,style:{color:`#cc0000`},children:_jsx(_components.span,{className:`latin_fallback`,children:`̶3̶4̶ `})}),`19`]})}),_jsx(ResponseField,{name:`discount_to_baseline`,type:`float`,id:`param-discount-to-baseline`,children:_jsxs(_components.p,{children:[`If `,_jsx(_components.code,{children:`products.{id}.price`}),` is an experimental price, this field contains the percentage discount of the experimental price compared to the baseline price. For example, if the baseline price is 34 and the experimental price is 19, the discount is about 44%: 1 - (19 ÷ 34)) × 100`]})})]})]}),_jsxs(ResponseField,{name:`trial`,type:`object`,id:`param-trial`,children:[_jsx(_components.p,{children:`The trial data for the product if available`}),_jsxs(Expandable,{children:[_jsx(ResponseField,{name:`trial_id`,type:`id`,id:`param-trial-id`,children:_jsx(_components.p,{children:`The corrily trial id for the product`})}),_jsx(ResponseField,{name:`trial_days`,type:`integer`,id:`param-trial-days`,children:_jsx(_components.p,{children:`Number of days for the trial`})}),_jsx(ResponseField,{name:`trial_type`,type:`enum`,id:`param-trial-type`,children:_jsxs(_components.p,{children:[`Type of the trial. Possible values: `,_jsx(_components.code,{children:`PAID`}),`, `,_jsx(_components.code,{children:`FREE`})]})})]})]}),_jsxs(ResponseField,{name:`integrations`,type:`object`,id:`param-integrations-1`,children:[_jsx(_components.p,{children:`The price data, formatted for payment gateway integration.`}),_jsxs(Expandable,{title:`\u003cgateway>`,children:[_jsx(ResponseField,{name:`currency`,type:`enum`,id:`param-currency-2`,children:_jsxs(_components.p,{children:[`The currency that `,_jsx(_components.code,{children:`products.{id}.integrations.{gateway}.amount`}),` is priced in. If this currency is not the same as the top-level `,_jsx(_components.code,{children:`currency`}),` value in this response (the “local currency”), it means that the payment gateway does not accept the local currency.`]})}),_jsx(ResponseField,{name:`amount`,type:`float`,id:`param-amount`,children:_jsxs(_components.p,{children:[`The amount that you should pass to the payment gateway when creating the\nsubscription or charge. Many payment gateways use `,_jsx(_components.a,{href:`/payment-gateways/integration-guide#map-smallest-unit-currency-format-to-decimal-format`,children:`smallest-unit currency\nformat`}),`\nin which case this value will be an integer.`]})}),_jsx(ResponseField,{name:`formatted`,type:`string`,id:`param-formatted`,children:_jsxs(_components.p,{children:[`As mentioned in `,_jsx(_components.code,{children:`products.{id}.integrations.{gateway}.currency`}),`, sometimes a\npayment gateway doesn’t support your user’s local currency. If that’s the\ncase, then `,_jsx(_components.code,{children:`products.{id}.integrations. {gateway}.formatted`}),` provides the equivalent price in a currency that the payment\ngateway does support. This field is similar to `,_jsx(_components.code,{children:`products.{id}.display.price`}),` in\nthat it will be formatted in a way that your user will quickly understand.`]})})]})]}),_jsxs(ResponseField,{name:`coupons`,type:`object`,id:`param-coupons-1`,children:[_jsx(_components.p,{children:`Optionally include coupon details if the given request matches any segment for\nwhich an active campaign is running`}),_jsxs(Expandable,{children:[_jsx(ResponseField,{name:`id`,type:`string`,id:`param-id`,children:_jsx(_components.p,{children:`coupon id`})}),_jsx(ResponseField,{name:`api_id`,type:`string`,id:`param-api-id`,children:_jsx(_components.p,{children:`coupon corrily api_id`})}),_jsx(ResponseField,{name:`type`,type:`string`,id:`param-type`,children:_jsx(_components.p,{children:`indicates if a coupon is percentage discount coupon or absolute amount\ndiscount coupon`})}),_jsx(ResponseField,{name:`value`,type:`float`,id:`param-value`,children:_jsx(_components.p,{children:`The value or percentage or absolute amount of discount for the coupon`})}),_jsx(ResponseField,{name:`coupon_source`,type:`array`,id:`param-coupon-source`,children:_jsx(_components.p,{children:`Array of strings. Indicates sources of the coupon if the coupon maps to external\nsources. For example: “coupon_source”: [“STRIPE”, “CHARGEBEE”]`})}),_jsx(ResponseField,{name:`external_coupon_id`,type:`number`,id:`param-external-coupon-id`,children:_jsx(_components.p,{children:`External Coupon corrily id`})}),_jsx(ResponseField,{name:`external_coupon_api_id`,type:`string`,id:`param-external-coupon-api-id`,children:_jsx(_components.p,{children:`Coupon id from the external source if that coupon maps to an external\nsource`})}),_jsx(ResponseField,{name:`currency_code`,type:`string`,id:`param-currency-code`,children:_jsx(_components.p,{children:`Indicates currency code if it is configured for the coupon`})}),_jsx(ResponseField,{name:`valid_till`,type:`string`,id:`param-valid-till`,children:_jsx(_components.p,{children:`Datetime in YYYY-MM-DD HH:MM:SS format. Indicates the time the coupon is\nvalid for in UTC.`})}),_jsxs(ResponseField,{name:`display`,type:`object`,id:`param-display-1`,children:[_jsx(_components.p,{children:`The price data after coupon application, formatted in various ways for display to your user.`}),_jsxs(Expandable,{children:[_jsx(ResponseField,{name:`price`,type:`string`,id:`param-price-2`,children:_jsxs(_components.p,{children:[`The price data in a useful format after coupon application.\nThis value is formatted in the same way as `,_jsx(_components.code,{children:`products.{id}.price`}),`.\nUses `,_jsx(_components.code,{children:`coupons[i].display.price_numeric`}),` as a price source.`]})}),_jsx(ResponseField,{name:`price_numeric`,type:`number`,id:`param-price-numeric`,children:_jsx(_components.p,{children:`Numeric price after coupon application`})}),_jsx(ResponseField,{name:`reference_interval_price`,type:`string`,id:`param-reference-interval-price-1`,children:_jsx(_components.p,{children:`The default price for the product. You can set this default price in your Corrily Dashboard.`})}),_jsx(ResponseField,{name:`reference_interval_price_numeric`,type:`number`,id:`param-reference-interval-price-numeric`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`reference_interval_price`}),` in numeric format`]})}),_jsx(ResponseField,{name:`price_with_baseline_strike`,type:`string`,id:`param-price-with-baseline-strike-1`,children:_jsxs(_components.p,{children:[`If `,_jsx(_components.code,{children:`products.{id}.price`}),` is an experimental price, this field contains the baseline price striked out, followed by the experimental price. You may want to present this to your user to help them see that they would be paying less than normal customers. Example: `,_jsx(_components.span,{className:`katex-error`,title:`ParseError: KaTeX parse error: Expected 'EOF', got '̶' at position 1: ̶̲3̶4̶ `,style:{color:`#cc0000`},children:_jsx(_components.span,{className:`latin_fallback`,children:`̶3̶4̶ `})}),`19`]})}),_jsx(ResponseField,{name:`pct_discount_to_baseline`,type:`number`,id:`param-pct-discount-to-baseline`,children:_jsx(_components.p,{children:`If coupon is in percents, then here will be coupon value in percents.\nIf coupon is absolue value, then this field will contain relation in percents between base price and price after coupon is applied.`})})]})]}),_jsx(ResponseField,{name:`amount_after_coupon_discount`,type:`number`,id:`param-amount-after-coupon-discount`,children:_jsx(_components.p,{children:`Price after coupon application`})})]})]})]})]}),`\n`,_jsxs(ResponseField,{name:`variants`,type:`object`,id:`param-variants`,children:[_jsx(_components.p,{children:`Price experimentation metadata. If you are not doing price experimentation,\nyou can ignore this object.`}),_jsxs(Expandable,{children:[_jsx(ResponseField,{name:`experimented_on`,type:`boolean`,id:`param-experimented-on`,children:_jsx(_components.p,{children:`Whether or not this response contains experimental prices.`})}),_jsx(ResponseField,{name:`experiment_id`,type:`int`,id:`param-experiment-id`,children:_jsxs(_components.p,{children:[`The ID of this experiment. An id of `,_jsx(_components.code,{children:`0`}),` means no experiment was run.`]})}),_jsx(ResponseField,{name:`experiment_type`,type:`enum`,id:`param-experiment-type`,children:_jsxs(_components.p,{children:[`One of `,_jsx(_components.code,{children:`price`}),`, `,_jsx(_components.code,{children:`packaging`}),` or `,_jsx(_components.code,{children:`null`}),`.`]})}),_jsx(ResponseField,{name:`products_to_select`,type:`[string]`,id:`param-products-to-select`,children:_jsxs(_components.p,{children:[`In the case of a `,_jsx(_components.code,{children:`packaging`}),` experiment, the product API IDs to pick from\nthe `,_jsx(_components.code,{children:`product`}),` object of the response to show to users.`]})}),_jsx(ResponseField,{name:`treatment_group`,type:`enum`,id:`param-treatment-group`,children:_jsxs(_components.p,{children:[`The experiment arm identifier, equal to `,_jsx(_components.code,{children:`baseline`}),` if experiment is run\nbut baseline arm was selected.`]})})]})]}),`\n`,_jsxs(ResponseField,{name:`audience`,type:`object`,id:`param-audience`,children:[_jsx(_components.p,{children:`The first audience user matches.`}),_jsxs(Expandable,{children:[_jsx(ResponseField,{name:`name`,type:`string`,id:`param-name`,children:_jsx(_components.p,{children:`Audience name`})}),_jsx(ResponseField,{name:`api_id`,type:`string`,id:`param-api-id-1`,children:_jsx(_components.p,{children:`Audience API ID`})})]})]}),`\n`,_jsxs(ResponseField,{name:`matching_audiences`,type:`[object]`,id:`param-matching-audiences`,children:[_jsx(_components.p,{children:`All audiences user matches, sorted by name.`}),_jsxs(Expandable,{children:[_jsx(ResponseField,{name:`name`,type:`string`,id:`param-name-1`,children:_jsx(_components.p,{children:`Audience name`})}),_jsx(ResponseField,{name:`api_id`,type:`string`,id:`param-api-id-2`,children:_jsx(_components.p,{children:`Audience API ID`})})]})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{id,gateway,default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Calculate price","description":"Calculate a localized or optimized price for your service or product based on the customer's location and other characteristics.","api":"POST https://client.corrily.com/v1/prices","href":"/api-reference/calculate-price"}}},"mdxSourceWithNoJs":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];const id=`\u003cid>`;const gateway=`\u003cgateway>`;function _createMdxContent(props){const _components={a:`a`,code:`code`,em:`em`,li:`li`,p:`p`,pre:`pre`,span:`span`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Expandable,Heading,ParamField,RequestExample,ResponseExample,ResponseField}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Expandable)_missingMdxReference(`Expandable`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!ParamField)_missingMdxReference(`ParamField`,true);if(!RequestExample)_missingMdxReference(`RequestExample`,true);if(!ResponseExample)_missingMdxReference(`ResponseExample`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`usage`,children:`Usage`}),`\n`,_jsx(_components.p,{children:`The first time that you call this endpoint for a given IP address and user ID, Corrily calculates the price. On subsequent calls (with the same IP address and user ID), Corrily returns the original calculated price.`}),`\n`,_jsxs(_components.p,{children:[`See `,_jsx(_components.a,{href:`/pricing/calculate-price-api-examples`,children:`Calculate price API examples`}),` for examples of how this endpoint is commonly used.`]}),`\n`,_jsx(Heading,{level:`3`,id:`price-localization`,children:`Price localization`}),`\n`,_jsx(_components.p,{children:`If you’re only using Corrily for price localization (i.e. you are not doing price optimization), this is the endpoint that you call in order to get localized prices.`}),`\n`,_jsx(Heading,{level:`3`,id:`price-optimization`,children:`Price optimization`}),`\n`,_jsx(_components.p,{children:`If you’re also doing price optimization, this is the endpoint you call to get optimized prices.`}),`\n`,_jsxs(_components.p,{children:[`As explained in `,_jsx(_components.a,{href:`/pricing/price-optimization-overview`,children:`Price optimization overview`}),`, Corrily either returns an experimental price or a control price which will be used to benchmark the experimental prices.`]}),`\n`,_jsx(_components.p,{children:`Experimental prices are affected by the following factors:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`The (potential) customer’s location, which is inferred from their IP address`}),`\n`,_jsxs(_components.li,{children:[`Any `,_jsx(_components.a,{href:`/users/02_user-features`,children:`user features`}),` that you have provided`]}),`\n`,_jsx(_components.li,{children:`The outcomes of previous price experiments`}),`\n`,_jsx(_components.li,{children:`The upper and lower bounds that you defined in the Corrily Dashboard`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`body-params`,children:`Body Params`}),`\n`,_jsx(ParamField,{body:`user_id`,type:`string`,id:`param-user-id`,children:_jsxs(_components.p,{children:[`A `,_jsx(_components.a,{href:`/users/01_users`,children:`User ID`}),`. Only required if no `,_jsx(_components.code,{children:`ip`}),` is provided and\n`,_jsx(_components.code,{children:`get_ip_from_request`}),` is `,_jsx(_components.code,{children:`false`}),`.`]})}),`\n`,_jsx(ParamField,{body:`products`,type:`string[]`,required:true,id:`param-products`,children:_jsxs(_components.p,{children:[`The product IDs that you want to calculate prices for. In general, you\nprobably want to include the product IDs for all the product offerings that\nyou intend to show your visitor. The response from Corrily will contain the\ndisplay price for each product. For example, if you provide `,_jsx(_components.code,{children:`[\"monthly\", \"annual\"]`}),`, Corrily returns price data for your `,_jsx(_components.code,{children:`monthly`}),` and `,_jsx(_components.code,{children:`annual`}),`\nproducts. Product IDs are created by Corrily when you set up your Corrily\naccount. Email `,_jsx(_components.a,{href:`mailto:support@corrily.com`,children:`support@corrily.com`}),` if you don’t know yours.`]})}),`\n`,_jsx(ParamField,{body:`package_id`,type:`string`,id:`param-package-id`,children:_jsx(_components.p,{children:`If packaging segmentation is enabled, package id can be passed to get the products for a package. That way\nthe products shown themselves will be based on the package segmentation.\nWhen package segmentation is enabled, the products parameter is optional.\nIf there is no pacakge segmentation defined for given country, audience, and no package_id, products\nare specified in request, an error will be returned.`})}),`\n`,_jsx(ParamField,{body:`ip`,type:`string`,id:`param-ip`,children:_jsxs(_components.p,{children:[`An IPv4 or IPv6 address. Corrily uses this as the user ID if no user_id is\nprovided. ip is only required if no user_id is provided and\n`,_jsx(_components.code,{children:`get_ip_from_request`}),` is false. Examples: `,_jsx(_components.code,{children:`187.106.3.73`}),` (IPv4),\n`,_jsx(_components.code,{children:`2804:14d:ac91:8286:efcb:851f:b59f:fffc`}),` (IPv6).`]})}),`\n`,_jsx(ParamField,{body:`get_ip_from_request`,type:`boolean`,id:`param-get-ip-from-request`,children:_jsxs(_components.p,{children:[`If `,_jsx(_components.code,{children:`true`}),`, Corrily sources the user’s IP from this request.\n`,_jsx(_components.code,{children:`get_ip_from_request`}),` therefore only works correctly when the Corrily API\nrequest is made from a client device.`]})}),`\n`,_jsx(ParamField,{body:`country`,type:`string`,id:`param-country`,children:_jsxs(_components.p,{children:[`A two-letter (Alpha-2) `,_jsx(_components.a,{href:`https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes#Current_ISO_3166_country_codes`,children:`ISO 3166 country\ncode`}),`.\nExample: `,_jsx(_components.code,{children:`US`})]})}),`\n`,_jsx(ParamField,{body:`features`,type:`object`,id:`param-features`,children:_jsxs(_components.p,{children:[`An object containing key-value pairs of arbitrary strings that represent features of this user which may affect their optimal price. See `,_jsx(_components.a,{href:`/users/02_user-features`,children:`User features`}),`. Example: `,_jsx(_components.code,{children:`{\"platform\": \"ios\"}`})]})}),`\n`,_jsx(ParamField,{body:`integrations`,type:`string[]`,id:`param-integrations`,children:_jsxs(_components.p,{children:[`The payment gateways to return integration objects for. Accepted values:\n`,_jsx(_components.code,{children:`stripe`}),`, `,_jsx(_components.code,{children:`paypal`}),`, `,_jsx(_components.code,{children:`chargebee`})]})}),`\n`,_jsx(ParamField,{body:`currency`,type:`string`,id:`param-currency`,children:_jsx(_components.p,{children:`A currency you wish the price to be tied to. Currencies do not need to match\nthe passed country. For example, it is possible to return a price in EUR for\nsomeone based in the Unites Sates. Note that the country-adjusted price will\nbe returned, regardless of the currency set.`})}),`\n`,_jsx(ParamField,{body:`override`,type:`boolean`,id:`param-override`,children:_jsx(_components.p,{children:`With this flag you can run a complete recomputation of what should be shown for a user: country, currency, experiment and arm.\nFor example, if a user was attached to country A and now you want to attach him to country B, and recompute products and prices for him,\nthen you can use this flag. After recomputation, all previously saved for this user data will be overrided.`})}),`\n`,_jsx(ParamField,{body:`override_currency`,type:`boolean`,id:`param-override-currency`,children:_jsxs(_components.p,{children:[`Will override the currency of any previously saved price and instead return\nthe price in the currency provided. If set to `,_jsx(_components.code,{children:`true`}),`, a `,_jsx(_components.code,{children:`currency`}),` param must\nbe passed. Unlike `,_jsx(_components.code,{children:`override`}),` the price amount will `,_jsx(_components.em,{children:`not`}),` be recomputed.`]})}),`\n`,_jsx(ParamField,{body:`run_experiment`,type:`boolean`,id:`param-run-experiment`,children:_jsx(_components.p,{children:`If set to false, will make sure no experiment is run.`})}),`\n`,_jsx(ParamField,{body:`coupons`,type:`object`,id:`param-coupons`,children:_jsxs(_components.p,{children:[`Optional product id to coupon id mapping to explicitly specify the coupon to be applied in the pricing. Coupons feature needs to be enabled for this. example `,_jsx(_components.code,{children:`{\"product_id_1\": \"coupon_id_1\"}`}),`. Multiple coupons can be applied by a comma-delimited string, for example: `,_jsx(_components.code,{children:`{\"product_id_1\": \"coupon_id_1,coupon_id2\"}`})]})}),`\n`,_jsx(Heading,{level:`2`,id:`response`,children:`Response`}),`\n`,_jsx(ResponseField,{name:`success`,type:`boolean`,id:`param-success`,children:_jsx(_components.p,{children:`Whether or not the request completed successfully.`})}),`\n`,_jsx(ResponseField,{name:`user_id`,type:`string`,id:`param-user-id-1`,children:_jsx(_components.p,{children:`The user ID that you provided when you called calculate price, or the user’s\nIP address (if you did not provide a user ID).`})}),`\n`,_jsx(ResponseField,{name:`country`,type:`enum`,id:`param-country-1`,children:_jsxs(_components.p,{children:[`The country that the price data is associated to. If you did not specify a\ncountry when calling calculate price, the `,_jsx(_components.code,{children:`country`}),` value provided here in the\nresponse is inferred from the user’s IP address.`]})}),`\n`,_jsx(ResponseField,{name:`currency`,type:`enum`,id:`param-currency-1`,children:_jsxs(_components.p,{children:[`The currency that the price data is associated to. Tip: check if `,_jsx(_components.code,{children:`products. {id}.display.price`}),` meets your needs before manually constructing a display price\nwith this field.`]})}),`\n`,_jsx(ResponseField,{name:`currency_symbol`,type:`string`,id:`param-currency-symbol`,children:_jsxs(_components.p,{children:[`The currency symbol that the price data is associated to. Tip: check if\n`,_jsx(_components.code,{children:`products.{id}.display.price`}),` meets your needs before manually constructing a\ndisplay price with this field.`]})}),`\n`,_jsx(ResponseField,{name:`package_id`,type:`string`,id:`param-package-id-1`,children:_jsx(_components.p,{children:`The package ID that was used to get the products.`})}),`\n`,_jsxs(ResponseField,{name:`products`,type:`object`,id:`param-products-1`,children:[_jsxs(_components.p,{children:[`The price data for each of the products that you specified when you called calculate price. The placeholder `,_jsx(_components.code,{children:`{id}`}),` below represents your product ID(s). See `,_jsx(_components.a,{href:`/basics/setup`,children:`Setup`}),` to learn how to create product IDs.`]}),_jsxs(Expandable,{title:`\u003cid>`,children:[_jsx(ResponseField,{name:`price`,type:`float`,id:`param-price`,children:_jsxs(_components.p,{children:[`A float version of your price, in case you want to do some custom formatting of the price. Tip: check if `,_jsx(_components.code,{children:`products.{id}.display.price`}),` meets your needs before manually constructing a display price with this field.`]})}),_jsx(ResponseField,{name:`price_usd`,type:`float`,id:`param-price-usd`,children:_jsxs(_components.p,{children:[`The current value of `,_jsx(_components.code,{children:`products.{id}.price`}),` in United States dollars.`]})}),_jsx(ResponseField,{name:`interval`,type:`enum`,id:`param-interval`,children:_jsxs(_components.p,{children:[`The billing interval of this product. Possible values: `,_jsx(_components.code,{children:`day`}),`, `,_jsx(_components.code,{children:`week`}),`, `,_jsx(_components.code,{children:`month`}),`, `,_jsx(_components.code,{children:`year`}),`, `,_jsx(_components.code,{children:`one_time`})]})}),_jsx(ResponseField,{name:`interval_count`,type:`integer`,id:`param-interval-count`}),_jsxs(ResponseField,{name:`display`,type:`object`,id:`param-display`,children:[_jsx(_components.p,{children:`The price data, formatted in various ways for display to your user.`}),_jsxs(Expandable,{title:`properties`,children:[_jsx(ResponseField,{name:`price`,type:`string`,id:`param-price-1`,children:_jsxs(_components.p,{children:[`The price data, formatted in a way that your user will quickly understand. This is usually a combination of `,_jsx(_components.code,{children:`currency`}),`, `,_jsx(_components.code,{children:`currency_symbol`}),`, and `,_jsx(_components.code,{children:`products.{id}.price`}),`. `,_jsx(_components.code,{children:`products.{id}.price`}),` will use commas or periods as separators if that is the local custom. Example: `,_jsx(_components.code,{children:`JP¥2,200`})]})}),_jsx(ResponseField,{name:`reference_interval_price`,type:`string`,id:`param-reference-interval-price`,children:_jsx(_components.p,{children:`The default price for the product. You can set this default price in your Corrily Dashboard.`})}),_jsx(ResponseField,{name:`price_with_baseline_strike`,type:`string`,id:`param-price-with-baseline-strike`,children:_jsxs(_components.p,{children:[`If `,_jsx(_components.code,{children:`products.{id}.price`}),` is an experimental price, this field contains the baseline price striked out, followed by the experimental price. You may want to present this to your user to help them see that they would be paying less than normal customers. Example: `,_jsx(_components.span,{className:`katex-error`,title:`ParseError: KaTeX parse error: Expected 'EOF', got '̶' at position 1: ̶̲3̶4̶ `,style:{color:`#cc0000`},children:_jsx(_components.span,{className:`latin_fallback`,children:`̶3̶4̶ `})}),`19`]})}),_jsx(ResponseField,{name:`discount_to_baseline`,type:`float`,id:`param-discount-to-baseline`,children:_jsxs(_components.p,{children:[`If `,_jsx(_components.code,{children:`products.{id}.price`}),` is an experimental price, this field contains the percentage discount of the experimental price compared to the baseline price. For example, if the baseline price is 34 and the experimental price is 19, the discount is about 44%: 1 - (19 ÷ 34)) × 100`]})})]})]}),_jsxs(ResponseField,{name:`trial`,type:`object`,id:`param-trial`,children:[_jsx(_components.p,{children:`The trial data for the product if available`}),_jsxs(Expandable,{children:[_jsx(ResponseField,{name:`trial_id`,type:`id`,id:`param-trial-id`,children:_jsx(_components.p,{children:`The corrily trial id for the product`})}),_jsx(ResponseField,{name:`trial_days`,type:`integer`,id:`param-trial-days`,children:_jsx(_components.p,{children:`Number of days for the trial`})}),_jsx(ResponseField,{name:`trial_type`,type:`enum`,id:`param-trial-type`,children:_jsxs(_components.p,{children:[`Type of the trial. Possible values: `,_jsx(_components.code,{children:`PAID`}),`, `,_jsx(_components.code,{children:`FREE`})]})})]})]}),_jsxs(ResponseField,{name:`integrations`,type:`object`,id:`param-integrations-1`,children:[_jsx(_components.p,{children:`The price data, formatted for payment gateway integration.`}),_jsxs(Expandable,{title:`\u003cgateway>`,children:[_jsx(ResponseField,{name:`currency`,type:`enum`,id:`param-currency-2`,children:_jsxs(_components.p,{children:[`The currency that `,_jsx(_components.code,{children:`products.{id}.integrations.{gateway}.amount`}),` is priced in. If this currency is not the same as the top-level `,_jsx(_components.code,{children:`currency`}),` value in this response (the “local currency”), it means that the payment gateway does not accept the local currency.`]})}),_jsx(ResponseField,{name:`amount`,type:`float`,id:`param-amount`,children:_jsxs(_components.p,{children:[`The amount that you should pass to the payment gateway when creating the\nsubscription or charge. Many payment gateways use `,_jsx(_components.a,{href:`/payment-gateways/integration-guide#map-smallest-unit-currency-format-to-decimal-format`,children:`smallest-unit currency\nformat`}),`\nin which case this value will be an integer.`]})}),_jsx(ResponseField,{name:`formatted`,type:`string`,id:`param-formatted`,children:_jsxs(_components.p,{children:[`As mentioned in `,_jsx(_components.code,{children:`products.{id}.integrations.{gateway}.currency`}),`, sometimes a\npayment gateway doesn’t support your user’s local currency. If that’s the\ncase, then `,_jsx(_components.code,{children:`products.{id}.integrations. {gateway}.formatted`}),` provides the equivalent price in a currency that the payment\ngateway does support. This field is similar to `,_jsx(_components.code,{children:`products.{id}.display.price`}),` in\nthat it will be formatted in a way that your user will quickly understand.`]})})]})]}),_jsxs(ResponseField,{name:`coupons`,type:`object`,id:`param-coupons-1`,children:[_jsx(_components.p,{children:`Optionally include coupon details if the given request matches any segment for\nwhich an active campaign is running`}),_jsxs(Expandable,{children:[_jsx(ResponseField,{name:`id`,type:`string`,id:`param-id`,children:_jsx(_components.p,{children:`coupon id`})}),_jsx(ResponseField,{name:`api_id`,type:`string`,id:`param-api-id`,children:_jsx(_components.p,{children:`coupon corrily api_id`})}),_jsx(ResponseField,{name:`type`,type:`string`,id:`param-type`,children:_jsx(_components.p,{children:`indicates if a coupon is percentage discount coupon or absolute amount\ndiscount coupon`})}),_jsx(ResponseField,{name:`value`,type:`float`,id:`param-value`,children:_jsx(_components.p,{children:`The value or percentage or absolute amount of discount for the coupon`})}),_jsx(ResponseField,{name:`coupon_source`,type:`array`,id:`param-coupon-source`,children:_jsx(_components.p,{children:`Array of strings. Indicates sources of the coupon if the coupon maps to external\nsources. For example: “coupon_source”: [“STRIPE”, “CHARGEBEE”]`})}),_jsx(ResponseField,{name:`external_coupon_id`,type:`number`,id:`param-external-coupon-id`,children:_jsx(_components.p,{children:`External Coupon corrily id`})}),_jsx(ResponseField,{name:`external_coupon_api_id`,type:`string`,id:`param-external-coupon-api-id`,children:_jsx(_components.p,{children:`Coupon id from the external source if that coupon maps to an external\nsource`})}),_jsx(ResponseField,{name:`currency_code`,type:`string`,id:`param-currency-code`,children:_jsx(_components.p,{children:`Indicates currency code if it is configured for the coupon`})}),_jsx(ResponseField,{name:`valid_till`,type:`string`,id:`param-valid-till`,children:_jsx(_components.p,{children:`Datetime in YYYY-MM-DD HH:MM:SS format. Indicates the time the coupon is\nvalid for in UTC.`})}),_jsxs(ResponseField,{name:`display`,type:`object`,id:`param-display-1`,children:[_jsx(_components.p,{children:`The price data after coupon application, formatted in various ways for display to your user.`}),_jsxs(Expandable,{children:[_jsx(ResponseField,{name:`price`,type:`string`,id:`param-price-2`,children:_jsxs(_components.p,{children:[`The price data in a useful format after coupon application.\nThis value is formatted in the same way as `,_jsx(_components.code,{children:`products.{id}.price`}),`.\nUses `,_jsx(_components.code,{children:`coupons[i].display.price_numeric`}),` as a price source.`]})}),_jsx(ResponseField,{name:`price_numeric`,type:`number`,id:`param-price-numeric`,children:_jsx(_components.p,{children:`Numeric price after coupon application`})}),_jsx(ResponseField,{name:`reference_interval_price`,type:`string`,id:`param-reference-interval-price-1`,children:_jsx(_components.p,{children:`The default price for the product. You can set this default price in your Corrily Dashboard.`})}),_jsx(ResponseField,{name:`reference_interval_price_numeric`,type:`number`,id:`param-reference-interval-price-numeric`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`reference_interval_price`}),` in numeric format`]})}),_jsx(ResponseField,{name:`price_with_baseline_strike`,type:`string`,id:`param-price-with-baseline-strike-1`,children:_jsxs(_components.p,{children:[`If `,_jsx(_components.code,{children:`products.{id}.price`}),` is an experimental price, this field contains the baseline price striked out, followed by the experimental price. You may want to present this to your user to help them see that they would be paying less than normal customers. Example: `,_jsx(_components.span,{className:`katex-error`,title:`ParseError: KaTeX parse error: Expected 'EOF', got '̶' at position 1: ̶̲3̶4̶ `,style:{color:`#cc0000`},children:_jsx(_components.span,{className:`latin_fallback`,children:`̶3̶4̶ `})}),`19`]})}),_jsx(ResponseField,{name:`pct_discount_to_baseline`,type:`number`,id:`param-pct-discount-to-baseline`,children:_jsx(_components.p,{children:`If coupon is in percents, then here will be coupon value in percents.\nIf coupon is absolue value, then this field will contain relation in percents between base price and price after coupon is applied.`})})]})]}),_jsx(ResponseField,{name:`amount_after_coupon_discount`,type:`number`,id:`param-amount-after-coupon-discount`,children:_jsx(_components.p,{children:`Price after coupon application`})})]})]})]})]}),`\n`,_jsxs(ResponseField,{name:`variants`,type:`object`,id:`param-variants`,children:[_jsx(_components.p,{children:`Price experimentation metadata. If you are not doing price experimentation,\nyou can ignore this object.`}),_jsxs(Expandable,{children:[_jsx(ResponseField,{name:`experimented_on`,type:`boolean`,id:`param-experimented-on`,children:_jsx(_components.p,{children:`Whether or not this response contains experimental prices.`})}),_jsx(ResponseField,{name:`experiment_id`,type:`int`,id:`param-experiment-id`,children:_jsxs(_components.p,{children:[`The ID of this experiment. An id of `,_jsx(_components.code,{children:`0`}),` means no experiment was run.`]})}),_jsx(ResponseField,{name:`experiment_type`,type:`enum`,id:`param-experiment-type`,children:_jsxs(_components.p,{children:[`One of `,_jsx(_components.code,{children:`price`}),`, `,_jsx(_components.code,{children:`packaging`}),` or `,_jsx(_components.code,{children:`null`}),`.`]})}),_jsx(ResponseField,{name:`products_to_select`,type:`[string]`,id:`param-products-to-select`,children:_jsxs(_components.p,{children:[`In the case of a `,_jsx(_components.code,{children:`packaging`}),` experiment, the product API IDs to pick from\nthe `,_jsx(_components.code,{children:`product`}),` object of the response to show to users.`]})}),_jsx(ResponseField,{name:`treatment_group`,type:`enum`,id:`param-treatment-group`,children:_jsxs(_components.p,{children:[`The experiment arm identifier, equal to `,_jsx(_components.code,{children:`baseline`}),` if experiment is run\nbut baseline arm was selected.`]})})]})]}),`\n`,_jsxs(ResponseField,{name:`audience`,type:`object`,id:`param-audience`,children:[_jsx(_components.p,{children:`The first audience user matches.`}),_jsxs(Expandable,{children:[_jsx(ResponseField,{name:`name`,type:`string`,id:`param-name`,children:_jsx(_components.p,{children:`Audience name`})}),_jsx(ResponseField,{name:`api_id`,type:`string`,id:`param-api-id-1`,children:_jsx(_components.p,{children:`Audience API ID`})})]})]}),`\n`,_jsxs(ResponseField,{name:`matching_audiences`,type:`[object]`,id:`param-matching-audiences`,children:[_jsx(_components.p,{children:`All audiences user matches, sorted by name.`}),_jsxs(Expandable,{children:[_jsx(ResponseField,{name:`name`,type:`string`,id:`param-name-1`,children:_jsx(_components.p,{children:`Audience name`})}),_jsx(ResponseField,{name:`api_id`,type:`string`,id:`param-api-id-2`,children:_jsx(_components.p,{children:`Audience API ID`})})]})]}),`\n`,_jsx(ResponseExample,{children:_jsx(CodeBlock,{filename:`Example`,numberOfLines:`86`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`86`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"success\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"user_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"193.37.32.232\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"country\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"SG\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"currency\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"SGD\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"currency_symbol\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"S$\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"products\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"monthly\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"price\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`27`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"price_usd\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`20.059360849328197`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"interval\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"month\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"interval_count\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"display\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"price\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"S$ 27\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"reference_interval_price\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"S$ 27\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"price_with_baseline_strike\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"S$ 27\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"discount_to_baseline\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"integrations\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"stripe\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"currency\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"SGD\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"amount\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`2700`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"formatted\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"S$ 27\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"annual\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"price\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`144`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"price_usd\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`106.98325786308372`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"interval\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"year\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"interval_count\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"display\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"price\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"S$ 144\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"reference_interval_price\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"S$ 12\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"price_with_baseline_strike\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"S$ 12\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"discount_to_baseline\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"integrations\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"stripe\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"currency\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"SGD\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"amount\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`14400`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"formatted\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"S$ 144\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"coupon\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"coupon_id_392\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"percentage\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"value\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`10`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"coupon_source\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"chargebee\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"external_coupon_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"chargebee_coupon_392\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"currency_code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"USD\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"valid_till\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2022-02-07 15:49:49\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"display\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"local_currency_symbol\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"€\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"interval_local_price_formatted\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"9 €\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"local_price_formatted\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"9 €\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"usd_price_formatted\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"$11\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"local_price_formatted_with_baseline_strike\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"9 €\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"pct_discount_to_baseline\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.0`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"variants\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"experimented_on\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"experiment_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"treatment_group\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"experiment_type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"arm_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"products_to_select\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: []`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"audience\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"First Audience\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"api_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"audience_1\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"matching_audiences\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"First Audience\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"api_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"audience_1\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Second Audience\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"api_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"audience_2\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})}),`\n`,_jsxs(RequestExample,{children:[_jsx(CodeBlock,{filename:`Bash`,numberOfLines:`20`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`20`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --request`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --url`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://client.corrily.com/v1/prices`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --header`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Content-Type: application/json'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --data`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`{`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"user_id\": \"string\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"products\": [`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"string\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ],`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"ip\": \"string\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"get_ip_from_request\": true,`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"country\": \"string\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"integrations\": [`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"string\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ],`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"currency\": \"string\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"override\": true,`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"run_experiment\": true`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`}`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`Node`,numberOfLines:`23`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`23`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` fetch`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` require`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"node-fetch\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` url`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://client.corrily.com/v1/prices\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` options`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` method:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"POST\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` headers:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Content-Type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"application/json\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` body:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` JSON`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`stringify`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` user_id:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` products:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` [`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` ip:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` get_ip_from_request:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` country:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` integrations:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` [`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` currency:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` override:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` run_experiment:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }),`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`};`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`fetch`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`url`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`options`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`then`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`((`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`res`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`=>`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` res`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`json`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`())`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`then`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`((`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`json`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`=>`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` console`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`log`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`json`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`))`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`catch`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`((`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`err`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`=>`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` console`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`error`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"error:\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` +`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` err`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`));`})]}),`\n`]})})}),_jsx(CodeBlock,{filename:`Python`,numberOfLines:`20`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`20`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` requests`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`url `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://client.corrily.com/v1/prices\"`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`payload `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"user_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"products\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"ip\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"get_ip_from_request\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`True`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"country\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"integrations\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"currency\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"override\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`True`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"run_experiment\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`True`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`headers `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Content-Type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"application/json\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`response `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` requests.post(url, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`json`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`payload, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`headers`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`headers)`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:`print`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(response.text)`})]}),`\n`]})})})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{id,gateway,default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Calculate price","description":"Calculate a localized or optimized price for your service or product based on the customer's location and other characteristics.","api":"POST https://client.corrily.com/v1/prices","href":"/api-reference/calculate-price"}}}},"mdxExtracts":{"tableOfContents":[{"title":"Usage","slug":"usage","depth":2,"children":[{"title":"Price localization","slug":"price-localization","depth":3,"children":[]},{"title":"Price optimization","slug":"price-optimization","depth":3,"children":[]}]},{"title":"Body Params","slug":"body-params","depth":2,"children":[]},{"title":"Response","slug":"response","depth":2,"children":[]}],"codeExamples":{"request":{"type":"RequestExample","children":[{"filename":"Bash","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"shellscript\">\u003ccode language=\"shellscript\" numberOfLines=\"20\">\u003cspan class=\"line\">\u003cspan style=\"color:#953800;--shiki-dark:#DCDCAA\">curl\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> --request\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> POST\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D7BA7D\"> \\\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> --url\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> https://client.corrily.com/v1/prices\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D7BA7D\"> \\\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> --header\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'Content-Type: application/json'\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D7BA7D\"> \\\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> --data\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> '\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"user_id\": \"string\",\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"products\": [\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"string\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> ],\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"ip\": \"string\",\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"get_ip_from_request\": true,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"country\": \"string\",\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"integrations\": [\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"string\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> ],\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"currency\": \"string\",\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"override\": true,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"run_experiment\": true\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">}\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">'\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"},{"filename":"Node","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"javascript\">\u003ccode language=\"javascript\" numberOfLines=\"23\">\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\">const\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#4FC1FF\"> fetch\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\"> =\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\"> require\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">(\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"node-fetch\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">);\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\">const\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#4FC1FF\"> url\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\"> =\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"https://client.corrily.com/v1/prices\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">;\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\">const\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#4FC1FF\"> options\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\"> =\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> method:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"POST\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> headers:\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> { \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Content-Type\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"application/json\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> body:\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#4FC1FF\"> JSON\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\">stringify\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">({\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> user_id:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"string\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> products:\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> [\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"string\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">],\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> ip:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"string\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> get_ip_from_request:\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> true\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> country:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"string\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> integrations:\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> [\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"string\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">],\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> currency:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"string\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> override:\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> true\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> run_experiment:\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> true\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }),\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">};\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\">fetch\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">(\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">url\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">, \u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">options\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">)\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> .\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\">then\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">((\u003c/span>\u003cspan style=\"color:#953800;--shiki-dark:#9CDCFE\">res\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">) \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\">=>\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> res\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\">json\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">())\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> .\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\">then\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">((\u003c/span>\u003cspan style=\"color:#953800;--shiki-dark:#9CDCFE\">json\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">) \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\">=>\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> console\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\">log\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">(\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">json\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">))\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> .\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\">catch\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">((\u003c/span>\u003cspan style=\"color:#953800;--shiki-dark:#9CDCFE\">err\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">) \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\">=>\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> console\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\">error\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">(\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"error:\"\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\"> +\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> err\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">));\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"},{"filename":"Python","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"python\">\u003ccode language=\"python\" numberOfLines=\"20\">\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\">import\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> requests\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">url \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"https://client.corrily.com/v1/prices\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">payload \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"user_id\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"string\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"products\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: [\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"string\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">],\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"ip\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"string\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"get_ip_from_request\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">True\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"country\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"string\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"integrations\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: [\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"string\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">],\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"currency\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"string\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"override\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">True\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"run_experiment\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">True\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">headers \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Content-Type\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"application/json\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">response \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> requests.post(url, \u003c/span>\u003cspan style=\"color:#953800;--shiki-dark:#9CDCFE\">json\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">payload, \u003c/span>\u003cspan style=\"color:#953800;--shiki-dark:#9CDCFE\">headers\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">headers)\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0550AE;--shiki-dark:#DCDCAA\">print\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">(response.text)\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"}],"attributes":[]},"response":{"type":"ResponseExample","children":[{"filename":"Example","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"json\">\u003ccode language=\"json\" numberOfLines=\"86\">\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"success\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">true\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"user_id\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"193.37.32.232\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"country\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"SG\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"currency\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"SGD\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"currency_symbol\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"S$\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"products\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"monthly\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"price\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">27\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"price_usd\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">20.059360849328197\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"interval\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"month\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"interval_count\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">1\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"display\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"price\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"S$ 27\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"reference_interval_price\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"S$ 27\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"price_with_baseline_strike\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"S$ 27\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"discount_to_baseline\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">0\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"integrations\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"stripe\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"currency\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"SGD\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"amount\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">2700\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"formatted\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"S$ 27\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"annual\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"price\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">144\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"price_usd\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">106.98325786308372\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"interval\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"year\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"interval_count\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">1\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"display\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"price\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"S$ 144\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"reference_interval_price\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"S$ 12\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"price_with_baseline_strike\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"S$ 12\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"discount_to_baseline\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">0\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"integrations\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"stripe\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"currency\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"SGD\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"amount\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">14400\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"formatted\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"S$ 144\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"coupon\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"id\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"coupon_id_392\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"type\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"percentage\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"value\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">10\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"coupon_source\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"chargebee\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"external_coupon_id\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"chargebee_coupon_392\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"currency_code\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"USD\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"valid_till\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"2022-02-07 15:49:49\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"display\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"local_currency_symbol\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"€\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"interval_local_price_formatted\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"9 €\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"local_price_formatted\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"9 €\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"usd_price_formatted\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"$11\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"local_price_formatted_with_baseline_strike\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"9 €\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"pct_discount_to_baseline\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">0.0\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"variants\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"experimented_on\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"experiment_id\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">0\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"treatment_group\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"experiment_type\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"arm_id\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">0\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"products_to_select\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: []\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"audience\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"name\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"First Audience\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"api_id\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"audience_1\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"matching_audiences\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: [\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"name\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"First Audience\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"api_id\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"audience_1\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"name\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Second Audience\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"api_id\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"audience_2\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> ],\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"}],"attributes":[]}},"endpoint":{"title":"Calculate price","path":"/v1/prices","servers":[{"url":"https://client.corrily.com"}],"method":"post","request":{"security":[{"title":"API Key Auth","parameters":{"header":{"X-Api-Key":{"type":"apiKey"}},"query":{},"cookie":{}}}],"parameters":{"query":{},"header":{},"cookie":{},"path":{}},"body":{"application/json":{"schemaArray":[{"type":"object","properties":{"user_id":[{"type":"string","description":"A User ID . Only required if no `ip` is provided and `get_ip_from_request` is `false` ."}],"products":[{"type":"array","items":[{"type":"string"}],"description":"The product IDs that you want to calculate prices for. In general, you probably want to include the product IDs for all the product offerings that you intend to show your visitor. The response from Corrily will contain the display price for each product. For example, if you provide `[\"monthly\", \"annual\"]` , Corrily returns price data for your `monthly` and `annual` products. Product IDs are created by Corrily when you set up your Corrily account. Email support@corrily.com if you don’t know yours.","required":true}],"package_id":[{"type":"string","description":"If packaging segmentation is enabled, package id can be passed to get the products for a package. That way the products shown themselves will be based on the package segmentation. When package segmentation is enabled, the products parameter is optional. If there is no pacakge segmentation defined for given country, audience, and no package_id, products are specified in request, an error will be returned."}],"ip":[{"type":"string","description":"An IPv4 or IPv6 address. Corrily uses this as the user ID if no user_id is provided. ip is only required if no user_id is provided and `get_ip_from_request` is false. Examples: `187.106.3.73` (IPv4), `2804:14d:ac91:8286:efcb:851f:b59f:fffc` (IPv6)."}],"get_ip_from_request":[{"type":"boolean","description":"If `true` , Corrily sources the user’s IP from this request. `get_ip_from_request` therefore only works correctly when the Corrily API request is made from a client device."}],"country":[{"type":"string","description":"A two-letter (Alpha-2) ISO 3166 country code . Example: `US`"}],"features":[{"type":"object","properties":{},"description":"An object containing key-value pairs of arbitrary strings that represent features of this user which may affect their optimal price. See User features . Example: `{\"platform\": \"ios\"}`"}],"integrations":[{"type":"array","items":[{"type":"string"}],"description":"The payment gateways to return integration objects for. Accepted values: `stripe` , `paypal` , `chargebee`"}],"currency":[{"type":"string","description":"A currency you wish the price to be tied to. Currencies do not need to match the passed country. For example, it is possible to return a price in EUR for someone based in the Unites Sates. Note that the country-adjusted price will be returned, regardless of the currency set."}],"override":[{"type":"boolean","description":"With this flag you can run a complete recomputation of what should be shown for a user: country, currency, experiment and arm. For example, if a user was attached to country A and now you want to attach him to country B, and recompute products and prices for him, then you can use this flag. After recomputation, all previously saved for this user data will be overrided."}],"override_currency":[{"type":"boolean","description":"Will override the currency of any previously saved price and instead return the price in the currency provided. If set to `true` , a `currency` param must be passed. Unlike `override` the price amount will not be recomputed."}],"run_experiment":[{"type":"boolean","description":"If set to false, will make sure no experiment is run."}],"coupons":[{"type":"object","properties":{},"description":"Optional product id to coupon id mapping to explicitly specify the coupon to be applied in the pricing. Coupons feature needs to be enabled for this. example `{\"product_id_1\": \"coupon_id_1\"}` . Multiple coupons can be applied by a comma-delimited string, for example: `{\"product_id_1\": \"coupon_id_1,coupon_id2\"}`"}]}}],"examples":{"example":{"value":{"user_id":"\u003cstring>","products":["\u003cstring>"],"package_id":"\u003cstring>","ip":"\u003cstring>","get_ip_from_request":true,"country":"\u003cstring>","features":{},"integrations":["\u003cstring>"],"currency":"\u003cstring>","override":true,"override_currency":true,"run_experiment":true,"coupons":{}}}}}}},"response":{"200":{"application/json":{"schemaArray":[{"type":"object","properties":{"success":[{"type":"boolean","description":"Whether or not the request completed successfully."}],"user_id":[{"type":"string","description":"The user ID that you provided when you called calculate price, or the user’s IP address (if you did not provide a user ID)."}],"country":[{"type":"object","properties":{},"description":"The country that the price data is associated to. If you did not specify a country when calling calculate price, the `country` value provided here in the response is inferred from the user’s IP address."}],"currency":[{"type":"object","properties":{},"description":"The currency that the price data is associated to. Tip: check if `products. {id}.display.price` meets your needs before manually constructing a display price with this field."}],"currency_symbol":[{"type":"string","description":"The currency symbol that the price data is associated to. Tip: check if `products.{id}.display.price` meets your needs before manually constructing a display price with this field."}],"package_id":[{"type":"string","description":"The package ID that was used to get the products."}],"products":[{"type":"object","properties":{"price":[{"type":"number","description":"A float version of your price, in case you want to do some custom formatting of the price. Tip: check if `products.{id}.display.price` meets your needs before manually constructing a display price with this field."}],"price_usd":[{"type":"number","description":"The current value of `products.{id}.price` in United States dollars."}],"interval":[{"type":"object","properties":{},"description":"The billing interval of this product. Possible values: `day` , `week` , `month` , `year` , `one_time`"}],"interval_count":[{"type":"integer"}],"display":[{"type":"object","properties":{"price":[{"type":"string","description":"The price data, formatted in a way that your user will quickly understand. This is usually a combination of `currency` , `currency_symbol` , and `products.{id}.price` . `products.{id}.price` will use commas or periods as separators if that is the local custom. Example: `JP¥2,200`"}],"reference_interval_price":[{"type":"string","description":"The default price for the product. You can set this default price in your Corrily Dashboard."}],"price_with_baseline_strike":[{"type":"string","description":"If `products.{id}.price` is an experimental price, this field contains the baseline price striked out, followed by the experimental price. You may want to present this to your user to help them see that they would be paying less than normal customers. Example: ̶3̶4̶ 19"}],"discount_to_baseline":[{"type":"number","description":"If `products.{id}.price` is an experimental price, this field contains the percentage discount of the experimental price compared to the baseline price. For example, if the baseline price is 34 and the experimental price is 19, the discount is about 44%: 1 - (19 ÷ 34)) × 100"}]},"description":"The price data, formatted in various ways for display to your user."}],"trial":[{"type":"object","properties":{"trial_id":[{"type":"object","properties":{},"description":"The corrily trial id for the product"}],"trial_days":[{"type":"integer","description":"Number of days for the trial"}],"trial_type":[{"type":"object","properties":{},"description":"Type of the trial. Possible values: `PAID` , `FREE`"}]},"description":"The trial data for the product if available"}],"integrations":[{"type":"object","properties":{"currency":[{"type":"object","properties":{},"description":"The currency that `products.{id}.integrations.{gateway}.amount` is priced in. If this currency is not the same as the top-level `currency` value in this response (the “local currency”), it means that the payment gateway does not accept the local currency."}],"amount":[{"type":"number","description":"The amount that you should pass to the payment gateway when creating the subscription or charge. Many payment gateways use smallest-unit currency format in which case this value will be an integer."}],"formatted":[{"type":"string","description":"As mentioned in `products.{id}.integrations.{gateway}.currency` , sometimes a payment gateway doesn’t support your user’s local currency. If that’s the case, then `products.{id}.integrations. {gateway}.formatted` provides the equivalent price in a currency that the payment gateway does support. This field is similar to `products.{id}.display.price` in that it will be formatted in a way that your user will quickly understand."}]},"description":"The price data, formatted for payment gateway integration."}],"coupons":[{"type":"object","properties":{"id":[{"type":"string","description":"coupon id"}],"api_id":[{"type":"string","description":"coupon corrily api_id"}],"type":[{"type":"string","description":"indicates if a coupon is percentage discount coupon or absolute amount discount coupon"}],"value":[{"type":"number","description":"The value or percentage or absolute amount of discount for the coupon"}],"coupon_source":[{"type":"array","items":[{"type":"object","properties":{}}],"description":"Array of strings. Indicates sources of the coupon if the coupon maps to external sources. For example: “coupon_source”: [“STRIPE”, “CHARGEBEE”]"}],"external_coupon_id":[{"type":"number","description":"External Coupon corrily id"}],"external_coupon_api_id":[{"type":"string","description":"Coupon id from the external source if that coupon maps to an external source"}],"currency_code":[{"type":"string","description":"Indicates currency code if it is configured for the coupon"}],"valid_till":[{"type":"string","description":"Datetime in YYYY-MM-DD HH:MM:SS format. Indicates the time the coupon is valid for in UTC."}],"display":[{"type":"object","properties":{"price":[{"type":"string","description":"The price data in a useful format after coupon application. This value is formatted in the same way as `products.{id}.price` . Uses `coupons[i].display.price_numeric` as a price source."}],"price_numeric":[{"type":"number","description":"Numeric price after coupon application"}],"reference_interval_price":[{"type":"string","description":"The default price for the product. You can set this default price in your Corrily Dashboard."}],"reference_interval_price_numeric":[{"type":"number","description":"`reference_interval_price` in numeric format"}],"price_with_baseline_strike":[{"type":"string","description":"If `products.{id}.price` is an experimental price, this field contains the baseline price striked out, followed by the experimental price. You may want to present this to your user to help them see that they would be paying less than normal customers. Example: ̶3̶4̶ 19"}],"pct_discount_to_baseline":[{"type":"number","description":"If coupon is in percents, then here will be coupon value in percents. If coupon is absolue value, then this field will contain relation in percents between base price and price after coupon is applied."}]},"description":"The price data after coupon application, formatted in various ways for display to your user."}],"amount_after_coupon_discount":[{"type":"number","description":"Price after coupon application"}]},"description":"Optionally include coupon details if the given request matches any segment for which an active campaign is running"}]},"description":"The price data for each of the products that you specified when you called calculate price. The placeholder `{id}` below represents your product ID(s). See Setup to learn how to create product IDs."}],"variants":[{"type":"object","properties":{"experimented_on":[{"type":"boolean","description":"Whether or not this response contains experimental prices."}],"experiment_id":[{"type":"integer","description":"The ID of this experiment. An id of `0` means no experiment was run."}],"experiment_type":[{"type":"object","properties":{},"description":"One of `price` , `packaging` or `null` ."}],"products_to_select":[{"type":"object","properties":{},"description":"In the case of a `packaging` experiment, the product API IDs to pick from the `product` object of the response to show to users."}],"treatment_group":[{"type":"object","properties":{},"description":"The experiment arm identifier, equal to `baseline` if experiment is run but baseline arm was selected."}]},"description":"Price experimentation metadata. If you are not doing price experimentation, you can ignore this object."}],"audience":[{"type":"object","properties":{"name":[{"type":"string","description":"Audience name"}],"api_id":[{"type":"string","description":"Audience API ID"}]},"description":"The first audience user matches."}],"matching_audiences":[{"type":"object","properties":{"name":[{"type":"string","description":"Audience name"}],"api_id":[{"type":"string","description":"Audience API ID"}]},"description":"All audiences user matches, sorted by name."}]}}],"examples":{"example":{"value":{"success":true,"user_id":"\u003cstring>","country":{},"currency":{},"currency_symbol":"\u003cstring>","package_id":"\u003cstring>","products":{"price":123,"price_usd":123,"interval":{},"interval_count":123,"display":{"price":"\u003cstring>","reference_interval_price":"\u003cstring>","price_with_baseline_strike":"\u003cstring>","discount_to_baseline":123},"trial":{"trial_id":{},"trial_days":123,"trial_type":{}},"integrations":{"currency":{},"amount":123,"formatted":"\u003cstring>"},"coupons":{"id":"\u003cstring>","api_id":"\u003cstring>","type":"\u003cstring>","value":123,"coupon_source":[{}],"external_coupon_id":123,"external_coupon_api_id":"\u003cstring>","currency_code":"\u003cstring>","valid_till":"\u003cstring>","display":{"price":"\u003cstring>","price_numeric":123,"reference_interval_price":"\u003cstring>","reference_interval_price_numeric":123,"price_with_baseline_strike":"\u003cstring>","pct_discount_to_baseline":123},"amount_after_coupon_discount":123}},"variants":{"experimented_on":true,"experiment_id":123,"experiment_type":{},"products_to_select":{},"treatment_group":{}},"audience":{"name":"\u003cstring>","api_id":"\u003cstring>"},"matching_audiences":{"name":"\u003cstring>","api_id":"\u003cstring>"}}}}}}},"deprecated":false}},"jsLinks":[],"subdomain":"corrily","siteName":"Corrily","title":"Calculate price - Corrily","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-01-02T07:17:18.176Z","originalFileLocation":"api-reference/calculate-price.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Calculate a localized or optimized price for your service or product based on the customer\u0026#x27;s location and other characteristics.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Corrily\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/corrily/gXHpgCTf7BKZKcpb/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/corrily/gXHpgCTf7BKZKcpb/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/corrily/gXHpgCTf7BKZKcpb/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/corrily/gXHpgCTf7BKZKcpb/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/corrily/gXHpgCTf7BKZKcpb/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/corrily/gXHpgCTf7BKZKcpb/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/corrily/gXHpgCTf7BKZKcpb/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/corrily/gXHpgCTf7BKZKcpb/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/corrily/gXHpgCTf7BKZKcpb/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Calculate price - Corrily\">\u003cmeta data-mint-head property=\"og:description\" content=\"Calculate a localized or optimized price for your service or product based on the customer\u0026#x27;s location and other characteristics.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Corrily\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.corrily.com/api-reference/calculate-price\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://corrily.mintlify.app/_mintlify/api/og/v2?division=Prices\u0026amp;title=Calculate+price\u0026amp;description=Calculate+a+localized+or+optimized+price+for+your+service+or+product+based+on+the+customer%27s+location+and+other+characteristics.\u0026amp;theme=a21d30a3f45764629d86f2da\u0026amp;signature=74f822d8b39322116d839756a8efd3359fb983124ee6f9b47d53d0fd00ac1549\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Calculate price - Corrily\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Calculate a localized or optimized price for your service or product based on the customer\u0026#x27;s location and other characteristics.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://corrily.mintlify.app/_mintlify/api/og/v2?division=Prices\u0026amp;title=Calculate+price\u0026amp;description=Calculate+a+localized+or+optimized+price+for+your+service+or+product+based+on+the+customer%27s+location+and+other+characteristics.\u0026amp;theme=a21d30a3f45764629d86f2da\u0026amp;signature=74f822d8b39322116d839756a8efd3359fb983124ee6f9b47d53d0fd00ac1549\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/corrily/gXHpgCTf7BKZKcpb/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Corrily\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2AB896\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.corrily.com/api-reference/calculate-price\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/calculate-price.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.corrily.com/#organization\",\"name\":\"Corrily\",\"url\":\"https://docs.corrily.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/corrily/Cn8I82iLKQofoT0a/logo/light.svg?fit=max\u0026auto=format\u0026n=Cn8I82iLKQofoT0a\u0026q=85\u0026s=1afe53d6becf6d0438247f620e7703c1\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.corrily.com#website\",\"name\":\"Corrily\",\"url\":\"https://docs.corrily.com\",\"publisher\":{\"@id\":\"https://docs.corrily.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.corrily.com/api-reference/calculate-price#webpage\",\"url\":\"https://docs.corrily.com/api-reference/calculate-price\",\"name\":\"Calculate price\",\"description\":\"Calculate a localized or optimized price for your service or product based on the customer's location and other characteristics.\",\"dateModified\":\"2026-01-02T07:17:18.176Z\",\"isPartOf\":{\"@id\":\"https://docs.corrily.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.corrily.com/api-reference/calculate-price#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.corrily.com/api-reference/calculate-price#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Corrily\",\"item\":\"https://docs.corrily.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Calculate price\",\"item\":\"https://docs.corrily.com/api-reference/calculate-price\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.corrily.com/api-reference/calculate-price#apireference\",\"headline\":\"Calculate price\",\"name\":\"Calculate price\",\"description\":\"Calculate a localized or optimized price for your service or product based on the customer's location and other characteristics.\",\"url\":\"https://docs.corrily.com/api-reference/calculate-price\",\"mainEntityOfPage\":{\"@id\":\"https://docs.corrily.com/api-reference/calculate-price#webpage\"},\"dateModified\":\"2026-01-02T07:17:18.176Z\",\"publisher\":{\"@id\":\"https://docs.corrily.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.corrily.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Corrily\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Corrily","nav":{"global":null,"anchors":[{"anchor":"Documentation","icon":"book-open","pages":[{"title":"Documentation","href":"/basics/00_introduction"}]},{"anchor":"API Reference","icon":"rectangle-terminal","groups":[{"group":"Prices","pages":[{"title":"Calculate price","api":"POST https://client.corrily.com/v1/prices","href":"/api-reference/calculate-price"}]},{"group":"Paywall","pages":[{"title":"Get Paywall","description":"Fetch Corrily Paywall content including Paywall design config, Plans to display, currency \u0026 price for each Plan by providing country, IP/user_id and other characteristics.","api":"POST https://client.corrily.com/v1/paywall","href":"/api-reference/get-paywall"}]},{"group":"Users","pages":[{"title":"Identify Call","api":"POST https://client.corrily.com/v1/identify","href":"/api-reference/set-user-characteristics"},{"title":"Get User country","api":"GET https://client.corrily.com/v1/users/{user_id}","href":"/api-reference/get-user-details"}]},{"group":"Subscriptions","pages":[{"title":"Create subscription","api":"POST https://client.corrily.com/v1/subscriptions","href":"/api-reference/create-subscription"},{"title":"Get subscription","api":"GET https://client.corrily.com/v1/subscriptions/{user_id}/{origin}/{origin_id}","href":"/api-reference/get-subscription"},{"title":"Update subscription","api":"POST https://client.corrily.com/v1/subscriptions/{user_id}/{origin}/{origin_id}","href":"/api-reference/update-subscription"},{"title":"Delete subscription","api":"DELETE https://client.corrily.com/v1/subscriptions/{user_id}/{origin}/{origin_id}","href":"/api-reference/delete-subscription"}]},{"group":"Charges","pages":[{"title":"Create charge","api":"POST https://client.corrily.com/v1/charges","href":"/api-reference/create-charge"},{"title":"Get charge","api":"GET https://client.corrily.com/v1/charges/{user_id}/{origin}/{origin_id}","href":"/api-reference/get-charge"},{"title":"Update charge","api":"POST https://client.corrily.com/v1/charges/{user_id}/{origin}/{origin_id}","href":"/api-reference/update-charge"},{"title":"Delete charge","api":"DELETE https://client.corrily.com/v1/charges/{user_id}/{origin}/{origin_id}","href":"/api-reference/delete-charge"}]},{"group":"Products","pages":[{"title":"Create Product","api":"POST https://client.corrily.com/v1/products","href":"/api-reference/create-product"},{"title":"Get Product","api":"GET https://client.corrily.com/v1/products/{product_api_id}","href":"/api-reference/get-product"},{"title":"Get All Products","api":"GET https://client.corrily.com/v1/products","href":"/api-reference/get-all-products"},{"title":"Update Product","api":"POST https://client.corrily.com/v1/products","href":"/api-reference/update-product"},{"title":"Delete Product","api":"DELETE https://client.corrily.com/v1/products/{product_api_id}","href":"/api-reference/delete-product"}]},{"group":"Coupons","pages":[{"title":"Get Coupons","api":"GET https://client.corrily.com/v1/coupons","href":"/api-reference/get-coupons"}]}]},{"anchor":"Implementation Examples","href":"https://github.com/corrily/integration-examples","icon":"github"}]},"basePath":"","title":"Calculate price - Corrily","buildId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","deploymentId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","dynamics":["c2aa737661","2b790eda92","b0f84f53ff"],"chunks":["OpenApiReferenceProvider-C8RPHPxo.js","utils-0BK-9q6z.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DfjzsUJT.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B4v9psJ4.js","snippetPresets-CpTQv-Ez.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-BNP-Fvr0.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BSgu6h1D.js","shallow-Biv1i9Gs.js","getApiPlaygroundDisplay-BoGOXhtF.js","CodeSnippet-DvQoT18_.js","CodeSnippets-Dnpa15xT.js","Page-Buji1S4J.js","getPastedJson-xAIyhUFE.js","icon-S6FBih11.js","MethodPill-SaYeUZyk.js","DuplicateIcon-Cs-p3v2Q.js","createIcon-DjCFEoHq.js","DynamicMarkdown-BcnBltEQ.js","SectionHeading-BUBl0eEF.js","axios-vUo_bRtp.js"]}