# Timestamp - Getting Started
You can use the OriginStamp Timestamping API with a HTTP client implementation of your choice.
For starters, cURL
or Postman
are great tools to test the API endpoints.
All endpoints are RESTful
and expect an UTF-8
encoding and
JSON
payload type (Header: Content-Type: application/json
).
The API base url is:
https://api.originstamp.com/
When addressing the API endpoints directly with a REST call, ensure to pass the API key within the Authorization
header x-api-key
:
The Timestamp interface at /v1/timestamp
expects a fairly simple JSON payload with a single field sha256
that contains the SHA-256 hash you want to timestamp.
{
"sha256": ["<hash_sha256>"]
}
As an example with cURL
, you can timestamp a SHA-256 hash like this:
curl -X POST "http://api.originstamp.com/v1/timestamp"\
-H "Content-Type: application/json"
-H "x-api-key: YOUR_API_KEY"\
-d '{"sha256": ["2c5d36be542f8f0e7345d77753a5d7ea61a443ba6a9a86bb060332ad56dba38e"]}'
If the hash is successfully timestamped, the API will respond with a JSON object referencing the SHA-256 hash, the date of creation, and a list of trees (internal reference for blockchain anchors) where the hash will be timestamped.
If the hash is new to the system the API response looks as follows (HTTP status code 200
):
{
"sha256": [
"2c5d36be542f8f0e7345d77753a5d7ea61a443ba6a9a86bb060332ad56dba38e"
],
"dateCreated": 1751637581512,
"trees": [
{
"treeId": "4dc4c401-5a55-48ee-802c-3f1659b10aa5",
"currencyId": 0,
"currency": "BTC"
},
{
"treeId": "c7a8d8c9-7b29-49ee-bd33-9c8b5cb4445a",
"currencyId": 1,
"currency": "ETH"
}
]
}
Or if the hash was already timestamped before (HTTP status code 202
):
{
"sha256": [],
"dateCreated": 1751637556338,
"trees": [
{
"treeId": "4dc4c401-5a55-48ee-802c-3f1659b10aa5",
"currencyId": 0,
"currency": "BTC"
},
{
"treeId": "c7a8d8c9-7b29-49ee-bd33-9c8b5cb4445a",
"currencyId": 1,
"currency": "ETH"
}
]
"existing": [
"2c5d36be542f8f0e7345d77753a5d7ea61a443ba6a9a86bb060332ad56dba38e"
]
}