Sample code for 30+ languages & platforms
Tcl

Duplicate curl POST with JSON Body

See more REST Examples

Demonstrates how to duplicate the following curl command, which sends a POST w/ a JSON body.
curl -H "Content-Type: application/json" -i https://my-store.com/wp-json/wc/v2/products/batch?consumer_key=YOUR_CONSUMER_KEY&consumer_secret=YOUR_CONSUMER_SECRET  -d @test_product.txt

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set success 0

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

set rest [new_CkRest]

# Connect using TLS.
set bAutoReconnect 1
set success [CkRest_Connect $rest "my-store.com" 443 1 $bAutoReconnect]

# test_product.txt contains this string:
set sbJson [new_CkStringBuilder]

CkStringBuilder_Append $sbJson "{\"create\": [{\"name\": \"Woo Single #1\",\"type\": \"simple\",\"regular_price\": \"21.99\"}]}"

# Add query parameters

# Add the Content-Type HTTP request header.
set success [CkRest_AddHeader $rest "Content-Type" "application/json"]

set jsonResponseStr [CkRest_fullRequestString $rest "POST" "/wp-json/wc/v2/products/batch?consumer_key=YOUR_CONSUMER_KEY&consumer_secret=YOUR_CONSUMER_SECRET" [CkStringBuilder_getAsString $sbJson]]
if {[CkRest_get_LastMethodSuccess $rest] != 1} then {
    puts [CkRest_lastErrorText $rest]
    delete_CkRest $rest
    delete_CkStringBuilder $sbJson
    exit
}

# Show the JSON response.  (See below for a sample JSON response.)
puts "Json Response: $jsonResponseStr"

delete_CkRest $rest
delete_CkStringBuilder $sbJson