Segue um exemplo:
Local cUrlReq := //"https://127.0.0.1:8040/environment/oauth/request_token"Local cUrlAut := //"https://127.0.0.1:8040/environment/oauth/authorize"
Local cUrlAcc := //"https://127.0.0.1:8040/environment/oauth/access_token"
Local oAuthURL := Nil
Local cConsKey := // -- Chave do consumer Key
Local cConsSec := // -- Chave do Consumer Secret
Local cAccesTk := // -- Access Token
Local cSecreTK := // -- Token Secret
Local oClient := Nil
aadd(aHeadOut,'User-Agent: Mozilla/4.0 (compatible; Protheus '+GetBuild()+')')
aadd(aHeadOut,'Accept: /')
aadd(aHeadOut,"Content-Type: application/json")
//aadd(aHeadOut,'Connection: keep-alive')
//aadd(aHeadOut,'Accept-Encoding: gzip, deflate, br')
oAuthURL := FwoAuthURL():New(cUrlReq,cUrlAut,cUrlAcc)
oClient := FwOAuthClient():New(cConsKey,cConsSec,oAuthURL,cPostUrl)
oClient:setToken(cAccesTk)
oClient:setSecretToken(cSecreTK)
oClient:SetContentType("Content-Type: application/json")oClient:setMethodSignature("HMAC-SHA1")
//oClient:SetNonce(cAleatory)
oClient:cOAuthVersion := "1.0"
//oClient:SetTimeStamp(FWTimeStamp())
// PAra GET
cResult := oClient:GET(cPostUrl,cQuery, cJsonBody, aHeadOut , @cResp, .t.)
// PUT
cResult := oClient:PUT(cPostUrl,cQuery, cJsonBody, aHeadOut , @cResp, .t.)