Chilkat Online Tools

delphiDll / Coupa Postman Collection - OAuth - Master / Create SIM with Primary/RTA/Standard Addresses

Back to Collection Items

var
http: HCkHttp;
success: Boolean;
xml: HCkXml;
sbRequestBody: HCkStringBuilder;
resp: HCkHttpResponse;

begin
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

http := CkHttp_Create();

// Use this online tool to generate code from sample XML: Generate Code to Create XML

// The following XML is sent in the request body.

// <?xml version="1.0" encoding="UTF-8"?>
// <supplier-information>
//     <supplier-id>3537</supplier-id>
//     <status>approved</status>
//     <name>SIM load33</name>
//     <display-name>SIM Display Load33</display-name>
//     <federal-tax-num>534567891</federal-tax-num>
//     <duns-number>534567810</duns-number>
//     <invoice-matching-level>2-way</invoice-matching-level>
//     <estimated-spend-amount>0.0</estimated-spend-amount>
//     <user-id>2</user-id>
//     <po-email>load1sims@test.com</po-email>
//     <po-method>email</po-method>
//     <last-exported-at/>
//     <po-change-method>email</po-change-method>
//     <content-groups>
//         <content-group>
//             <name>CG1</name>
//         </content-group>
//         <content-group>
//             <name>CG2</name>
//         </content-group>
//     </content-groups>
//     <supplier-information-addresses>
//         <kind>Primary</kind>
//         <location-code>lcload11</location-code>
//         <address-name>addname11</address-name>
//         <street-address>street 1</street-address>
//         <street-address2>st 2</street-address2>
//         <postal-code>23415</postal-code>
//         <city>Reno</city>
//         <state-region>NV</state-region>
//         <active>true</active>
//         <country>
//             <code>US</code>
//         </country>
//     </supplier-information-addresses>
//     <supplier-information-addresses>
//         <kind>RTA</kind>
//         <location-code>rtas1</location-code>
//         <address-name>IDK1</address-name>
//         <street-address>1 st bank</street-address>
//         <street-address2/>
//         <postal-code>23541</postal-code>
//         <city>Princeton</city>
//         <state-region>NJ</state-region>
//         <active>true</active>
//         <country>
//             <code>US</code>
//         </country>
//         <bank-address>maybe st 1</bank-address>
//         <bank-city>Princeton</bank-city>
//         <bank-state-region>NJ</bank-state-region>
//         <bank-postal-code>23541</bank-postal-code>
//         <name-on-bank-account>My Name</name-on-bank-account>
//         <bank-name>Wells Fargo</bank-name>
//         <bank-account-number>2345678901</bank-account-number>
//         <bank-routing-number>234123234</bank-routing-number>
//         <international-bank-account-number/>
//         <iban-number/>
//         <sort-code/>
//         <swift-code/>
//         <bic/>
//     </supplier-information-addresses>
//     <supplier-information-addresses>
//         <kind>RTA</kind>
//         <location-code>2loca234</location-code>
//         <address-name/>
//         <street-address>1 test st</street-address>
//         <street-address2/>
//         <postal-code>23412</postal-code>
//         <city>San Mateo</city>
//         <state-region>CA</state-region>
//         <active>true</active>
//         <country>
//             <code>US</code>
//         </country>
//         <bank-address>END Of The rd</bank-address>
//         <bank-city>San Mateo</bank-city>
//         <bank-state-region>CA</bank-state-region>
//         <bank-postal-code>25342</bank-postal-code>
//         <name-on-bank-account>My Name</name-on-bank-account>
//         <bank-name>Wells Fargo</bank-name>
//         <bank-account-number>546755654323</bank-account-number>
//         <bank-routing-number>100002341</bank-routing-number>
//         <international-bank-account-number/>
//         <iban-number/>
//         <sort-code/>
//         <swift-code/>
//         <bic/>
//     </supplier-information-addresses>
//     <supplier-information-addresses>
//         <kind>Standard</kind>
//         <location-code>stdlcode1</location-code>
//         <address-name/>
//         <street-address>1 stnd st</street-address>
//         <street-address2/>
//         <postal-code>33231</postal-code>
//         <city>Chicago</city>
//         <state-region>IL</state-region>
//         <active>true</active>
//         <country>
//             <code>US</code>
//         </country>
//     </supplier-information-addresses>
//     <supplier-information-contacts>
//         <supplier-information-contact>
//             <kind>Primary</kind>
//             <name-given>fname1</name-given>
//             <name-family>lastn1</name-family>
//             <email>test21@rest.com</email>
//         </supplier-information-contact>
//     </supplier-information-contacts>
// </supplier-information>
// 

xml := CkXml_Create();
CkXml_putTag(xml,'supplier-information');
CkXml_UpdateChildContentInt(xml,'supplier-id',3537);
CkXml_UpdateChildContent(xml,'status','approved');
CkXml_UpdateChildContent(xml,'name','SIM load33');
CkXml_UpdateChildContent(xml,'display-name','SIM Display Load33');
CkXml_UpdateChildContentInt(xml,'federal-tax-num',534567891);
CkXml_UpdateChildContentInt(xml,'duns-number',534567810);
CkXml_UpdateChildContent(xml,'invoice-matching-level','2-way');
CkXml_UpdateChildContent(xml,'estimated-spend-amount','0.0');
CkXml_UpdateChildContentInt(xml,'user-id',2);
CkXml_UpdateChildContent(xml,'po-email','load1sims@test.com');
CkXml_UpdateChildContent(xml,'po-method','email');
CkXml_UpdateChildContent(xml,'last-exported-at','');
CkXml_UpdateChildContent(xml,'po-change-method','email');
CkXml_UpdateChildContent(xml,'content-groups|content-group|name','CG1');
CkXml_UpdateChildContent(xml,'content-groups|content-group[1]|name','CG2');
CkXml_UpdateChildContent(xml,'supplier-information-addresses|kind','Primary');
CkXml_UpdateChildContent(xml,'supplier-information-addresses|location-code','lcload11');
CkXml_UpdateChildContent(xml,'supplier-information-addresses|address-name','addname11');
CkXml_UpdateChildContent(xml,'supplier-information-addresses|street-address','street 1');
CkXml_UpdateChildContent(xml,'supplier-information-addresses|street-address2','st 2');
CkXml_UpdateChildContentInt(xml,'supplier-information-addresses|postal-code',23415);
CkXml_UpdateChildContent(xml,'supplier-information-addresses|city','Reno');
CkXml_UpdateChildContent(xml,'supplier-information-addresses|state-region','NV');
CkXml_UpdateChildContent(xml,'supplier-information-addresses|active','true');
CkXml_UpdateChildContent(xml,'supplier-information-addresses|country|code','US');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|kind','RTA');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|location-code','rtas1');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|address-name','IDK1');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|street-address','1 st bank');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|street-address2','');
CkXml_UpdateChildContentInt(xml,'supplier-information-addresses[1]|postal-code',23541);
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|city','Princeton');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|state-region','NJ');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|active','true');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|country|code','US');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|bank-address','maybe st 1');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|bank-city','Princeton');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|bank-state-region','NJ');
CkXml_UpdateChildContentInt(xml,'supplier-information-addresses[1]|bank-postal-code',23541);
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|name-on-bank-account','My Name');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|bank-name','Wells Fargo');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|bank-account-number','2345678901');
CkXml_UpdateChildContentInt(xml,'supplier-information-addresses[1]|bank-routing-number',234123234);
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|international-bank-account-number','');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|iban-number','');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|sort-code','');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|swift-code','');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[1]|bic','');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|kind','RTA');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|location-code','2loca234');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|address-name','');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|street-address','1 test st');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|street-address2','');
CkXml_UpdateChildContentInt(xml,'supplier-information-addresses[2]|postal-code',23412);
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|city','San Mateo');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|state-region','CA');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|active','true');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|country|code','US');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|bank-address','END Of The rd');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|bank-city','San Mateo');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|bank-state-region','CA');
CkXml_UpdateChildContentInt(xml,'supplier-information-addresses[2]|bank-postal-code',25342);
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|name-on-bank-account','My Name');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|bank-name','Wells Fargo');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|bank-account-number','546755654323');
CkXml_UpdateChildContentInt(xml,'supplier-information-addresses[2]|bank-routing-number',100002341);
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|international-bank-account-number','');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|iban-number','');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|sort-code','');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|swift-code','');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[2]|bic','');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[3]|kind','Standard');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[3]|location-code','stdlcode1');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[3]|address-name','');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[3]|street-address','1 stnd st');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[3]|street-address2','');
CkXml_UpdateChildContentInt(xml,'supplier-information-addresses[3]|postal-code',33231);
CkXml_UpdateChildContent(xml,'supplier-information-addresses[3]|city','Chicago');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[3]|state-region','IL');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[3]|active','true');
CkXml_UpdateChildContent(xml,'supplier-information-addresses[3]|country|code','US');
CkXml_UpdateChildContent(xml,'supplier-information-contacts|supplier-information-contact|kind','Primary');
CkXml_UpdateChildContent(xml,'supplier-information-contacts|supplier-information-contact|name-given','fname1');
CkXml_UpdateChildContent(xml,'supplier-information-contacts|supplier-information-contact|name-family','lastn1');
CkXml_UpdateChildContent(xml,'supplier-information-contacts|supplier-information-contact|email','test21@rest.com');

// Adds the "Authorization: Bearer <access_token>" header.
CkHttp_putAuthToken(http,'<access_token>');

sbRequestBody := CkStringBuilder_Create();
CkXml_GetXmlSb(xml,sbRequestBody);

resp := CkHttp_PTextSb(http,'POST','["id","supplier_information_id","kind","name_given","name_family","email"]}]',sbRequestBody,'utf-8','application/xml',False,False);
if (CkHttp_getLastMethodSuccess(http) = False) then
  begin
    Memo1.Lines.Add(CkHttp__lastErrorText(http));
    Exit;
  end;

Memo1.Lines.Add(IntToStr(CkHttpResponse_getStatusCode(resp)));
Memo1.Lines.Add(CkHttpResponse__bodyStr(resp));
CkHttpResponse_Dispose(resp);

CkHttp_Dispose(http);
CkXml_Dispose(xml);
CkStringBuilder_Dispose(sbRequestBody);

Curl Command

curl -X POST
	-H "Authorization: Bearer <access_token>"
	-d '<?xml version="1.0" encoding="UTF-8"?>
<supplier-information>
    <supplier-id>3537</supplier-id>
    <status>approved</status>
    <name>SIM load33</name>
    <display-name>SIM Display Load33</display-name>
    <federal-tax-num>534567891</federal-tax-num>
    <duns-number>534567810</duns-number>
    <invoice-matching-level>2-way</invoice-matching-level>
    <estimated-spend-amount>0.0</estimated-spend-amount>
    <user-id>2</user-id>
    <po-email>load1sims@test.com</po-email>
    <po-method>email</po-method>
    <last-exported-at />
    <po-change-method>email</po-change-method>
    <content-groups>
        <content-group>
            <name>CG1</name>
        </content-group>
        <content-group>
            <name>CG2</name>
        </content-group>
    </content-groups>
    <supplier-information-addresses>
        <kind>Primary</kind>
        <location-code>lcload11</location-code>
        <address-name>addname11</address-name>
        <street-address>street 1</street-address>
        <street-address2>st 2</street-address2>
        <postal-code>23415</postal-code>
        <city>Reno</city>
        <state-region>NV</state-region>
        <active>true</active>
        <country>
            <code>US</code>
        </country>
    </supplier-information-addresses>
    <supplier-information-addresses>
        <kind>RTA</kind>
        <location-code>rtas1</location-code>
        <address-name>IDK1</address-name>
        <street-address>1 st bank</street-address>
        <street-address2 />
        <postal-code>23541</postal-code>
        <city>Princeton</city>
        <state-region>NJ</state-region>
        <active>true</active>
        <country>
            <code>US</code>
        </country>
        <bank-address>maybe st 1</bank-address>
        <bank-city>Princeton</bank-city>
        <bank-state-region>NJ</bank-state-region>
        <bank-postal-code>23541</bank-postal-code>
        <name-on-bank-account>My Name</name-on-bank-account>
        <bank-name>Wells Fargo</bank-name>
        <bank-account-number>2345678901</bank-account-number>
        <bank-routing-number>234123234</bank-routing-number>
        <international-bank-account-number />
        <iban-number />
        <sort-code />
        <swift-code />
        <bic />
    </supplier-information-addresses>
    <supplier-information-addresses>
        <kind>RTA</kind>
        <location-code>2loca234</location-code>
        <address-name />
        <street-address>1 test st</street-address>
        <street-address2 />
        <postal-code>23412</postal-code>
        <city>San Mateo</city>
        <state-region>CA</state-region>
        <active>true</active>
        <country>
            <code>US</code>
        </country>
        <bank-address>END Of The rd</bank-address>
        <bank-city>San Mateo</bank-city>
        <bank-state-region>CA</bank-state-region>
        <bank-postal-code>25342</bank-postal-code>
        <name-on-bank-account>My Name</name-on-bank-account>
        <bank-name>Wells Fargo</bank-name>
        <bank-account-number>546755654323</bank-account-number>
        <bank-routing-number>100002341</bank-routing-number>
        <international-bank-account-number />
        <iban-number />
        <sort-code />
        <swift-code />
        <bic />
    </supplier-information-addresses>
    <supplier-information-addresses>
        <kind>Standard</kind>
        <location-code>stdlcode1</location-code>
        <address-name />
        <street-address>1 stnd st</street-address>
        <street-address2 />
        <postal-code>33231</postal-code>
        <city>Chicago</city>
        <state-region>IL</state-region>
        <active>true</active>
        <country>
            <code>US</code>
        </country>
    </supplier-information-addresses>
    <supplier-information-contacts>
        <supplier-information-contact>
            <kind>Primary</kind>
            <name-given>fname1</name-given>
            <name-family>lastn1</name-family>
            <email>test21@rest.com</email>
        </supplier-information-contact>
    </supplier-information-contacts>
</supplier-information>'
https://domain.com/supplier_information?fields=["id","status","lasy_exported_at","name","display_name","supplier_id","supplier_number","federal_tax_num","duns_number","user_id","po_email",{"custom_fields": {}},{"created_by": ["id","login","email"]},{"updated_by": ["id","login","email"]},{"supplier_information_addresses": ["id","kind","location_code","address_name","street_address","street_address2","city","postal_code","state",{"country": ["id","code","name"]},{"custom_fields": {}}]},{"supplier_information_contacts": ["id","supplier_information_id","kind","name_given","name_family","email"]}]

Postman Collection Item JSON

{
  "name": "Create SIM with Primary/RTA/Standard Addresses",
  "request": {
    "method": "POST",
    "header": [
    ],
    "body": {
      "mode": "raw",
      "raw": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<supplier-information>\n    <supplier-id>3537</supplier-id>\n    <status>approved</status>\n    <name>SIM load33</name>\n    <display-name>SIM Display Load33</display-name>\n    <federal-tax-num>534567891</federal-tax-num>\n    <duns-number>534567810</duns-number>\n    <invoice-matching-level>2-way</invoice-matching-level>\n    <estimated-spend-amount>0.0</estimated-spend-amount>\n    <user-id>2</user-id>\n    <po-email>load1sims@test.com</po-email>\n    <po-method>email</po-method>\n    <last-exported-at />\n    <po-change-method>email</po-change-method>\n    <content-groups>\n        <content-group>\n            <name>CG1</name>\n        </content-group>\n        <content-group>\n            <name>CG2</name>\n        </content-group>\n    </content-groups>\n    <supplier-information-addresses>\n        <kind>Primary</kind>\n        <location-code>lcload11</location-code>\n        <address-name>addname11</address-name>\n        <street-address>street 1</street-address>\n        <street-address2>st 2</street-address2>\n        <postal-code>23415</postal-code>\n        <city>Reno</city>\n        <state-region>NV</state-region>\n        <active>true</active>\n        <country>\n            <code>US</code>\n        </country>\n    </supplier-information-addresses>\n    <supplier-information-addresses>\n        <kind>RTA</kind>\n        <location-code>rtas1</location-code>\n        <address-name>IDK1</address-name>\n        <street-address>1 st bank</street-address>\n        <street-address2 />\n        <postal-code>23541</postal-code>\n        <city>Princeton</city>\n        <state-region>NJ</state-region>\n        <active>true</active>\n        <country>\n            <code>US</code>\n        </country>\n        <bank-address>maybe st 1</bank-address>\n        <bank-city>Princeton</bank-city>\n        <bank-state-region>NJ</bank-state-region>\n        <bank-postal-code>23541</bank-postal-code>\n        <name-on-bank-account>My Name</name-on-bank-account>\n        <bank-name>Wells Fargo</bank-name>\n        <bank-account-number>2345678901</bank-account-number>\n        <bank-routing-number>234123234</bank-routing-number>\n        <international-bank-account-number />\n        <iban-number />\n        <sort-code />\n        <swift-code />\n        <bic />\n    </supplier-information-addresses>\n    <supplier-information-addresses>\n        <kind>RTA</kind>\n        <location-code>2loca234</location-code>\n        <address-name />\n        <street-address>1 test st</street-address>\n        <street-address2 />\n        <postal-code>23412</postal-code>\n        <city>San Mateo</city>\n        <state-region>CA</state-region>\n        <active>true</active>\n        <country>\n            <code>US</code>\n        </country>\n        <bank-address>END Of The rd</bank-address>\n        <bank-city>San Mateo</bank-city>\n        <bank-state-region>CA</bank-state-region>\n        <bank-postal-code>25342</bank-postal-code>\n        <name-on-bank-account>My Name</name-on-bank-account>\n        <bank-name>Wells Fargo</bank-name>\n        <bank-account-number>546755654323</bank-account-number>\n        <bank-routing-number>100002341</bank-routing-number>\n        <international-bank-account-number />\n        <iban-number />\n        <sort-code />\n        <swift-code />\n        <bic />\n    </supplier-information-addresses>\n    <supplier-information-addresses>\n        <kind>Standard</kind>\n        <location-code>stdlcode1</location-code>\n        <address-name />\n        <street-address>1 stnd st</street-address>\n        <street-address2 />\n        <postal-code>33231</postal-code>\n        <city>Chicago</city>\n        <state-region>IL</state-region>\n        <active>true</active>\n        <country>\n            <code>US</code>\n        </country>\n    </supplier-information-addresses>\n    <supplier-information-contacts>\n        <supplier-information-contact>\n            <kind>Primary</kind>\n            <name-given>fname1</name-given>\n            <name-family>lastn1</name-family>\n            <email>test21@rest.com</email>\n        </supplier-information-contact>\n    </supplier-information-contacts>\n</supplier-information>",
      "options": {
        "raw": {
          "language": "xml"
        }
      }
    },
    "url": {
      "raw": "{{URL}}/supplier_information?fields=[\"id\",\"status\",\"lasy_exported_at\",\"name\",\"display_name\",\"supplier_id\",\"supplier_number\",\"federal_tax_num\",\"duns_number\",\"user_id\",\"po_email\",{\"custom_fields\": {}},{\"created_by\": [\"id\",\"login\",\"email\"]},{\"updated_by\": [\"id\",\"login\",\"email\"]},{\"supplier_information_addresses\": [\"id\",\"kind\",\"location_code\",\"address_name\",\"street_address\",\"street_address2\",\"city\",\"postal_code\",\"state\",{\"country\": [\"id\",\"code\",\"name\"]},{\"custom_fields\": {}}]},{\"supplier_information_contacts\": [\"id\",\"supplier_information_id\",\"kind\",\"name_given\",\"name_family\",\"email\"]}]",
      "host": [
        "{{URL}}"
      ],
      "path": [
        "supplier_information"
      ],
      "query": [
        {
          "key": "fields",
          "value": "[\"id\",\"status\",\"lasy_exported_at\",\"name\",\"display_name\",\"supplier_id\",\"supplier_number\",\"federal_tax_num\",\"duns_number\",\"user_id\",\"po_email\",{\"custom_fields\": {}},{\"created_by\": [\"id\",\"login\",\"email\"]},{\"updated_by\": [\"id\",\"login\",\"email\"]},{\"supplier_information_addresses\": [\"id\",\"kind\",\"location_code\",\"address_name\",\"street_address\",\"street_address2\",\"city\",\"postal_code\",\"state\",{\"country\": [\"id\",\"code\",\"name\"]},{\"custom_fields\": {}}]},{\"supplier_information_contacts\": [\"id\",\"supplier_information_id\",\"kind\",\"name_given\",\"name_family\",\"email\"]}]"
        }
      ]
    }
  },
  "response": [
  ]
}