let gr4vy = try Gr4vy(
gr4vyId: "example",
token: "your_jwt_token",
merchantId: "merchant_123", // Set the default merchant ID
server: .sandbox,
debugMode: true
)
// Create card details object
let cardDetails = Gr4vyCardDetails(
currency: "USD",
amount: "1299",
bin: "411111",
country: "US",
intent: "capture"
)
// Create request
let request = Gr4vyCardDetailsRequest(
cardDetails: cardDetails,
timeout: 30.0
)
// Async/await
do {
let cardDetailsResponse = try await gr4vy.cardDetails.get(request: request)
print("Card brand: \(cardDetailsResponse.scheme)")
print("Card type: \(cardDetailsResponse.cardType)")
} catch {
print("Error fetching card details: \(error)")
}
// Completion handler
gr4vy.cardDetails.get(request: request) { result in
switch result {
case .success(let cardDetailsResponse):
print("Card brand: \(cardDetailsResponse.scheme)")
print("Card type: \(cardDetailsResponse.cardType)")
case .failure(let error):
print("Error fetching card details: \(error)")
}
}