about summary refs log tree commit diff

piper
make a get request and you'll get your IP address. with a but more to facilitate easy use in a dynamic dns kinda situation.

name origin
"it's a thing that tells you your IP"
-> "gets your IP?"
-> "IPer"
-> "piper!"

send an Authorization header with your request to track changes in your IP address. The value you provide can only contain Base-64 characters, but does not have to be valid Base-64.

If a request is received with an Authorization header, piper will compare the IP the request came from with the last IP to use that Authorization value. There are three possible situations and two responses:

A 200 status code will be returned, with an IP in the body, if:
- A request has never been made with the provided auth value
- The last request to use the auth value came from a different IP address

A 302 status code will be returned, with no body, if:
- The last request to use the auth value comes from the same IP address

There are multiple Content-Types supported. Below is a list of types and example responses. If you do not provide a Content-Type, plaintext is assumed.

application/json

{"ip": "127.0.0.1"}

text/plain

127.0.0.1

application/xml

<?xml version="1.0" encoding="utf-8"?>
<ip>1.1.1.1</ip>