Skip to content
This repository has been archived by the owner on May 25, 2020. It is now read-only.

sebhoss/identifier-service

Repository files navigation

Identifier-Service Discuss on Google Groups Chat on IRC

Features

  • Generate identifiers based on sequences, timestamps and UUIDs

  • Encode them using Base36, Base62, Base64 or HashId

  • HTTP endpoints that produce both text/html as well as text/plain

  • Allow to retrieve multiple identifiers per call

  • Slack endpoint for slash commands

  • Polymer.js based web component

Demos

Host Provider Region Branch Sleepy?

https://id.metio.wtf/

Hetzner

Europe/Central

master

no

Development Status

All main features are implemented, tests and documentation are incomplete for an first official release.

Usage

GET requests for text/html and text/plain

Send a HTTP GET request against any of the following endpoints using either text/html or text/plain as the ACCEPT header. Use the quantity parameter to specify how many identifiers should be returned (defaults to 1).

Encoding Sequence Timestamp UUID

Plain

/sequences/sequence

/timestamps/timestamp

/uuids/uuid

Base36

/sequences/base36

/timestamps/base36

/uuids/base36

Base62

/sequences/base62

/timestamps/base62

/uuids/base62

Base64

/sequences/base64

/timestamps/base64

/uuids/base64

HashId

/sequences/hashid

/timestamps/hashid

/uuids/hashid

POST requests for Slack slash commands

Send a HTTP POST request against /slack with any of the following command names. The command value specifies how many identifiers will be returned.

Encoding Sequence Timestamp UUID

Plain

/sequence

/timestamp

/uuid

Base36

/sequence-in-base36

/timestamp-in-base36

/uuid-in-base36

Base62

/sequence-in-base62

/timestamp-in-base62

/uuid-in-base62

Base64

/sequence-in-base64

/timestamp-in-base64

/uuid-in-base64

HashId

/sequence-as-hashid

/timestamp-as-hashid

/uuid-as-hashid

Compatibility

This project is compatible with the following Java versions:

Table 1. Java compatibility
1.X.Y

Java 8

License

To the extent possible under law, the author(s) have dedicated all copyright and related and neighboring rights to this software to the public domain worldwide. This software is distributed without any warranty.

You should have received a copy of the CC0 Public Domain Dedication along with this software. If not, see http://creativecommons.org/publicdomain/zero/1.0/.