Get Started | Intro
Truestamp is designed to provide a simple, easy to use, and reliable solution for enforcing the integrity of your most valuable data. On this page we'll dive right in and get you up and running.
Not a developer or comfortable using command line tools?
That's OK! You can use still use Truestamp to submit document hashes, and later verify those commitments, using your favorite browser. We'll show you how later. For now, jump ahead to the Learn section to read more about the high-level concepts underpinning Truestamp.
Using the command line, you can easily use Truestamp to create a new timestamp, or to verify the integrity of an existing timestamp. Let's quickly take a look at how easy it is to submit a hash that represents some data to the Truestamp API.
Here's a quick example of how to submit a hash to the Truestamp API using the Truestamp CLI, HTTPie, or curl.
- CLI
- HTTPie
- curl
# Dependencies
#
# - truestamp : The Truestamp command-line client.
# https://github.com/truestamp/truestamp-cli
#
# - openssl : the OpenSSL Project's cryptographic library.
# Installed by default on most operating systems.
# https://www.openssl.org
#
# - jq : a command-line JSON processor.
# https://stedolan.github.io/jq
$ MY_HASH="$(echo -n 'Truestamp rocks!' | openssl sha256)"
$ MY_HASH_TYPE="sha2-256"
$ DESCRIPTION="Describing my favorite company."
$ truestamp documents new -H $MY_HASH -t $MY_HASH_TYPE -d $DESCRIPTION | jq
#!/usr/bin/env bash
# Dependencies
#
# - HTTPie : a command-line HTTP client for humans.
# https://httpie.io/cli
#
# - openssl : the OpenSSL Project's cryptographic library.
# Installed by default on most operating systems.
# https://www.openssl.org
ACCESS_TOKEN="<<YOUR_API_KEY>>"
MY_HASH="$(echo -n 'Truestamp rocks!' | openssl sha256)"
MY_HASH_TYPE="sha2-256"
DESCRIPTION="Describing my favorite company."
https POST https://api.truestamp.com/v1/documents \
"Authorization: Bearer $ACCESS_TOKEN" \
hash="$MY_HASH" \
hashType="$MY_HASH_TYPE" \
description="$DESCRIPTION"
#!/usr/bin/env bash
# Dependencies
#
# - curl : a command-line HTTP client.
# https://curl.se
#
# - openssl : the OpenSSL Project's cryptographic library.
# Installed by default on most operating systems.
# https://www.openssl.org
#
# - jq : a command-line JSON processor.
# https://stedolan.github.io/jq
ACCESS_TOKEN="<<YOUR_API_KEY>>"
MY_HASH="$(echo -n 'Truestamp rocks!' | openssl sha256)"
MY_HASH_TYPE="sha2-256"
DESCRIPTION="Describing my favorite company."
curl -s --request POST \
--url https://api.truestamp.com/v1/documents \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--data "{ \"hash\": \"${MY_HASH}\", \"hashType\": \"${MY_HASH_TYPE}\", \"description\": \"${DESCRIPTION}\" }" \
| jq
Running the above commands will return a JSON response with the following structure:
{
"id": "T1201FJ9XVP1Y8EH7NBKCWV3Y6QSE_0",
"hashBase64": "IGwob7ouJoaTIqrLy7tpVAlosBemAAOcatkRG/mbouE=",
"hashHex": "206c286fba2e26869322aacbcbbb69540968b017a600039c6ad9111bf99ba2e1",
"hashType": "sha2-256",
"description": "Describing my favorite company.",
"timestamp": "2021-10-18T14:46:02.692+00:00"
}
The highlighted id
field is a unique identifier for the document and the only thing you need to save alongside your original data.
Just save that value somewhere and use it to verify the integrity of the document later.
The other properties reflect what you submitted to the Truestamp API and provide some additional
info as a convenience.