Home Explore Blog CI



nushell

commands/docs/http_post.md
860775a0fe24415cfc9cc3dba39bffd20d1807b30ece77ee0000000300000980
---
title: http post
categories: |
  network
version: 0.104.0
network: |
  Post a body to a URL.
usage: |
  Post a body to a URL.
editLink: false
contributors: false
---
<!-- This file is automatically generated. Please edit the command in https://github.com/nushell/nushell instead. -->

# `http post` for [network](/commands/categories/network.md)

<div class='command-title'>Post a body to a URL.</div>

## Signature

```> http post {flags} (URL) (data)```

## Flags

 -  `--user, -u {any}`: the username when authenticating
 -  `--password, -p {any}`: the password when authenticating
 -  `--content-type, -t {any}`: the MIME type of content to post
 -  `--max-time, -m {duration}`: max duration before timeout occurs
 -  `--headers, -H {any}`: custom headers you want to add
 -  `--raw, -r`: return values as a string instead of a table
 -  `--insecure, -k`: allow insecure server connections when using SSL
 -  `--full, -f`: returns the full response instead of only the body
 -  `--allow-errors, -e`: do not fail if the server returns an error code
 -  `--redirect-mode, -R {string}`: What to do when encountering redirects. Default: 'follow'. Valid options: 'follow' ('f'), 'manual' ('m'), 'error' ('e').

## Parameters

 -  `URL`: The URL to post to.
 -  `data`: The contents of the post body. Required unless part of a pipeline.


## Input/output types:

| input | output |
| ----- | ------ |
| any   | any    |
## Examples

Post content to example.com
```nu
> http post https://www.example.com 'body'

```

Post content to example.com, with username and password
```nu
> http post --user myuser --password mypass https://www.example.com 'body'

```

Post content to example.com, with custom header
```nu
> http post --headers [my-header-key my-header-value] https://www.example.com

```

Post content to example.com, with JSON body
```nu
> http post --content-type application/json https://www.example.com { field: value }

```

Post JSON content from a pipeline to example.com
```nu
> open --raw foo.json | http post https://www.example.com

```

Upload a binary file to example.com
```nu
> http post --content-type multipart/form-data https://www.example.com { file: (open -r file.mp3) }

```

Convert a text file into binary and upload it to example.com
```nu
> http post --content-type multipart/form-data https://www.example.com { file: (open -r file.txt | into binary) }

```

## Notes
Performs HTTP POST operation.

Chunks
88167040 (1st chunk of `commands/docs/http_post.md`)
Title: http post Command Documentation
Summary
This document details the usage of the `http post` command in Nushell, which is used to send data to a specified URL via an HTTP POST request. It outlines the command's signature, available flags (such as authentication, content type, headers, timeout, and error handling), required parameters (URL and data), input/output types, and provides several practical examples demonstrating how to post content with different configurations, including authentication, custom headers, JSON bodies, and file uploads. The command supports various options for handling redirects and allows for insecure server connections.