C#
using Gr4vy;
using Gr4vy.Models.Components;
using System.Collections.Generic;
var sdk = new Gr4vySDK(
id: "example",
server: SDKConfig.Server.Sandbox,
bearerAuthSource: Auth.WithToken(privateKey),
merchantAccountId: "default"
);
var res = await sdk.GiftCards.Balances.ListAsync(giftCardBalanceRequest: new GiftCardBalanceRequest() {
Items = new List<Item>() {
Item.CreateGiftCardStoredRequest(
new GiftCardStoredRequest() {
Id = "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
}
),
Item.CreateGiftCardStoredRequest(
new GiftCardStoredRequest() {
Id = "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
}
),
Item.CreateGiftCardRequest(
new GiftCardRequest() {
Number = "4123455541234561234",
Pin = "1234",
}
),
},
});
// handle responsepackage main
import(
"context"
"os"
gr4vygo "github.com/gr4vy/gr4vy-go"
"github.com/gr4vy/gr4vy-go/models/components"
"log"
)
func main() {
ctx := context.Background()
s := gr4vygo.New(
gr4vygo.WithMerchantAccountID("default"),
gr4vygo.WithSecurity(os.Getenv("GR4VY_BEARER_AUTH")),
)
res, err := s.GiftCards.Balances.List(ctx, components.GiftCardBalanceRequest{
Items: []components.Item{
components.CreateItemGiftCardStoredRequest(
components.GiftCardStoredRequest{
ID: "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
},
),
components.CreateItemGiftCardStoredRequest(
components.GiftCardStoredRequest{
ID: "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
},
),
components.CreateItemGiftCardRequest(
components.GiftCardRequest{
Number: "4123455541234561234",
Pin: "1234",
},
),
},
})
if err != nil {
log.Fatal(err)
}
if res != nil {
// handle response
}
}package hello.world;
import com.gr4vy.sdk.Gr4vy;
import com.gr4vy.sdk.models.components.*;
import com.gr4vy.sdk.models.errors.*;
import com.gr4vy.sdk.models.operations.ListGiftCardBalancesResponse;
import java.lang.Exception;
import java.util.List;
public class Application {
public static void main(String[] args) throws Exception {
Gr4vy sdk = Gr4vy.builder()
.merchantAccountId("default")
.bearerAuth(System.getenv().getOrDefault("BEARER_AUTH", ""))
.build();
ListGiftCardBalancesResponse res = sdk.giftCards().balances().list()
.giftCardBalanceRequest(GiftCardBalanceRequest.builder()
.items(List.of(
Item.of(GiftCardStoredRequest.builder()
.id("356d56e5-fe16-42ae-97ee-8d55d846ae2e")
.build()),
Item.of(GiftCardStoredRequest.builder()
.id("356d56e5-fe16-42ae-97ee-8d55d846ae2e")
.build()),
Item.of(GiftCardRequest.builder()
.number("4123455541234561234")
.pin("1234")
.build())))
.build())
.call();
if (res.giftCardSummaries().isPresent()) {
System.out.println(res.giftCardSummaries().get());
}
}
}declare(strict_types=1);
require 'vendor/autoload.php';
use Gr4vy;
$sdk = Gr4vy\SDK::builder()
->setId('example')
->setServer('sandbox')
->setSecuritySource(Auth::withToken($privateKey))
->setMerchantAccountId('default')
->build();
$giftCardBalanceRequest = new Gr4vy\GiftCardBalanceRequest(
items: [
new Gr4vy\GiftCardStoredRequest(
id: '356d56e5-fe16-42ae-97ee-8d55d846ae2e',
),
new Gr4vy\GiftCardStoredRequest(
id: '356d56e5-fe16-42ae-97ee-8d55d846ae2e',
),
new Gr4vy\GiftCardRequest(
number: '4123455541234561234',
pin: '1234',
),
],
);
$response = $sdk->giftCards->balances->list(
giftCardBalanceRequest: $giftCardBalanceRequest
);
if ($response->giftCardSummaries !== null) {
// handle response
}from gr4vy import Gr4vy
import os
with Gr4vy(
id="example",
server="sandbox",
merchant_account_id="default",
bearer_auth=auth.with_token(open("./private_key.pem").read())
) as g_client:
res = g_client.gift_cards.balances.list(items=[
{
"id": "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
},
{
"id": "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
},
{
"number": "4123455541234561234",
"pin": "1234",
},
])
# Handle response
print(res)import { Gr4vy, withToken } from "@gr4vy/sdk";
import fs from "fs";
const gr4vy = new Gr4vy({
id: "example",
server: "sandbox",
merchantAccountId: "default",
bearerAuth: withToken({
privateKey: fs.readFileSync("private_key.pem", "utf8"),
}),
});
async function run() {
const result = await gr4vy.giftCards.balances.list({
items: [
{
id: "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
},
{
id: "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
},
{
number: "4123455541234561234",
pin: "1234",
},
],
});
console.log(result);
}
run();curl --request POST \
--url https://api.sandbox.{id}.gr4vy.app/gift-cards/balances \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"items": [
{
"number": "<string>",
"pin": "<string>"
}
]
}
'{
"items": [
{
"merchant_account_id": "<string>",
"bin": "<string>",
"sub_bin": "<string>",
"last4": "<string>",
"usage_count": 123,
"cit_usage_count": 123,
"type": "gift-card",
"id": "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
"currency": "AUD",
"expiration_date": "2013-07-16T19:23:00.000+00:00",
"balance": 1299,
"balance_error_code": "incorrect_currency",
"balance_raw_error_code": "10363",
"balance_raw_error_message": "This currency is not supported by the merchant.",
"last_used_at": "2013-07-16T19:23:00.000+00:00",
"cit_last_used_at": "2013-07-16T19:23:00.000+00:00"
}
]
}{
"type": "error",
"code": "bad_request",
"status": 400,
"message": "Generic error",
"details": []
}{
"type": "error",
"code": "unauthorized",
"status": 401,
"message": "No valid API authentication found",
"details": []
}{
"type": "error",
"code": "forbidden",
"status": 403,
"message": "Generic error",
"details": []
}{
"type": "error",
"code": "not_found",
"status": 404,
"message": "The resource could not be found",
"details": []
}{
"type": "error",
"code": "method_not_allowed",
"status": 405,
"message": "Method Not Allowed",
"details": []
}{
"type": "error",
"code": "duplicate_record",
"status": 409,
"message": "Generic error",
"details": [],
"resource_id": "cdc70639-cb9c-4222-a73f-b8ce39f7821b"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}{
"type": "error",
"code": "too_early",
"status": 425,
"message": "Generic error",
"details": []
}{
"type": "error",
"code": "too_many_requests",
"status": 429,
"message": "Generic error",
"details": []
}{
"type": "error",
"code": "server_error",
"status": 500,
"message": "Request could not be processed",
"details": []
}{
"type": "error",
"code": "bad_gateway",
"status": 502,
"message": "Request could not be processed",
"details": []
}{
"type": "error",
"code": "gateway_timeout",
"status": 504,
"message": "Request could not be processed",
"details": []
}Verify and get gift card balances
Fetch the balances for one or more gift cards.
POST
/
gift-cards
/
balances
C#
using Gr4vy;
using Gr4vy.Models.Components;
using System.Collections.Generic;
var sdk = new Gr4vySDK(
id: "example",
server: SDKConfig.Server.Sandbox,
bearerAuthSource: Auth.WithToken(privateKey),
merchantAccountId: "default"
);
var res = await sdk.GiftCards.Balances.ListAsync(giftCardBalanceRequest: new GiftCardBalanceRequest() {
Items = new List<Item>() {
Item.CreateGiftCardStoredRequest(
new GiftCardStoredRequest() {
Id = "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
}
),
Item.CreateGiftCardStoredRequest(
new GiftCardStoredRequest() {
Id = "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
}
),
Item.CreateGiftCardRequest(
new GiftCardRequest() {
Number = "4123455541234561234",
Pin = "1234",
}
),
},
});
// handle responsepackage main
import(
"context"
"os"
gr4vygo "github.com/gr4vy/gr4vy-go"
"github.com/gr4vy/gr4vy-go/models/components"
"log"
)
func main() {
ctx := context.Background()
s := gr4vygo.New(
gr4vygo.WithMerchantAccountID("default"),
gr4vygo.WithSecurity(os.Getenv("GR4VY_BEARER_AUTH")),
)
res, err := s.GiftCards.Balances.List(ctx, components.GiftCardBalanceRequest{
Items: []components.Item{
components.CreateItemGiftCardStoredRequest(
components.GiftCardStoredRequest{
ID: "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
},
),
components.CreateItemGiftCardStoredRequest(
components.GiftCardStoredRequest{
ID: "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
},
),
components.CreateItemGiftCardRequest(
components.GiftCardRequest{
Number: "4123455541234561234",
Pin: "1234",
},
),
},
})
if err != nil {
log.Fatal(err)
}
if res != nil {
// handle response
}
}package hello.world;
import com.gr4vy.sdk.Gr4vy;
import com.gr4vy.sdk.models.components.*;
import com.gr4vy.sdk.models.errors.*;
import com.gr4vy.sdk.models.operations.ListGiftCardBalancesResponse;
import java.lang.Exception;
import java.util.List;
public class Application {
public static void main(String[] args) throws Exception {
Gr4vy sdk = Gr4vy.builder()
.merchantAccountId("default")
.bearerAuth(System.getenv().getOrDefault("BEARER_AUTH", ""))
.build();
ListGiftCardBalancesResponse res = sdk.giftCards().balances().list()
.giftCardBalanceRequest(GiftCardBalanceRequest.builder()
.items(List.of(
Item.of(GiftCardStoredRequest.builder()
.id("356d56e5-fe16-42ae-97ee-8d55d846ae2e")
.build()),
Item.of(GiftCardStoredRequest.builder()
.id("356d56e5-fe16-42ae-97ee-8d55d846ae2e")
.build()),
Item.of(GiftCardRequest.builder()
.number("4123455541234561234")
.pin("1234")
.build())))
.build())
.call();
if (res.giftCardSummaries().isPresent()) {
System.out.println(res.giftCardSummaries().get());
}
}
}declare(strict_types=1);
require 'vendor/autoload.php';
use Gr4vy;
$sdk = Gr4vy\SDK::builder()
->setId('example')
->setServer('sandbox')
->setSecuritySource(Auth::withToken($privateKey))
->setMerchantAccountId('default')
->build();
$giftCardBalanceRequest = new Gr4vy\GiftCardBalanceRequest(
items: [
new Gr4vy\GiftCardStoredRequest(
id: '356d56e5-fe16-42ae-97ee-8d55d846ae2e',
),
new Gr4vy\GiftCardStoredRequest(
id: '356d56e5-fe16-42ae-97ee-8d55d846ae2e',
),
new Gr4vy\GiftCardRequest(
number: '4123455541234561234',
pin: '1234',
),
],
);
$response = $sdk->giftCards->balances->list(
giftCardBalanceRequest: $giftCardBalanceRequest
);
if ($response->giftCardSummaries !== null) {
// handle response
}from gr4vy import Gr4vy
import os
with Gr4vy(
id="example",
server="sandbox",
merchant_account_id="default",
bearer_auth=auth.with_token(open("./private_key.pem").read())
) as g_client:
res = g_client.gift_cards.balances.list(items=[
{
"id": "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
},
{
"id": "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
},
{
"number": "4123455541234561234",
"pin": "1234",
},
])
# Handle response
print(res)import { Gr4vy, withToken } from "@gr4vy/sdk";
import fs from "fs";
const gr4vy = new Gr4vy({
id: "example",
server: "sandbox",
merchantAccountId: "default",
bearerAuth: withToken({
privateKey: fs.readFileSync("private_key.pem", "utf8"),
}),
});
async function run() {
const result = await gr4vy.giftCards.balances.list({
items: [
{
id: "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
},
{
id: "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
},
{
number: "4123455541234561234",
pin: "1234",
},
],
});
console.log(result);
}
run();curl --request POST \
--url https://api.sandbox.{id}.gr4vy.app/gift-cards/balances \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"items": [
{
"number": "<string>",
"pin": "<string>"
}
]
}
'{
"items": [
{
"merchant_account_id": "<string>",
"bin": "<string>",
"sub_bin": "<string>",
"last4": "<string>",
"usage_count": 123,
"cit_usage_count": 123,
"type": "gift-card",
"id": "356d56e5-fe16-42ae-97ee-8d55d846ae2e",
"currency": "AUD",
"expiration_date": "2013-07-16T19:23:00.000+00:00",
"balance": 1299,
"balance_error_code": "incorrect_currency",
"balance_raw_error_code": "10363",
"balance_raw_error_message": "This currency is not supported by the merchant.",
"last_used_at": "2013-07-16T19:23:00.000+00:00",
"cit_last_used_at": "2013-07-16T19:23:00.000+00:00"
}
]
}{
"type": "error",
"code": "bad_request",
"status": 400,
"message": "Generic error",
"details": []
}{
"type": "error",
"code": "unauthorized",
"status": 401,
"message": "No valid API authentication found",
"details": []
}{
"type": "error",
"code": "forbidden",
"status": 403,
"message": "Generic error",
"details": []
}{
"type": "error",
"code": "not_found",
"status": 404,
"message": "The resource could not be found",
"details": []
}{
"type": "error",
"code": "method_not_allowed",
"status": 405,
"message": "Method Not Allowed",
"details": []
}{
"type": "error",
"code": "duplicate_record",
"status": 409,
"message": "Generic error",
"details": [],
"resource_id": "cdc70639-cb9c-4222-a73f-b8ce39f7821b"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}{
"type": "error",
"code": "too_early",
"status": 425,
"message": "Generic error",
"details": []
}{
"type": "error",
"code": "too_many_requests",
"status": 429,
"message": "Generic error",
"details": []
}{
"type": "error",
"code": "server_error",
"status": 500,
"message": "Request could not be processed",
"details": []
}{
"type": "error",
"code": "bad_gateway",
"status": 502,
"message": "Request could not be processed",
"details": []
}{
"type": "error",
"code": "gateway_timeout",
"status": 504,
"message": "Request could not be processed",
"details": []
}This endpoint requires the
gift-cards.read scope.Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
The ID of the merchant account to use for this request.
Example:
"default"
Body
application/json
A list of gift cards to request a balance for.
The number and pin for a gift card to fetch a balance for.
- GiftCardRequest
- GiftCardStoredRequest
Show child attributes
Show child attributes
Response
Successful Response
A list of items returned for this request.
Show child attributes
Show child attributes
⌘I