I am trying to make a PATCH call to a server. I am using the following command:
curl --data status=closed -X PATCH https://api.viafoura.com/v2/dev.viafoura.com/pages/7000000043515
Is this the correct way of sending the PATCH request? I am getting an error saying there is no status parameter set. I am guessing the --data is for POST request only and thus the server doesn't find the status parameter.
This is the response (FYI):
{"http_status":400,"error":"Parameter validation errors","validation_errors":{"status":{"error":"Request missing status parameter."}}}
You can find documentation about this service here.
This is the format you should use:
curl --request PATCH https://api.viafoura.com/v2/dev.viafoura.com/pages/7000000043515?status=closed
That API seems to want the status
parameter as a query parameter on the url, not part of the PATCH body.
At this point the server is going to return a 401 error: "You must be logged in to modify page settings." Assumedly you have to login first with something like this:
curl --request POST "https://api.viafoura.com/v2/dev.viafoura.com/users/login?password=TeNn!sNum8er1&[email protected]"
I've used the credentials from their documentation in that example, which I figured would work on their dev server, but its currently returning an "Incorrect password" error.
If you have valid credentials, though, you should get back a session cookie which you can then use to authenticate your PATCH request.