Skip to main content

Make http requests to json apis

Project description

Downloads

papir

Papir is an acronym for “Python API Requests”.

The main purpose is to make custom http requests to json APIs, prettify and colorize the full response (headers + json content).

Json is used to post, put, patch or delete and to customize the http headers.

Basic http authentication and gzip compression are supported.

Simple example:

$ papir httpbin.org/get
https://raw.githubusercontent.com/pdrb/papir/master/papir.png

Notes

  • Works on Python 3.3+

  • Uses only Python standard library for maximum compatibility

  • Small and simple source code that can be read in a few minutes

Install

Install using pip:

pip install papir

or

Download and set executable permission on the script file:

chmod +x papir.py

or

Download and run using the python interpreter:

python3 papir.py

Usage

Usage: papir url [options] [method]

make http requests to json apis

Options:
  --version        show program's version number and exit
  -d DATA_FILE     json file to post, put, patch or delete
  -h HEADERS_FILE  json file containing additional headers
  -j JSON_DATA     json string to post, put, patch or delete
  -e JSON_HEADERS  json string containing additional headers
  -t TIMEOUT       timeout in seconds to wait for response (default: 10)
  -a AUTH          basic http authentication in the format username:password
  -f, --follow     follow redirects (default: disabled)
  -v, --verbose    show request headers (default: disabled)

Examples

Assuming the file “data.json” exists containing:

{
    "name": "Bob",
    "age": 30
}

Make a post request using that data:

$ papir example.org -d data.json

The json data can also be passed directly from cli:

$ papir example.org -j '{"name": "Bob", "age": 30}'

To use a different http method just inform it:

$ papir example.org -d data.json put

To customize the request headers, create a json file like:

{
    "Auth-User": "user",
    "Auth-Token": "1234",
    "User-Agent": "myagent"
}

And add it to the request:

$ papir example.org -h headers.json

Headers can also be customized directly from cli:

$ papir example.org -e '{"custom-header": "foobar", "user-agent": "myagent"}'

Obviously, you can mix it with all kinds of http methods:

$ papir example.org -h headers.json -d data.json patch

Simple basic auth:

$ papir example.org -a user:pass

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

papir-0.2.0.tar.gz (5.8 kB view details)

Uploaded Source

File details

Details for the file papir-0.2.0.tar.gz.

File metadata

  • Download URL: papir-0.2.0.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.9.1 pkginfo/1.4.1 requests/2.18.4 setuptools/33.1.1 requests-toolbelt/0.8.0 tqdm/4.19.5 CPython/2.7.14

File hashes

Hashes for papir-0.2.0.tar.gz
Algorithm Hash digest
SHA256 6c57157b20c30ebcdc186476394f4e3069316009d30e0c59d6a0e0fc0025ab77
MD5 64d65b34ba2d6391ebed79f5c0f84369
BLAKE2b-256 33a77e7803d16615f00adbfda0866ad5b741ad6a51a0b5e3d0d2334d9d35c0cd

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page