# HTTP

The HTTP channel is useful for pushing your Shopify orders to a REST API, a GraphQL interface, or a SOAP web service.

### URL

The first step is to specify the target URL.

<figure><img src="https://1315397457-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MESR3wemEwg3-wBmPY1%2Fuploads%2Fgit-blob-a5c70c5e3aff38b41f9c108fdce31f88814c1836%2Fhttp-target-url-posterflow-api.png?alt=media" alt="HTTP target URL set to https://api.posterflow.de/api/"><figcaption></figcaption></figure>

You can include [Liquid variables](https://help.exporteo.solvenium.com/liquid/liquid-variables) in the URL. For example, to pass the order number in the path, set the URL to:

```
https://api.example.com/orders/{{order.order_number}}
```

A special Liquid variable for the URL field is the `{{output}}` variable which stores the entire content generated from the output template. It can be useful in rare cases when a web service accepts data only through the query parameters.

```
https://ecommerce.gardenimpressions.nl/webservices/garden-mkpprod/PutOrder?XMLTEXT={{output | url_encode}}
```

### Method

You can select one of the following HTTP methods: GET, POST, or PUT.

In most cases, the desired method is POST.

For POST and PUT methods, the generated output is passed in the request payload body.

### Headers

HTTP headers are pieces of information that are sent along with the main payload. An HTTP header consist of a key (a fixed name), and value. One of the most popular headers is `Content-Type`. The `Content-Type` header is automatically added by Exporteo, and changes according to the selected output format.

<figure><img src="https://1315397457-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MESR3wemEwg3-wBmPY1%2Fuploads%2Fgit-blob-fadc171e44fad6f34966b541ab3c4b6e772dbe7d%2Fhttp-header-content-type-text-csv.png?alt=media" alt="Content-Type header set to text/csv"><figcaption></figcaption></figure>

| Output Format | Content-Type     |
| ------------- | ---------------- |
| CSV           | text/csv         |
| JSON          | application/json |
| XML           | application/xml  |

However, you may need to adjust the `Content-Type` header for the XML output formats, as some web services require `text/xml` instead of `application/xml`.
