PowerBuilder / Broker API / Account
Back to Collection Items
integer li_rc
oleobject loo_Http
integer li_Success
oleobject loo_Json
oleobject loo_Resp
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
loo_Http = create oleobject
// Use "Chilkat_9_5_0.Http" for versions of Chilkat < 10.0.0
li_rc = loo_Http.ConnectToNewObject("Chilkat.Http")
if li_rc < 0 then
destroy loo_Http
MessageBox("Error","Connecting to COM object failed")
return
end if
loo_Http.BasicAuth = 1
loo_Http.Login = "{{api_key}}"
loo_Http.Password = "{{api_secret}}"
// Use this online tool to generate code from sample JSON: Generate Code to Create JSON
// The following JSON is sent in the request body.
// {
// "contact": {
// "email_address": "cool_alpaca@example.com",
// "phone_number": "555-666-7788",
// "street_address": [
// "20 N San Mateo Dr"
// ],
// "city": "San Mateo",
// "state": "CA",
// "postal_code": "94401",
// "country": "USA"
// },
// "identity": {
// "given_name": "John",
// "family_name": "Doe",
// "date_of_birth": "1990-01-01",
// "tax_id": "666-55-4321",
// "tax_id_type": "USA_SSN",
// "country_of_citizenship": "USA",
// "country_of_birth": "USA",
// "country_of_tax_residence": "USA",
// "funding_source": [
// "employment_income"
// ]
// },
// "disclosures": {
// "is_control_person": false,
// "is_affiliated_exchange_or_finra": false,
// "is_politically_exposed": false,
// "immediate_family_exposed": false
// },
// "agreements": [
// {
// "agreement": "margin_agreement",
// "signed_at": "2020-09-11T18:09:33Z",
// "ip_address": "185.13.21.99"
// },
// {
// "agreement": "account_agreement",
// "signed_at": "2020-09-11T18:13:44Z",
// "ip_address": "185.13.21.99"
// },
// {
// "agreement": "customer_agreement",
// "signed_at": "2020-09-11T18:13:44Z",
// "ip_address": "185.13.21.99"
// }
// ],
// "documents": [
// {
// "document_type": "identity_verification",
// "document_sub_type": "passport",
// "content": "QWxwYWNhcyBjYW5ub3QgbGl2ZSBhbG9uZS4=",
// "mime_type": "image/jpeg"
// }
// ],
// "trusted_contact": {
// "given_name": "Jane",
// "family_name": "Doe",
// "email_address": "jane.doe@example.com"
// }
// }
loo_Json = create oleobject
// Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0
li_rc = loo_Json.ConnectToNewObject("Chilkat.JsonObject")
loo_Json.UpdateString("contact.email_address","cool_alpaca@example.com")
loo_Json.UpdateString("contact.phone_number","555-666-7788")
loo_Json.UpdateString("contact.street_address[0]","20 N San Mateo Dr")
loo_Json.UpdateString("contact.city","San Mateo")
loo_Json.UpdateString("contact.state","CA")
loo_Json.UpdateString("contact.postal_code","94401")
loo_Json.UpdateString("contact.country","USA")
loo_Json.UpdateString("identity.given_name","John")
loo_Json.UpdateString("identity.family_name","Doe")
loo_Json.UpdateString("identity.date_of_birth","1990-01-01")
loo_Json.UpdateString("identity.tax_id","666-55-4321")
loo_Json.UpdateString("identity.tax_id_type","USA_SSN")
loo_Json.UpdateString("identity.country_of_citizenship","USA")
loo_Json.UpdateString("identity.country_of_birth","USA")
loo_Json.UpdateString("identity.country_of_tax_residence","USA")
loo_Json.UpdateString("identity.funding_source[0]","employment_income")
loo_Json.UpdateBool("disclosures.is_control_person",0)
loo_Json.UpdateBool("disclosures.is_affiliated_exchange_or_finra",0)
loo_Json.UpdateBool("disclosures.is_politically_exposed",0)
loo_Json.UpdateBool("disclosures.immediate_family_exposed",0)
loo_Json.UpdateString("agreements[0].agreement","margin_agreement")
loo_Json.UpdateString("agreements[0].signed_at","2020-09-11T18:09:33Z")
loo_Json.UpdateString("agreements[0].ip_address","185.13.21.99")
loo_Json.UpdateString("agreements[1].agreement","account_agreement")
loo_Json.UpdateString("agreements[1].signed_at","2020-09-11T18:13:44Z")
loo_Json.UpdateString("agreements[1].ip_address","185.13.21.99")
loo_Json.UpdateString("agreements[2].agreement","customer_agreement")
loo_Json.UpdateString("agreements[2].signed_at","2020-09-11T18:13:44Z")
loo_Json.UpdateString("agreements[2].ip_address","185.13.21.99")
loo_Json.UpdateString("documents[0].document_type","identity_verification")
loo_Json.UpdateString("documents[0].document_sub_type","passport")
loo_Json.UpdateString("documents[0].content","QWxwYWNhcyBjYW5ub3QgbGl2ZSBhbG9uZS4=")
loo_Json.UpdateString("documents[0].mime_type","image/jpeg")
loo_Json.UpdateString("trusted_contact.given_name","Jane")
loo_Json.UpdateString("trusted_contact.family_name","Doe")
loo_Json.UpdateString("trusted_contact.email_address","jane.doe@example.com")
loo_Resp = loo_Http.PostJson3("https://domain.com/v1/accounts","application/json",loo_Json)
if loo_Http.LastMethodSuccess = 0 then
Write-Debug loo_Http.LastErrorText
destroy loo_Http
destroy loo_Json
return
end if
Write-Debug string(loo_Resp.StatusCode)
Write-Debug loo_Resp.BodyStr
destroy loo_Resp
destroy loo_Http
destroy loo_Json
Curl Command
curl -X POST
-u '{{api_key}}:{{api_secret}}'
-d '{
"contact": {
"email_address": "cool_alpaca@example.com",
"phone_number": "555-666-7788",
"street_address": ["20 N San Mateo Dr"],
"city": "San Mateo",
"state": "CA",
"postal_code": "94401",
"country": "USA"
},
"identity": {
"given_name": "John",
"family_name": "Doe",
"date_of_birth": "1990-01-01",
"tax_id": "666-55-4321",
"tax_id_type": "USA_SSN",
"country_of_citizenship": "USA",
"country_of_birth": "USA",
"country_of_tax_residence": "USA",
"funding_source": ["employment_income"]
},
"disclosures": {
"is_control_person": false,
"is_affiliated_exchange_or_finra": false,
"is_politically_exposed": false,
"immediate_family_exposed": false
},
"agreements": [
{
"agreement": "margin_agreement",
"signed_at": "2020-09-11T18:09:33Z",
"ip_address": "185.13.21.99"
},
{
"agreement": "account_agreement",
"signed_at": "2020-09-11T18:13:44Z",
"ip_address": "185.13.21.99"
},
{
"agreement": "customer_agreement",
"signed_at": "2020-09-11T18:13:44Z",
"ip_address": "185.13.21.99"
}
],
"documents": [
{
"document_type": "identity_verification",
"document_sub_type": "passport",
"content": "QWxwYWNhcyBjYW5ub3QgbGl2ZSBhbG9uZS4=",
"mime_type": "image/jpeg"
}
],
"trusted_contact": {
"given_name": "Jane",
"family_name": "Doe",
"email_address": "jane.doe@example.com"
}
}'
https://domain.com/v1/accounts
Postman Collection Item JSON
{
"name": "Account",
"request": {
"method": "POST",
"header": [
],
"body": {
"mode": "raw",
"raw": "{\n \"contact\": {\n \"email_address\": \"cool_alpaca@example.com\",\n \"phone_number\": \"555-666-7788\",\n \"street_address\": [\"20 N San Mateo Dr\"],\n \"city\": \"San Mateo\",\n \"state\": \"CA\",\n \"postal_code\": \"94401\",\n \"country\": \"USA\"\n },\n \"identity\": {\n \"given_name\": \"John\",\n \"family_name\": \"Doe\",\n \"date_of_birth\": \"1990-01-01\",\n \"tax_id\": \"666-55-4321\",\n \"tax_id_type\": \"USA_SSN\",\n \"country_of_citizenship\": \"USA\",\n \"country_of_birth\": \"USA\",\n \"country_of_tax_residence\": \"USA\",\n \"funding_source\": [\"employment_income\"]\n },\n \"disclosures\": {\n \"is_control_person\": false,\n \"is_affiliated_exchange_or_finra\": false,\n \"is_politically_exposed\": false,\n \"immediate_family_exposed\": false\n },\n \"agreements\": [\n {\n \"agreement\": \"margin_agreement\",\n \"signed_at\": \"2020-09-11T18:09:33Z\",\n \"ip_address\": \"185.13.21.99\"\n },\n {\n \"agreement\": \"account_agreement\",\n \"signed_at\": \"2020-09-11T18:13:44Z\",\n \"ip_address\": \"185.13.21.99\"\n },\n {\n \"agreement\": \"customer_agreement\",\n \"signed_at\": \"2020-09-11T18:13:44Z\",\n \"ip_address\": \"185.13.21.99\"\n }\n ],\n \"documents\": [\n {\n \"document_type\": \"identity_verification\",\n \"document_sub_type\": \"passport\",\n \"content\": \"QWxwYWNhcyBjYW5ub3QgbGl2ZSBhbG9uZS4=\",\n \"mime_type\": \"image/jpeg\"\n }\n ],\n \"trusted_contact\": {\n \"given_name\": \"Jane\",\n \"family_name\": \"Doe\",\n \"email_address\": \"jane.doe@example.com\"\n }\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{HOST}}/v1/accounts",
"host": [
"{{HOST}}"
],
"path": [
"v1",
"accounts"
]
},
"description": "| Attribute | Requirement |\n| ------------- |:-------------: |\n| `contact` | Required |\n| `identity` | Required |\n| `disclosures` | Required |\n| `documents` | Optional |\n| `trusted_contact` | Optional |"
},
"response": [
]
}