Sample code for 30+ languages & platforms
DataFlex

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 DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoRest
    Boolean iBAutoReconnect
    Handle hoSbJson
    String sJsonResponseStr
    String sTemp1
    Boolean bTemp1

    Move False To iSuccess

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

    Get Create (RefClass(cComChilkatRest)) To hoRest
    If (Not(IsComObjectCreated(hoRest))) Begin
        Send CreateComObject of hoRest
    End

    // Connect using TLS.
    Move True To iBAutoReconnect
    Get ComConnect Of hoRest "my-store.com" 443 True iBAutoReconnect To iSuccess

    // test_product.txt contains this string:
    Get Create (RefClass(cComChilkatStringBuilder)) To hoSbJson
    If (Not(IsComObjectCreated(hoSbJson))) Begin
        Send CreateComObject of hoSbJson
    End
    Get ComAppend Of hoSbJson '{"create": [{"name": "Woo Single #1","type": "simple","regular_price": "21.99"}]}' To iSuccess

    // Add query parameters

    // Add the Content-Type HTTP request header.
    Get ComAddHeader Of hoRest "Content-Type" "application/json" To iSuccess

    Get ComGetAsString Of hoSbJson To sTemp1
    Get ComFullRequestString Of hoRest "POST" "/wp-json/wc/v2/products/batch?consumer_key=YOUR_CONSUMER_KEY&consumer_secret=YOUR_CONSUMER_SECRET" sTemp1 To sJsonResponseStr
    Get ComLastMethodSuccess Of hoRest To bTemp1
    If (bTemp1 <> True) Begin
        Get ComLastErrorText Of hoRest To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    // Show the JSON response.  (See below for a sample JSON response.)
    Showln "Json Response: " sJsonResponseStr


End_Procedure