https://github.com/pixelfactoryio/privatebin-cli
Privatebin CLI in NodeJS.
https://github.com/pixelfactoryio/privatebin-cli
cli crypto javascript nodejs paste privatebin typescript
Last synced: 2 months ago
JSON representation
Privatebin CLI in NodeJS.
- Host: GitHub
- URL: https://github.com/pixelfactoryio/privatebin-cli
- Owner: pixelfactoryio
- Created: 2019-07-10T09:18:30.000Z (over 6 years ago)
- Default Branch: main
- Last Pushed: 2025-09-13T10:08:35.000Z (7 months ago)
- Last Synced: 2025-09-27T02:21:58.743Z (6 months ago)
- Topics: cli, crypto, javascript, nodejs, paste, privatebin, typescript
- Language: TypeScript
- Homepage:
- Size: 1.96 MB
- Stars: 41
- Watchers: 2
- Forks: 10
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# privatebin-cli

[](https://codecov.io/gh/pixelfactoryio/privatebin-cli)
Privatebin-cli is Javascript Command Line tool and a Client Library to interact with privatebin (https://privatebin.net)
## Install
```bash
npm install -g @pixelfactory/privatebin
```
## Command Line
### Send command
```bash
$ privatebin send --help
Usage: privatebin send [options]
Send a text to privatebin
Options:
-e, --expire paste expire time [5min, 10min, 1hour, 1day, 1week, 1month, 1year, never] (default: "1week")
--burnafterreading burn after reading (default: false)
--opendiscussion open discussion (default: false)
--compression use compression [zlib, none] (default: "zlib")
--textformat text format [plaintext, markdown] for the input
-p, --password prompt for password (default: false)
-u, --url privateBin host (default: "https://privatebin.net")
-o, --output output format [text, json, yaml] (default: "text")
-h, --help display help for command
```
#### Example
```bash
$ privatebin send -e 5min -o json "Hello World"
{
"pasteId": "ccd05227e7bab99c",
"pasteURL": "https://privatebin.net/?ccd05227e7bab99c#GWk29DqQx6NAfMYHgMeDeR76QSyL82fHHg5yGu3U8fft",
"deleteURL": "https://privatebin.net/?pasteid=ccd05227e7bab99c&deletetoken=62a14a8483452485902b2e86e56f07269dd484f305d7d210d2375397deb79c1b"
}
```
Or use pipe
```bash
$ echo 'Hello World' | privatebin send -e 5min
pasteId: 649aa8c062d4ed4d
pasteURL: https://privatebin.net/?649aa8c062d4ed4d#Gt3NoxrGF8Tck5j9bBrsuFjbEaCyEBfBiGi1g8qCF2kv
deleteURL: https://privatebin.net/?pasteid=649aa8c062d4ed4d&deletetoken=b2dae42a762cf0b5e1dbf1fd5113356ba370218091668950c7f6a2d181a07ac6
```
... or send a file with pipe to your own instance
```bash
cat README.md | privatebin send --url https://privatebin.your.domaine -o json -e 5min
```
### Get command
```bash
$ privatebin get --help
Usage: privatebin get [options]
get a message from privatebin
Options:
-h, --help display help for command
```
#### Example
```bash
$ privatebin get "https://privatebin.net/?ccd05227e7bab99c#GWk29DqQx6NAfMYHgMeDeR76QSyL82fHHg5yGu3U8fft"
Hello World
```
## Library
### Install
```bash
npm install @pixelfactory/privatebin
```
### Usage
```javascript
import { PrivatebinClient } from '@pixelfactory/privatebin';
import { encode } from 'bs58';
const urlPrivatebin = 'https://privatebin.net'
const privatebin = new PrivatebinClient(urlPrivatebin);
const key = crypto.getRandomValues(new Uint8Array(32));
const msg = 'Hello World!';
const opts = {
textformat: 'plaintext',
expire: '5min',
burnafterreading: 0,
opendiscussion: 0,
output: 'text',
compression: 'zlib',
};
const paste = privatebin.sendText(msg, key, opts);
console.log(urlPrivatebin + paste.url + '#' + encode(key))
```