This Article contains all questions seen on the sidebar on the left. You can view the individual questions on the sidebar or within this article, depending on your preference.
If you have other questions please get in touch with us and we would be happy to help.
Our API documentation can be found at https://docs.runa.io
Q: What is the maximum expected response time APIs?
Runa’s b2b API can sustain a maximum of 20 transactions per second (TPS) with a 2800 ms latency (95%ile) when doing performance tests with 20 concurrent users and ~ 10.000 requests in total. At present, our typical peak volume is a fraction of our total capacity.
We have room to grow as we can scale our application while also adding capacity to our main database.
If you anticipate a large volume of orders, please let us know, and we can scale accordingly.
Q: Is there a maximum number of requests allowed for each API call in a single day?
Nope. We do not have a limit on the number of API calls customers can make in a single day. Customers can place any number of orders. We do ask customers not to abuse the API endpoints.
Q: Are there options to filter products via API?
We don’t have a way to filter the products through the API directly. However, we return information through the API that can be used to gather this information on your side and customise it accordingly. i.e
"countries": [
"GB"
]
AND for Categories:
"categories": [
"electricals",
"entertainment",
"jewellers",
"leisure-and-sports",
"mens-fashion",
"toys-and-games",
"womens-fashion"
]
Q: Is there a way to “resend” gifts via API?
We do not currently have the option to resend gift cards through the API. If you have end users asking for gift cards to be resent and do not have that capability in house, please feel free to contact our support team.
Q: What kind of auth needed for production API, are there additional measures like IP restrictions?
Simple auth is needed for authentication; there are no other restrictions in place.
On a side note, we use ELBSecurityPolicy-FS-1-2-Res-2019-08 security policy.
You can see a list of cipher suites we support here.
Also, credentials are for API usage only and different credentials are needed to access the portal (including 2FA).
Q: Do you need to whitelist IPs?
We do not require IPs to be whitelisted.
Q: Can we filter based on redemption type and categories?
Yes, this can be done. We have an API endpoints that return all the information for a product:
For individual products {{baseUrl}}/products/:product_code and for all products {{baseUrl}}/products
Q: What delivery methods are supported?
We currently support delivery via email. We can also provide you with the URL of the gift cards through the API, which you can then send to end users in any manner you need, including custom templates.
Q: Is there email delivery confirmation/tracking provided?
You have the option to provide an email in the request body while placing an order. You’ll then receive two emails: one at the time of order completion and another upon delivery.
{
"product_code": "AMZ-GB",
"currency_code": "GBP",
"amount": "10.00",
"delivery_method": "email",
"description": "Order for John",
"idempotency_key": "123XXX",
"delivery_format": "url-instant",
“delivery_emai”: “john@test.com”,
“notification_email”: “myemail@email.com”
}
You can also see whether a gift card has been accessed in our portal.
Q: How long does it take to send the gift card after receipt of API request?
Gift cards are sent instantly upon order completion.
Q: What reporting is available for gift cards?
Users can view the value, Gift ID associated with the card, whether the card has been claimed, cancelled or the link has been accessed, issue date and the email address of the recipient. All of this is available in our portal.
Q: Can we order multiple brands and multiple denominations together?
Our API currently allows you to order 10 products in a single call.Those products need to be the same brand and denominations. For separate brands and denominations, different calls/orders to the API need to be made.
Q: How can we check the balance of the gift cards purchased?
There are some brands that allow you to check the balance on the gift cards; this information is included in the terms and conditions of that brand. You can view this information in our Connect portal or by calling the endpoint for a particular brand:
{{baseUrl}}/products/product_code
More can be found on the API doc https://docs.runa.io/
The balance check cannot be done through our API, it is currently done on the brand’s website.
Q: How do we stay up-to-date with product changes (Disabled / Technical issues / Stock unavailable)?
We make regular updates relating to products, technical issues, updates and outages on our status page, which you can view at https://status.runa.io/. Users can also subscribe to receive notifications for all updates.
We also return errors in the API response, which can be viewed here https://docs.runa.io/#dae56d11-4c61-40ec-a317-6440b3c9f0ef
Q: Can I retrieve my API key?
If you have forgotten the API key and do not have a record of it, then you’ll need to generate a new one through the API. This will not reset any of the work you’ve done on the portal; think of it like resetting a password.
We recommend that you securely maintain a record of the API key, in case you need to view it later. We do not keep a record of API keys on our side for security reasons.
Q: Are there any custom fields that can be used for tracking/campaigns?
You can use description to have custom text when placing orders e.g.:
{
"product_code": "AMZ-GB",
"currency_code": "GBP",
"amount": "10.00",
"delivery_method": "direct",
"description": "Order for John",
"idempotency_key": "123XXX",
"delivery_format": "url-instant"
}
'description' can be the same for multiple orders, e.g. “Spring campaign.” Idempotency key will need to be unique for every order.
Note: the use of idempotency key is optional but highly encouraged to avoid duplicate orders.
Q: What happens if there are network issues/server outages and order IDs are not retrieved?
This scenario is extremely rare. If there are server issues or a network outage, and the request doesn’t reach our server, then the order will not have been placed and you account will not be charged.
If you’re using idempotency key, it will prevent duplicate orders. In scenarios where the same idempotency key is used, you’ll receive the below response indicating that the order was already placed:
{
"e_code": {
"error_code": null,
"error_string": null,
"status": "SUCCESS"
},
"e_codes": [
{
"error_code": null,
"error_string": null,
"status": "SUCCESS"
}
],
"error_code": "SE005",
"error_details": "No new order created due to duplicate idempotency key",
"error_string": "Duplicate idempotency key: Testing order with idempotency_key",
"order_id": "O-ZXXX5EK",
"status": "SUCCESS"
}
You can also check orders using the idempotency key in Runa's Connect portal.
Comments
0 comments
Article is closed for comments.