API documentation for Apple + Google NFC wallet credentials - AccessGrid

API Documentation

Everything you need to interact with AccessGrid.

Supported Programming Languages

iOS Preflight

Enterprise only
Contact us

Only available for enterprise customers - provides the required identifiers for iOS mobile provisioning for an access pass associated with a given card template.

Parameters

card_template_id

access_pass_ex_id

Request

# Build the JSON payload
PAYLOAD='{"access_pass_ex_id":"0xp455-3x1d"}'

# Sign the payload
PAYLOAD_B64=$(printf '%s' "$PAYLOAD" | openssl base64 -A)
SIG=$(printf '%s' "$PAYLOAD_B64" | openssl dgst -sha256 -hmac "$SECRET_KEY" -hex | awk '{print $NF}')

curl -v \
-X POST \
-H "X-ACCT-ID: $ACCOUNT_ID" \
-H "X-PAYLOAD-SIG: $SIG" \
-H "Content-Type: application/json" \
-d "$PAYLOAD" \
"https://api.accessgrid.com/v1/console/card-templates/0xt3mp14t3-3x1d/ios_preflight"
require 'accessgrid'

acct_id = ENV['ACCOUNT_ID']
secret_key = ENV['SECRET_KEY']

client = AccessGrid.new(acct_id, secret_key)

response = client.console.ios_preflight(
card_template_id: "0xt3mp14t3-3x1d",
access_pass_ex_id: "0xp455-3x1d"
)

puts "Provisioning Credential ID: #{response.provisioningCredentialIdentifier}"
puts "Sharing Instance ID: #{response.sharingInstanceIdentifier}"
puts "Card Template ID: #{response.cardTemplateIdentifier}"
puts "Environment ID: #{response.environmentIdentifier}"
import AccessGrid from 'accessgrid';
const accountId = process.env.ACCOUNT_ID;
const secretKey = process.env.SECRET_KEY;
const client = new AccessGrid(accountId, secretKey);

const getProvisioningIdentifiers = async () => {
    try {
        const response = await client.console.iosPreflight({
            cardTemplateId: "0xt3mp14t3-3x1d",
            accessPassExId: "0xp455-3x1d"
        });
        console.log(`Provisioning Credential ID: ${response.provisioningCredentialIdentifier}`);
        console.log(`Sharing Instance ID: ${response.sharingInstanceIdentifier}`);
        console.log(`Card Template ID: ${response.cardTemplateIdentifier}`);
        console.log(`Environment ID: ${response.environmentIdentifier}`);
    } catch (error) {
        console.error('Error retrieving provisioning identifiers:', error);
    }
};

getProvisioningIdentifiers();
from accessgrid import AccessGrid
import os

account_id = os.getenv('ACCOUNT_ID')
secret_key = os.getenv('SECRET_KEY')

client = AccessGrid(account_id, secret_key)

response = client.console.ios_preflight(
    card_template_id="0xt3mp14t3-3x1d",
    access_pass_ex_id="0xp455-3x1d"
)

print(f"Provisioning Credential ID: {response.provisioningCredentialIdentifier}")
print(f"Sharing Instance ID: {response.sharingInstanceIdentifier}")
print(f"Card Template ID: {response.cardTemplateIdentifier}")
print(f"Environment ID: {response.environmentIdentifier}")
using AccessGrid;
using System;
using System.Threading.Tasks;

public async Task GenerateProvisioningCredentialsAsync()
{
    var client = new AccessGridClient(
        Environment.GetEnvironmentVariable("ACCOUNT_ID"),
        Environment.GetEnvironmentVariable("SECRET_KEY")
    );

var response = await client.Console.IosPreflightAsync(
        cardTemplateId: "0xt3mp14t3-3x1d",
        accessPassExId: "0xp455-3x1d"
    );

Console.WriteLine($