how.wtf

How to make a PATCH request using curl

· Thomas Taylor

For more information about curl, checkout the “What is curl” article. This article will discuss how to interact with an API using PATCH requests through curl.

Make a simple PATCH request

The basic syntax for sending a PATCH request using curl is:

1curl -X PATCH https://example.com

The -X argument accepts an HTTP method for interacting with the server. For HTTP, valid values include: GET (default), POST, PUT, DELETE, etc.

NOTE: The -X flag is a shorthand for --request. Either can be used.

Make a PATCH request with data

Users can send data along with a PATCH request.

1curl -X PATCH -d "title=bar&body=foo" \
2	https://jsonplaceholder.typicode.com/posts/1

In the example above, a PATCH request is sent to the JSONPlaceholder API to update an existing post (1) with a title of bar and a body of foo.

The default Content-Type is application/x-www-form-urlencoded.

NOTE: The -d flag is a shorthand for --data. Either can be used.

Make a PATCH request with JSON body

Users may optionally send JSON data in their request payloads.

Making a PATCH request with JSON

1curl -X PATCH \
2	-H 'Content-Type: application/json' \
3	-d '{"title":"bar","body":"foo"}' \
4	https://jsonplaceholder.typicode.com/posts/1

In the example above, a PATCH request is sent to the JSONPlaceholder API to update an existing post (1) with a title of bar and a body of foo.

The -H flag accepts a Key: value string that represents a header. In the above case, it sets the content type: Content-Type: application/json.

NOTE: The -H flag is a shorthand for --header. Either can be used.

Making a PATCH request with a JSON file

In addition to text, the -d parameter accepts a file using the syntax @filename.

If a file is named post.json

1{ 
2	"title": "bar",
3	"body": "foo"
4}

then curl can pass on its contents:

1curl -X PATCH \
2	-H 'Content-Type: application/json' \
3	-d @post.json \
4	https://jsonplaceholder.typicode.com/posts/1

#linux  

Reply to this post by email ↪