Chilkat Online Tools

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

Back to Collection Items

func chilkatTest() {
    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    let http = CkoHttp()!
    var success: Bool

    // 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>
    // 

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

    // Adds the "Authorization: Bearer <access_token>" header.
    http.authToken = "<access_token>"

    let sbRequestBody = CkoStringBuilder()!
    xml.getSb(sbRequestBody)

    var resp: CkoHttpResponse? = http.pTextSb("POST", url: "[\"id\",\"supplier_information_id\",\"kind\",\"name_given\",\"name_family\",\"email\"]}]", textData: sbRequestBody, charset: "utf-8", contentType: "application/xml", md5: false, gzip: false)
    if http.lastMethodSuccess == false {
        print("\(http.lastErrorText!)")
        return
    }

    print("\(resp!.statusCode.intValue)")
    print("\(resp!.bodyStr!)")
    resp = nil

}

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": [
  ]
}