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 use wgCard 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 idResponse
O-SUCCESSReturns a static response body for an order, with COMPLETED order status and 200 OK response status.
O-PROCESSINGReturns a static response body for an order, with PROCESSING order status and 200 OK response status.
O-ERRORReturns error response with 500 INTERNAL SERVER ERROR response status, simulating a similar scenario in the production environment.
Any other valueReturns 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 CodeCountry
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.