VB6 / New FreshBooks / 1a. [STRIPE] - Get Publishable Key
Back to Collection Items
' This example assumes the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
Dim http As New ChilkatHttp
Dim success As Long
' Adds the "Authorization: Bearer <access_token>" header.
http.AuthToken = "<access_token>"
Dim sbResponseBody As New ChilkatStringBuilder
success = http.QuickGetSb("https://api.freshbooks.com/payments/account/E86Qp/gateway",sbResponseBody)
If (success = 0) Then
Debug.Print http.LastErrorText
Exit Sub
End If
Dim jResp As New ChilkatJsonObject
success = jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = 0
Debug.Print "Response Body:"
Debug.Print jResp.Emit()
Dim respStatusCode As Long
respStatusCode = http.LastStatus
Debug.Print "Response Status Code = " & respStatusCode
If (respStatusCode >= 400) Then
Debug.Print "Response Header:"
Debug.Print http.LastHeader
Debug.Print "Failed."
Exit Sub
End If
' Sample JSON response:
' (Sample code for parsing the JSON response is shown below)
' {
' "gateway_connections": [
' {
' "fbpay": {
' "id": "89dsyfaiosuhlasdjkhcsaldc89879875ih435h",
' "account_id": "45435345345",
' "visa_debit_accepted": true,
' "pricing": {
' "tier_id": 105,
' "percent_ach": "0.00",
' "percent_non_amex": "2.90",
' "percent_non_amex_with_card": "2.70",
' "percent_amex": "3.50",
' "percent_amex_with_card": "3.40",
' "percent_virtual_terminal": "3.50",
' "ach_tier_1": null,
' "ach_tier_2": null,
' "ach_tier_3": null,
' "per_transaction_fee": "0.30",
' "default_pricing_tier_id": null,
' "promo_expiry_date": null,
' "max_ach_fee": null
' },
' "bank_transfer_enabled": false,
' "tos_accepted": true,
' "state": "active",
' "email": "mjohnston@freshbooks.com",
' "bank_info": {
' "total_payout": "0",
' "next_payout_date": null,
' "bank_name": "Gotham Bank XXXXXX2020",
' "last_payment_date": "2020-06-10T22:47:54Z",
' "last_payment_amount": "1240.79",
' "withdrawal_period": "daily",
' "withdrawal_type": "ach",
' "withdrawal_schedule": [
' ],
' "incoming_pending_amount": "0",
' "outgoing_withdrawal_schedule": [
' ]
' },
' "manage_account_url": "https://wepay.com/account/15524535345",
' "currencies": [
' "CAD"
' ],
' "country": "CA",
' "action_reasons": [
' ]
' },
' "stripe": {
' "id": "63kljSDHfglsfjhsf88sdfsd98dsflkjhav",
' "gateway_user_id": "acct_jdhaklsdjnc345",
' "user_state": "registered",
' "email": "mjohnston@freshbooks.com",
' "country": "CA",
' "currencies": [
' "AED",
' "AFN",
' "ALL",
' "AMD",
' "ANG",
' "AOA",
' "ARS",
' "AUD",
' "AWG",
' "AZN",
' "BAM",
' "BBD",
' "BDT",
' "BGN",
' "BIF",
' "BMD",
' "BND",
' "BOB",
' "BRL",
' "BSD",
' "BWP",
' "BZD",
' "CAD",
' "CDF",
' "CHF",
' "CLP",
' "CNY",
' "COP",
' "CRC",
' "CVE",
' "CZK",
' "DJF",
' "DKK",
' "DOP",
' "DZD",
' "EGP",
' "ETB",
' "EUR",
' "FJD",
' "FKP",
' "GBP",
' "GEL",
' "GIP",
' "GMD",
' "GNF",
' "GTQ",
' "GYD",
' "HKD",
' "HNL",
' "HRK",
' "HTG",
' "HUF",
' "IDR",
' "ILS",
' "INR",
' "ISK",
' "JMD",
' "JPY",
' "KES",
' "KGS",
' "KHR",
' "KMF",
' "KRW",
' "KYD",
' "KZT",
' "LAK",
' "LBP",
' "LKR",
' "LRD",
' "LSL",
' "MAD",
' "MDL",
' "MGA",
' "MKD",
' "MMK",
' "MNT",
' "MOP",
' "MRO",
' "MUR",
' "MVR",
' "MWK",
' "MXN",
' "MYR",
' "MZN",
' "NAD",
' "NGN",
' "NIO",
' "NOK",
' "NPR",
' "NZD",
' "PAB",
' "PEN",
' "PGK",
' "PHP",
' "PKR",
' "PLN",
' "PYG",
' "QAR",
' "RON",
' "RSD",
' "RUB",
' "RWF",
' "SAR",
' "SBD",
' "SCR",
' "SEK",
' "SGD",
' "SHP",
' "SLL",
' "SOS",
' "SRD",
' "STD",
' "SZL",
' "THB",
' "TJS",
' "TOP",
' "TRY",
' "TTD",
' "TWD",
' "TZS",
' "UAH",
' "UGX",
' "USD",
' "UYU",
' "UZS",
' "VND",
' "VUV",
' "WST",
' "XAF",
' "XCD",
' "XOF",
' "XPF",
' "YER",
' "ZAR",
' "ZMW"
' ],
' "publishable_key": "pk_live_kha8dfy9oahvoi4h3qpj12qfp0234q9fuqp4938fh34pufh34pf84334f934hfp34uqif43345634oi5y4",
' "bank_transfer_enabled": false,
' "max_ach_fee": 5000
' },
' "paypal": null
' }
' ]
' }
' Sample code for parsing the JSON response...
' Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
Dim Id As String
Dim Account_id As String
Dim Visa_debit_accepted As Long
Dim Tier_id As Long
Dim Percent_ach As String
Dim Percent_non_amex As String
Dim Percent_non_amex_with_card As String
Dim Percent_amex As String
Dim Percent_amex_with_card As String
Dim Percent_virtual_terminal As String
Dim Ach_tier_1 As String
Dim Ach_tier_2 As String
Dim Ach_tier_3 As String
Dim Per_transaction_fee As String
Dim Default_pricing_tier_id As String
Dim Promo_expiry_date As String
Dim Max_ach_fee As String
Dim Bank_transfer_enabled As Long
Dim Tos_accepted As Long
Dim State As String
Dim v_Email As String
Dim Total_payout As String
Dim Next_payout_date As String
Dim Bank_name As String
Dim Last_payment_date As String
Dim Last_payment_amount As String
Dim Withdrawal_period As String
Dim Withdrawal_type As String
Dim Incoming_pending_amount As String
Dim Manage_account_url As String
Dim Country As String
Dim stripeId As String
Dim Gateway_user_id As String
Dim User_state As String
Dim stripeEmail As String
Dim stripeCountry As String
Dim Publishable_key As String
Dim stripeBank_transfer_enabled As Long
Dim stripeMax_ach_fee As Long
Dim paypal As String
Dim j As Long
Dim count_j As Long
Dim strVal As String
Dim i As Long
i = 0
Dim count_i As Long
count_i = jResp.SizeOfArray("gateway_connections")
Do While i < count_i
jResp.I = i
Id = jResp.StringOf("gateway_connections[i].fbpay.id")
Account_id = jResp.StringOf("gateway_connections[i].fbpay.account_id")
Visa_debit_accepted = jResp.BoolOf("gateway_connections[i].fbpay.visa_debit_accepted")
Tier_id = jResp.IntOf("gateway_connections[i].fbpay.pricing.tier_id")
Percent_ach = jResp.StringOf("gateway_connections[i].fbpay.pricing.percent_ach")
Percent_non_amex = jResp.StringOf("gateway_connections[i].fbpay.pricing.percent_non_amex")
Percent_non_amex_with_card = jResp.StringOf("gateway_connections[i].fbpay.pricing.percent_non_amex_with_card")
Percent_amex = jResp.StringOf("gateway_connections[i].fbpay.pricing.percent_amex")
Percent_amex_with_card = jResp.StringOf("gateway_connections[i].fbpay.pricing.percent_amex_with_card")
Percent_virtual_terminal = jResp.StringOf("gateway_connections[i].fbpay.pricing.percent_virtual_terminal")
Ach_tier_1 = jResp.StringOf("gateway_connections[i].fbpay.pricing.ach_tier_1")
Ach_tier_2 = jResp.StringOf("gateway_connections[i].fbpay.pricing.ach_tier_2")
Ach_tier_3 = jResp.StringOf("gateway_connections[i].fbpay.pricing.ach_tier_3")
Per_transaction_fee = jResp.StringOf("gateway_connections[i].fbpay.pricing.per_transaction_fee")
Default_pricing_tier_id = jResp.StringOf("gateway_connections[i].fbpay.pricing.default_pricing_tier_id")
Promo_expiry_date = jResp.StringOf("gateway_connections[i].fbpay.pricing.promo_expiry_date")
Max_ach_fee = jResp.StringOf("gateway_connections[i].fbpay.pricing.max_ach_fee")
Bank_transfer_enabled = jResp.BoolOf("gateway_connections[i].fbpay.bank_transfer_enabled")
Tos_accepted = jResp.BoolOf("gateway_connections[i].fbpay.tos_accepted")
State = jResp.StringOf("gateway_connections[i].fbpay.state")
v_Email = jResp.StringOf("gateway_connections[i].fbpay.email")
Total_payout = jResp.StringOf("gateway_connections[i].fbpay.bank_info.total_payout")
Next_payout_date = jResp.StringOf("gateway_connections[i].fbpay.bank_info.next_payout_date")
Bank_name = jResp.StringOf("gateway_connections[i].fbpay.bank_info.bank_name")
Last_payment_date = jResp.StringOf("gateway_connections[i].fbpay.bank_info.last_payment_date")
Last_payment_amount = jResp.StringOf("gateway_connections[i].fbpay.bank_info.last_payment_amount")
Withdrawal_period = jResp.StringOf("gateway_connections[i].fbpay.bank_info.withdrawal_period")
Withdrawal_type = jResp.StringOf("gateway_connections[i].fbpay.bank_info.withdrawal_type")
Incoming_pending_amount = jResp.StringOf("gateway_connections[i].fbpay.bank_info.incoming_pending_amount")
Manage_account_url = jResp.StringOf("gateway_connections[i].fbpay.manage_account_url")
Country = jResp.StringOf("gateway_connections[i].fbpay.country")
stripeId = jResp.StringOf("gateway_connections[i].stripe.id")
Gateway_user_id = jResp.StringOf("gateway_connections[i].stripe.gateway_user_id")
User_state = jResp.StringOf("gateway_connections[i].stripe.user_state")
stripeEmail = jResp.StringOf("gateway_connections[i].stripe.email")
stripeCountry = jResp.StringOf("gateway_connections[i].stripe.country")
Publishable_key = jResp.StringOf("gateway_connections[i].stripe.publishable_key")
stripeBank_transfer_enabled = jResp.BoolOf("gateway_connections[i].stripe.bank_transfer_enabled")
stripeMax_ach_fee = jResp.IntOf("gateway_connections[i].stripe.max_ach_fee")
paypal = jResp.StringOf("gateway_connections[i].paypal")
j = 0
count_j = jResp.SizeOfArray("gateway_connections[i].fbpay.bank_info.withdrawal_schedule")
Do While j < count_j
jResp.J = j
j = j + 1
Loop
j = 0
count_j = jResp.SizeOfArray("gateway_connections[i].fbpay.bank_info.outgoing_withdrawal_schedule")
Do While j < count_j
jResp.J = j
j = j + 1
Loop
j = 0
count_j = jResp.SizeOfArray("gateway_connections[i].fbpay.currencies")
Do While j < count_j
jResp.J = j
strVal = jResp.StringOf("gateway_connections[i].fbpay.currencies[j]")
j = j + 1
Loop
j = 0
count_j = jResp.SizeOfArray("gateway_connections[i].fbpay.action_reasons")
Do While j < count_j
jResp.J = j
j = j + 1
Loop
j = 0
count_j = jResp.SizeOfArray("gateway_connections[i].stripe.currencies")
Do While j < count_j
jResp.J = j
strVal = jResp.StringOf("gateway_connections[i].stripe.currencies[j]")
j = j + 1
Loop
i = i + 1
Loop
Curl Command
curl -X GET
-H "Authorization: Bearer <access_token>"
https://api.freshbooks.com/payments/account/E86Qp/gateway
Postman Collection Item JSON
{
"name": "1a. [STRIPE] - Get Publishable Key",
"request": {
"method": "GET",
"header": [
],
"url": {
"raw": "https://api.freshbooks.com/payments/account/E86Qp/gateway",
"protocol": "https",
"host": [
"api",
"freshbooks",
"com"
],
"path": [
"payments",
"account",
"E86Qp",
"gateway"
]
}
},
"response": [
{
"name": "1a. [STRIPE] - Get Publishable Key",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "https://api.freshbooks.com/payments/account/E86Qp/gateway",
"protocol": "https",
"host": [
"api",
"freshbooks",
"com"
],
"path": [
"payments",
"account",
"E86Qp",
"gateway"
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Server",
"value": "nginx"
},
{
"key": "Date",
"value": "Mon, 10 Aug 2020 19:15:46 GMT"
},
{
"key": "Content-Type",
"value": "application/vnd.api+json"
},
{
"key": "Vary",
"value": "Accept-Encoding"
},
{
"key": "X-CardApp-Version",
"value": "2008.16.0"
},
{
"key": "X-NewRelic-App-Data",
"value": "PxQBWV5TCBABV1FUDwYGV1QTGhE1AwE2QgNWEVlbQFtcCxYnRA9QFg1ZWU4FAkpXURQRTEVURAkRQ1VWEUgEA0QHTwNBFkZXQApME1IECQUFQlIWBxpKVkMLFBBUVBVKVB0GHVZfUFYJVwxUDAsGBgpQCFAGTR5TSBRUUAMFCgBSAFMHBFUBAABXFB8EBw8RVT8="
},
{
"key": "X-Frame-Options",
"value": "SAMEORIGIN"
},
{
"key": "X-XSS-Protection",
"value": "1; mode=block"
},
{
"key": "X-Content-Type-Options",
"value": "nosniff"
},
{
"key": "Content-Security-Policy",
"value": "default-src 'self'"
},
{
"key": "X-Content-Security-Policy",
"value": "default-src 'self'"
},
{
"key": "Strict-Transport-Security",
"value": "max-age=31556926; includeSubDomains; preload"
},
{
"key": "Referrer-Policy",
"value": "strict-origin-when-cross-origin"
},
{
"key": "X-RateLimit-Limit",
"value": "600"
},
{
"key": "X-RateLimit-Remaining",
"value": "599"
},
{
"key": "X-RateLimit-Reset",
"value": "1597087006"
},
{
"key": "Retry-After",
"value": "59"
},
{
"key": "Access-Control-Allow-Origin",
"value": "*"
},
{
"key": "Content-Encoding",
"value": "gzip"
},
{
"key": "Via",
"value": "1.1 google"
},
{
"key": "Alt-Svc",
"value": "h3-Q050=\":443\"; ma=2592000,h3-Q046=\":443\"; ma=2592000,h3-Q043=\":443\"; ma=2592000,quic=\":443\"; ma=2592000; v=\"46,43\""
},
{
"key": "Transfer-Encoding",
"value": "chunked"
}
],
"cookie": [
],
"body": "{\n \"gateway_connections\": [\n {\n \"fbpay\": {\n \"id\": \"89dsyfaiosuhlasdjkhcsaldc89879875ih435h\",\n \"account_id\": \"45435345345\",\n \"visa_debit_accepted\": true,\n \"pricing\": {\n \"tier_id\": 105,\n \"percent_ach\": \"0.00\",\n \"percent_non_amex\": \"2.90\",\n \"percent_non_amex_with_card\": \"2.70\",\n \"percent_amex\": \"3.50\",\n \"percent_amex_with_card\": \"3.40\",\n \"percent_virtual_terminal\": \"3.50\",\n \"ach_tier_1\": null,\n \"ach_tier_2\": null,\n \"ach_tier_3\": null,\n \"per_transaction_fee\": \"0.30\",\n \"default_pricing_tier_id\": null,\n \"promo_expiry_date\": null,\n \"max_ach_fee\": null\n },\n \"bank_transfer_enabled\": false,\n \"tos_accepted\": true,\n \"state\": \"active\",\n \"email\": \"mjohnston@freshbooks.com\",\n \"bank_info\": {\n \"total_payout\": \"0\",\n \"next_payout_date\": null,\n \"bank_name\": \"Gotham Bank XXXXXX2020\",\n \"last_payment_date\": \"2020-06-10T22:47:54Z\",\n \"last_payment_amount\": \"1240.79\",\n \"withdrawal_period\": \"daily\",\n \"withdrawal_type\": \"ach\",\n \"withdrawal_schedule\": [],\n \"incoming_pending_amount\": \"0\",\n \"outgoing_withdrawal_schedule\": []\n },\n \"manage_account_url\": \"https://wepay.com/account/15524535345\",\n \"currencies\": [\n \"CAD\"\n ],\n \"country\": \"CA\",\n \"action_reasons\": []\n },\n \"stripe\": {\n \"id\": \"63kljSDHfglsfjhsf88sdfsd98dsflkjhav\",\n \"gateway_user_id\": \"acct_jdhaklsdjnc345\",\n \"user_state\": \"registered\",\n \"email\": \"mjohnston@freshbooks.com\",\n \"country\": \"CA\",\n \"currencies\": [\n \"AED\",\n \"AFN\",\n \"ALL\",\n \"AMD\",\n \"ANG\",\n \"AOA\",\n \"ARS\",\n \"AUD\",\n \"AWG\",\n \"AZN\",\n \"BAM\",\n \"BBD\",\n \"BDT\",\n \"BGN\",\n \"BIF\",\n \"BMD\",\n \"BND\",\n \"BOB\",\n \"BRL\",\n \"BSD\",\n \"BWP\",\n \"BZD\",\n \"CAD\",\n \"CDF\",\n \"CHF\",\n \"CLP\",\n \"CNY\",\n \"COP\",\n \"CRC\",\n \"CVE\",\n \"CZK\",\n \"DJF\",\n \"DKK\",\n \"DOP\",\n \"DZD\",\n \"EGP\",\n \"ETB\",\n \"EUR\",\n \"FJD\",\n \"FKP\",\n \"GBP\",\n \"GEL\",\n \"GIP\",\n \"GMD\",\n \"GNF\",\n \"GTQ\",\n \"GYD\",\n \"HKD\",\n \"HNL\",\n \"HRK\",\n \"HTG\",\n \"HUF\",\n \"IDR\",\n \"ILS\",\n \"INR\",\n \"ISK\",\n \"JMD\",\n \"JPY\",\n \"KES\",\n \"KGS\",\n \"KHR\",\n \"KMF\",\n \"KRW\",\n \"KYD\",\n \"KZT\",\n \"LAK\",\n \"LBP\",\n \"LKR\",\n \"LRD\",\n \"LSL\",\n \"MAD\",\n \"MDL\",\n \"MGA\",\n \"MKD\",\n \"MMK\",\n \"MNT\",\n \"MOP\",\n \"MRO\",\n \"MUR\",\n \"MVR\",\n \"MWK\",\n \"MXN\",\n \"MYR\",\n \"MZN\",\n \"NAD\",\n \"NGN\",\n \"NIO\",\n \"NOK\",\n \"NPR\",\n \"NZD\",\n \"PAB\",\n \"PEN\",\n \"PGK\",\n \"PHP\",\n \"PKR\",\n \"PLN\",\n \"PYG\",\n \"QAR\",\n \"RON\",\n \"RSD\",\n \"RUB\",\n \"RWF\",\n \"SAR\",\n \"SBD\",\n \"SCR\",\n \"SEK\",\n \"SGD\",\n \"SHP\",\n \"SLL\",\n \"SOS\",\n \"SRD\",\n \"STD\",\n \"SZL\",\n \"THB\",\n \"TJS\",\n \"TOP\",\n \"TRY\",\n \"TTD\",\n \"TWD\",\n \"TZS\",\n \"UAH\",\n \"UGX\",\n \"USD\",\n \"UYU\",\n \"UZS\",\n \"VND\",\n \"VUV\",\n \"WST\",\n \"XAF\",\n \"XCD\",\n \"XOF\",\n \"XPF\",\n \"YER\",\n \"ZAR\",\n \"ZMW\"\n ],\n \"publishable_key\": \"pk_live_kha8dfy9oahvoi4h3qpj12qfp0234q9fuqp4938fh34pufh34pf84334f934hfp34uqif43345634oi5y4\",\n \"bank_transfer_enabled\": false,\n \"max_ach_fee\": 5000\n },\n \"paypal\": null\n }\n ]\n}"
}
]
}