Playground
The Playground environment allows you to safely and effortlessly test our API without any real transactions or expenses. It's a controlled environment where you can freely experiment with the API and familiarize yourself with its functionalities.
This guide will walk you through on how to access the Playground environment, testing the order endpoints, and provide some essential information about its limitations.
Accessing the Playground environment
To access the Playground environment, simply use the following base URL for your requests:
https://playground.runa.io/v2
Authentication
In order to make requests to the Playground, you'll need to include an API key in the x-api-key
header. For the Playground environment, please use the following API key:
x-api-key: wgPlayground
Good to know
We use different API keys for different environments. The API key
wgPlayground
is only for the playground environment. In the production environment, where real-world data and applications are running, we follow industry-standard best practices for API key management.
Versioning
The Playground environment supports only the latest version of the API. To ensure compatibility, make sure to include the latest version in the x-api-version
header.
Supported APIs
Behaviour of supported APIs
The supported APIs in the Playground environment will have a same request and response structure to the production API, but there are some exceptions regarding the values that can be used for testing purposes. These are explained below. See details about these APIs in the API Reference section.
Create order
When using the Create Order endpoint, the behaviour will closely resemble the production API, but there are a few variations to consider:
- You can pass a product code from this list of supported test products ids highlighted in the section below. Using invalid product code will behave similar to production environment.
- For
card_id
, you can usewgCard
in the request body. Using an invalid card id will behave similar to production environment. - A successful response will return the order id O-SUCCESS.
It's important to note that no actual orders will be created in the Playground; instead, you will receive mock response data. No emails will be sent out either.
API response
{
"id": "O-SUCCESS",
"status": "PROCESSING"
}
Get order
The Get Order endpoint will mimic the behaviour of the production API. However, the response will always be static for specific order IDs:
Order id | Response |
---|---|
O-SUCCESS | Returns a static response body for an order, with COMPLETED order status and 200 OK response status. |
O-PROCESSING | Returns a static response body for an order, with PROCESSING order status and 200 OK response status. |
O-ERROR | Returns error response with 500 INTERNAL SERVER ERROR response status, simulating a similar scenario in the production environment. |
Any other value | Returns 404 NOT FOUND simulating the production environment. |
The payout links in the response will be static too and will not correspond to products passed to the Create order API.
API Response for O-SUCCESS
{
"id": "O-SUCCESS",
"status": "COMPLETED",
"created_at": "2023-07-10T12:32:23.483599+00:00",
"completed_at": "2023-07-10T12:34:03.210497+00:00",
"description": null,
"payment_method": {
"type": "ACCOUNT_BALANCE"
},
"currency": "GBP",
"total_price": "95.5",
"items": [
{
"id": "O-SUCCESS",
"distribution_method": {
"type": "PAYOUT_LINK"
},
"products": {
"type": "SINGLE",
"value": "ADAS-GB"
},
"face_value": "100",
"price": "95.5",
"redemption_url": "https://fake-url.runa.io"
}
]
}
API Response for O-ERROR
{
"type": "internal_server_error",
"message": "There was an unexpected error.",
"help": "An unexpected error was encountered. Please try again or contact customer support for assistance."
}
Get Order List
- The Get Order List endpoint's behaviour will align with the production API. However, the response will be static.
List Products
This endpoint gives you access to the supported product catalogue for the Playground. You will be able to use country_code
parameter to filter the products.
Supported product codes
The following product codes can be used to place order using the Create new order API:
Product Code | Country |
---|---|
ADAS-GB | π¬π§ United Kingdom |
CINE-GB | π¬π§ United Kingdom |
ADAS-US | πΊπΈ United States |
DDNEO-US | πΊπΈ United States |
API Response
[
{
"code": "ADAS-GB",
"name": "adidas UK",
"image_url": "https://gift.runa.io/static/product_assets/ADAS-GB/ADAS-GB-icon.png",
"denomination_type": "open",
"categories": [
{
"code": "fashion",
"name": "Fashion"
}
],
"minimum_value": 0.01,
"maximum_value": 500.0,
"available_denominations": null
},
{
"code": "CINE-GB",
"name": "Cineworld",
"image_url": "https://gift.runa.io/static/product_assets/CINE-GB/CINE-GB-icon.png",
"denomination_type": "fixed",
"categories": [
{
"code": "experiences",
"name": "Experiences"
},
{
"code": "entertainment",
"name": "Entertainment"
}
],
"minimum_value": null,
"maximum_value": null,
"available_denominations": [
10.0,
20.0
]
}
]
Continuous Improvement
We are continuously enhancing the Playground environment to better serve your needs for experimenting and testing integrations. Expect ongoing improvements and more features to be added over time.
Updated about 2 months ago