Sample code for 30+ languages & platforms
PureBasic

Add a Path Substitution Parameter to a REST Request

See more REST Examples

Demonstrates Rest.AddPathParam, which adds or replaces a path-substitution parameter. Before a request is sent, each occurrence of the name in the URI path is replaced with its value.

Background. Path parameters keep a URI path template readable—placeholders such as {userId} are substituted with concrete values just before the request is sent.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkRest.pb"

Procedure ChilkatExample()

    success.i = 0

    rest.i = CkRest::ckCreate()
    If rest.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    ;  Connect to the REST server.  The 3rd argument enables TLS (use 1 for HTTPS on port 443),
    ;  and the 4th enables automatic reconnection if the connection is dropped between requests.
    bTls.i = 1
    bAutoReconnect.i = 1
    success = CkRest::ckConnect(rest,"example.com",443,bTls,bAutoReconnect)
    If success = 0
        Debug CkRest::ckLastErrorText(rest)
        CkRest::ckDispose(rest)
        ProcedureReturn
    EndIf

    ;  Add path-substitution parameters.  Before a request is sent, each occurrence of the name in the
    ;  URI path is replaced with the value.  This keeps the path template readable.
    CkRest::ckAddPathParam(rest,"{userId}","12345")
    CkRest::ckAddPathParam(rest,"{orderId}","98765")

    ;  The placeholders in the path are replaced before the request is sent.
    responseText.s = CkRest::ckFullRequestNoBody(rest,"GET","/users/{userId}/orders/{orderId}")
    If CkRest::ckLastMethodSuccess(rest) = 0
        Debug CkRest::ckLastErrorText(rest)
        CkRest::ckDispose(rest)
        ProcedureReturn
    EndIf

    Debug responseText


    CkRest::ckDispose(rest)


    ProcedureReturn
EndProcedure