curl --request GET \
--url https://playground.runa.io/v2/product/{product_code} \
--header 'X-Api-Key: <api-key>'{
"name": "Example Merchant",
"code": "XYZ-US",
"currency": "USD",
"state": "LIVE",
"is_orderable": true,
"payout_type": "gift_card",
"categories": [
"food-and-drink",
"entertainment"
],
"countries_redeemable_in": [
"US"
],
"customer_service": {
"phone_number": "+1234567890",
"website_url": "https://merchant.example.com/customer-service"
},
"discount_multiplier": "0.05",
"availability": "realtime",
"gift_card": {
"assets": {
"card_image_url": "https://gift.runa.io/static/product_assets/XYZ-US/XYZ-US-card.png",
"icon_image_url": "https://gift.runa.io/static/product_assets/XYZ-US/XYZ-US-icon.png",
"primary_color": "#000000"
},
"balance_check_url": "https://merchant.example.com/balance-check",
"content_resources": {
"description_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/description.md",
"disclaimer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/disclaimer_markdown.md",
"refund_policy_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/refund_policy_markdown.md",
"reissuance_policy_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/reissuance_policy_markdown.md",
"terms_buyer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_buyer.md",
"terms_consumer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_consumer.md",
"redemption_instructions_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/redeem_markdown.md",
"locale": "en_US"
},
"expiry": {
"date_policy": "Expires 2 years from issue date",
"in_months": 12,
"type": "from-issue-date"
},
"redeemable_at": "all",
"website_url": "https://merchant.example.com",
"barcode_format": "code-128",
"e_code_usage_type": "url-only",
"denominations": {
"type": "fixed",
"minimum_value": "10.00",
"maximum_value": "100.00",
"available_list": [
"10.00",
"20.00",
"50.00",
"100.00"
]
}
},
"subscription": {
"assets": {
"card_image_url": "https://gift.runa.io/static/product_assets/XYZ-US/XYZ-US-card.png",
"icon_image_url": "https://gift.runa.io/static/product_assets/XYZ-US/XYZ-US-icon.png",
"primary_color": "#000000"
},
"balance_check_url": "https://merchant.example.com/balance-check",
"content_resources": {
"description_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/description.md",
"disclaimer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/disclaimer_markdown.md",
"refund_policy_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/refund_policy_markdown.md",
"reissuance_policy_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/reissuance_policy_markdown.md",
"terms_buyer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_buyer.md",
"terms_consumer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_consumer.md",
"redemption_instructions_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/redeem_markdown.md",
"locale": "en_US"
},
"expiry": {
"date_policy": "Expires 2 years from issue date",
"in_months": 12,
"type": "from-issue-date"
},
"redeemable_at": "all",
"website_url": "https://merchant.example.com",
"barcode_format": "code-128",
"e_code_usage_type": "url-only",
"subscription_plans": [
{
"length_unit": "MONTHS",
"length": 12,
"name": "3 month subscription",
"price": "10.00",
"subscription_plan_code": "XYZ-US-SUB-1"
}
]
},
"payment": {
"assets": {
"icon_image_url": "https://gift.runa.io/static/product_assets/XYZ-US/XYZ-US-icon.png",
"primary_color": "#000000"
},
"denominations": {
"minimum_value": "10.00",
"maximum_value": "100.00"
},
"content_resources": {
"description_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/description.md",
"disclaimer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/disclaimer_markdown.md",
"refund_policy_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/refund_policy_markdown.md",
"reissuance_policy_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/reissuance_policy_markdown.md",
"terms_buyer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_buyer.md",
"terms_consumer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_consumer.md",
"redemption_instructions_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/redeem_markdown.md",
"locale": "en_US"
}
}
}Retrieve a single product’s details
curl --request GET \
--url https://playground.runa.io/v2/product/{product_code} \
--header 'X-Api-Key: <api-key>'{
"name": "Example Merchant",
"code": "XYZ-US",
"currency": "USD",
"state": "LIVE",
"is_orderable": true,
"payout_type": "gift_card",
"categories": [
"food-and-drink",
"entertainment"
],
"countries_redeemable_in": [
"US"
],
"customer_service": {
"phone_number": "+1234567890",
"website_url": "https://merchant.example.com/customer-service"
},
"discount_multiplier": "0.05",
"availability": "realtime",
"gift_card": {
"assets": {
"card_image_url": "https://gift.runa.io/static/product_assets/XYZ-US/XYZ-US-card.png",
"icon_image_url": "https://gift.runa.io/static/product_assets/XYZ-US/XYZ-US-icon.png",
"primary_color": "#000000"
},
"balance_check_url": "https://merchant.example.com/balance-check",
"content_resources": {
"description_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/description.md",
"disclaimer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/disclaimer_markdown.md",
"refund_policy_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/refund_policy_markdown.md",
"reissuance_policy_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/reissuance_policy_markdown.md",
"terms_buyer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_buyer.md",
"terms_consumer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_consumer.md",
"redemption_instructions_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/redeem_markdown.md",
"locale": "en_US"
},
"expiry": {
"date_policy": "Expires 2 years from issue date",
"in_months": 12,
"type": "from-issue-date"
},
"redeemable_at": "all",
"website_url": "https://merchant.example.com",
"barcode_format": "code-128",
"e_code_usage_type": "url-only",
"denominations": {
"type": "fixed",
"minimum_value": "10.00",
"maximum_value": "100.00",
"available_list": [
"10.00",
"20.00",
"50.00",
"100.00"
]
}
},
"subscription": {
"assets": {
"card_image_url": "https://gift.runa.io/static/product_assets/XYZ-US/XYZ-US-card.png",
"icon_image_url": "https://gift.runa.io/static/product_assets/XYZ-US/XYZ-US-icon.png",
"primary_color": "#000000"
},
"balance_check_url": "https://merchant.example.com/balance-check",
"content_resources": {
"description_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/description.md",
"disclaimer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/disclaimer_markdown.md",
"refund_policy_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/refund_policy_markdown.md",
"reissuance_policy_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/reissuance_policy_markdown.md",
"terms_buyer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_buyer.md",
"terms_consumer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_consumer.md",
"redemption_instructions_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/redeem_markdown.md",
"locale": "en_US"
},
"expiry": {
"date_policy": "Expires 2 years from issue date",
"in_months": 12,
"type": "from-issue-date"
},
"redeemable_at": "all",
"website_url": "https://merchant.example.com",
"barcode_format": "code-128",
"e_code_usage_type": "url-only",
"subscription_plans": [
{
"length_unit": "MONTHS",
"length": 12,
"name": "3 month subscription",
"price": "10.00",
"subscription_plan_code": "XYZ-US-SUB-1"
}
]
},
"payment": {
"assets": {
"icon_image_url": "https://gift.runa.io/static/product_assets/XYZ-US/XYZ-US-icon.png",
"primary_color": "#000000"
},
"denominations": {
"minimum_value": "10.00",
"maximum_value": "100.00"
},
"content_resources": {
"description_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/description.md",
"disclaimer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/disclaimer_markdown.md",
"refund_policy_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/refund_policy_markdown.md",
"reissuance_policy_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/reissuance_policy_markdown.md",
"terms_buyer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_buyer.md",
"terms_consumer_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_consumer.md",
"redemption_instructions_markdown_url": "https://d2abcdef.cloudfront.net/resources/XYZ-US/redeem_markdown.md",
"locale": "en_US"
}
}
}XYZ-US.
This endpoint returns different payout types:
gift_card: A gift card is a payout that can be redeemed for a specific value.subscription: A subscription is a payout that can be ordered for a specific duration.payment: A payment is a payout that can be ordered for a specific value.payout_type field to determine which object to use to extract details for the product. The different payout types have different fields, so you should use the appropriate object to extract the details you need.
This endpoint supports returning product content in different formats. See the content parameter for more details.
The dated version of the API, if not specified a default is used. See API versioning for more information.
The code of the product.
Defines the format for product content resources.
url (default) for external URLs to markdown contentmd for Markdown content in the responsehtml for rendered HTML in the responseurl, md, html OK
Product details
The name of the product.
"Example Merchant"
A unique code identifying the product. Use this code when placing an order.
For subscription products, this code identifies the top level product. You must use the subscription_plan_code instead when ordering.
"XYZ-US"
The currency of the product, represented by an ISO 4217 currency code. See currencies for a list of supported currencies.
"USD"
The current state of the product.
LIVE, TEMPORARILY_DISABLED, TEMPORARILY_DEGRADED "LIVE"
Indicates whether or not you are able to order the product. You should use this detail to determine whether or not to display the product to your end users.
We recommend that you only display products to customers when this field is true - we will reject any orders placed for products where this is false. You can filter by is_orderable to only return products that can be ordered in the list endpoint.
The type of payout - this field will tell you the key of the additional object details that correspond to each payout type. The types currently supported are gift_card, subscription, or payment. Your implementation should account for additional payout types being addedin the future.
gift_card, subscription, payment List of the categories that the product belongs to. You can fetch the list of categories using the GET /product/categories endpoint.
["food-and-drink", "entertainment"]Countries where the payout can be spent.
ISO 3166 ALPHA-2 country code
["US"]Contact information for customer service related to the product. Suitable for displaying to the customer.
The discount multiplier used when ordering. 0 means no discount and 0.1 means 10% discount. The discount is applied on the price of the order item before any fees are applied.
"0.05"
The availability type of the product.
stocked, realtime "realtime"
Specific details about the gift card product, only populated when the payout_type is gift_card.
Show child attributes
Graphical assets for the product, including card image, icon image, and primary color.
Show child attributes
"https://gift.runa.io/static/product_assets/XYZ-US/XYZ-US-card.png"
"https://gift.runa.io/static/product_assets/XYZ-US/XYZ-US-icon.png"
"#000000"
URL to check the gift card balance. This will be a provider specific URL that a consumer can use to check the balance of the gift card.
"https://merchant.example.com/balance-check"
Content resources provide additional information about the product, including:
This content can be returned in different formats based on the content query parameter in the get product endpoint. The list endpoint only supports returning content as URLs.
Content fields will be present when content is available, and null when content has been removed. We update content periodically - if content has been removed, requests will return a 403 or 404 error. Your implementation should handle these errors gracefully.
Show child attributes
A URL pointing to a markdown file that contains the description of the resource.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/description.md"
A URL pointing to a markdown file that contains the disclaimer information.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/disclaimer_markdown.md"
A URL pointing to a markdown file that outlines the refund policy, if applicable.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/refund_policy_markdown.md"
A URL pointing to a markdown file that details the reissuance policy for the resource.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/reissuance_policy_markdown.md"
A URL pointing to a markdown file that contains the terms and conditions applicable to buyers.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_buyer.md"
A URL pointing to a markdown file that contains the terms and conditions applicable to consumers.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_consumer.md"
A URL pointing to a markdown file that provides instructions for redeeming the resource.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/redeem_markdown.md"
What locale the content resources are in. This is an IETF language tag using an underscore to separate the language and country codes.
"en_US"
Show child attributes
Text description of the policy, suitable for displaying to the customer.
"Expires 2 years from issue date"
Specifies the number of months until the gift expires.
12
The type of expiry policy.
| Type | Description |
|---|---|
from-last-use | The expiration period starts after the gift is used for a purchase. |
from-last-balance-check | The expiration period starts after the gift balance is checked using phone or online tools. |
from-issue-date | The expiration period starts from the date the gift was purchased. |
indefinite | The gift card does not expire and remains valid indefinitely. |
do-not-show | No expiration information is displayed. |
from-last-use, from-last-balance-check, from-issue-date, indefinite, do-not-show "from-issue-date"
Defines where the gift card can be redeemed. Options are all for both online and in-store, in-store for in-store only, and online for online only.
all, online, in-store "all"
The URL of the website for the product. This is the URL that a consumer can use to either redeem the payout or view details about where they can redeem the payout.
"https://merchant.example.com"
The barcode format of the product.
code-128, code-39, QR, ean-13, pdf417, ITF, DATA_MATRIX, other "code-128"
The e-code usage type of the product.
undefined, url-recommended, url-only "url-only"
Defines the denomination options available for the product, including ranges and types.
Show child attributes
The type of denomination. Can be open or fixed. open is any amount between minimum and maximum value. Fixed is limited to those returned in the available_list.
open, fixed "fixed"
The minimum denomination value available for the product.
"10.00"
The maximum denomination value available for the product.
"100.00"
A list of available denominations for the product. Will be null if the type is OPEN.
["10.00", "20.00", "50.00", "100.00"]Details about the subscription product, only populated when the payout_type is subscription.
Show child attributes
Graphical assets for the product, including card image, icon image, and primary color.
Show child attributes
"https://gift.runa.io/static/product_assets/XYZ-US/XYZ-US-card.png"
"https://gift.runa.io/static/product_assets/XYZ-US/XYZ-US-icon.png"
"#000000"
URL to check the gift card balance. This will be a provider specific URL that a consumer can use to check the balance of the gift card.
"https://merchant.example.com/balance-check"
Content resources provide additional information about the product, including:
This content can be returned in different formats based on the content query parameter in the get product endpoint. The list endpoint only supports returning content as URLs.
Content fields will be present when content is available, and null when content has been removed. We update content periodically - if content has been removed, requests will return a 403 or 404 error. Your implementation should handle these errors gracefully.
Show child attributes
A URL pointing to a markdown file that contains the description of the resource.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/description.md"
A URL pointing to a markdown file that contains the disclaimer information.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/disclaimer_markdown.md"
A URL pointing to a markdown file that outlines the refund policy, if applicable.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/refund_policy_markdown.md"
A URL pointing to a markdown file that details the reissuance policy for the resource.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/reissuance_policy_markdown.md"
A URL pointing to a markdown file that contains the terms and conditions applicable to buyers.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_buyer.md"
A URL pointing to a markdown file that contains the terms and conditions applicable to consumers.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_consumer.md"
A URL pointing to a markdown file that provides instructions for redeeming the resource.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/redeem_markdown.md"
What locale the content resources are in. This is an IETF language tag using an underscore to separate the language and country codes.
"en_US"
Show child attributes
Text description of the policy, suitable for displaying to the customer.
"Expires 2 years from issue date"
Specifies the number of months until the gift expires.
12
The type of expiry policy.
| Type | Description |
|---|---|
from-last-use | The expiration period starts after the gift is used for a purchase. |
from-last-balance-check | The expiration period starts after the gift balance is checked using phone or online tools. |
from-issue-date | The expiration period starts from the date the gift was purchased. |
indefinite | The gift card does not expire and remains valid indefinitely. |
do-not-show | No expiration information is displayed. |
from-last-use, from-last-balance-check, from-issue-date, indefinite, do-not-show "from-issue-date"
Defines where the gift card can be redeemed. Options are all for both online and in-store, in-store for in-store only, and online for online only.
all, online, in-store "all"
The URL of the website for the product. This is the URL that a consumer can use to either redeem the payout or view details about where they can redeem the payout.
"https://merchant.example.com"
The barcode format of the product.
code-128, code-39, QR, ean-13, pdf417, ITF, DATA_MATRIX, other "code-128"
The e-code usage type of the product.
undefined, url-recommended, url-only "url-only"
A list of subscription plans available for the product. You must use the subscription_plan_code when ordering a subscription plan, not the top-level code.
Show child attributes
The unit of time for the subscription plan. Currently DAYS and MONTHS are supported.
DAYS, MONTHS "MONTHS"
The length of the subscription plan using the length_unit.
12
The name of the subscription plan.
"3 month subscription"
The price of the subscription plan.
"10.00"
Use this code during order creation, rather than the top level code.
"XYZ-US-SUB-1"
Details about the payment product, only populated when the payout_type is payment.
Show child attributes
Content resources provide additional information about the product, including:
This content can be returned in different formats based on the content query parameter in the get product endpoint. The list endpoint only supports returning content as URLs.
Content fields will be present when content is available, and null when content has been removed. We update content periodically - if content has been removed, requests will return a 403 or 404 error. Your implementation should handle these errors gracefully.
Show child attributes
A URL pointing to a markdown file that contains the description of the resource.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/description.md"
A URL pointing to a markdown file that contains the disclaimer information.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/disclaimer_markdown.md"
A URL pointing to a markdown file that outlines the refund policy, if applicable.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/refund_policy_markdown.md"
A URL pointing to a markdown file that details the reissuance policy for the resource.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/reissuance_policy_markdown.md"
A URL pointing to a markdown file that contains the terms and conditions applicable to buyers.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_buyer.md"
A URL pointing to a markdown file that contains the terms and conditions applicable to consumers.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/terms_consumer.md"
A URL pointing to a markdown file that provides instructions for redeeming the resource.
"https://d2abcdef.cloudfront.net/resources/XYZ-US/redeem_markdown.md"
What locale the content resources are in. This is an IETF language tag using an underscore to separate the language and country codes.
"en_US"
Was this page helpful?