🙇Authentication

User signature is required to fetch data

Arrange Data

First, you need to arrange data which will be used to generate message

{
    "owner": "string" // can be address or DID
}

Generate a message

Generate Message to read data

post
Authorizations
Body
ownerstringOptional
Responses
200Success
application/json
post
POST /v1/authentication/generate-message HTTP/1.1
Host: sandbox-api.fetcch.xyz
secret-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 16

{
  "owner": "text"
}
{
  "status": "text",
  "data": {
    "message": "text",
    "timestamp": 1
  },
  "timestamp": "2025-06-25T14:31:00.004Z"
}

Generate Access Tokens

Sign the above message using the appropriate address and arrange data in below format

{
    "owner": "string",
    "signature": "string",
    "timestamp": "number"
}

signature is the obtained by signing the above generated message and timestamp is also given in the response of this

timestamp can't be older than 5 minutes

Authenticate the signature

post
Authorizations
Body
ownerstringOptional
signaturestringOptional
timestampintegerOptional
Responses
200Success
application/json
post
POST /v1/authentication HTTP/1.1
Host: sandbox-api.fetcch.xyz
secret-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 49

{
  "owner": "text",
  "signature": "text",
  "timestamp": 1
}
{
  "status": "text",
  "data": {
    "accessToken": "text",
    "expiry": "2025-06-25T14:31:00.004Z"
  },
  "timestamp": "2025-06-25T14:31:00.004Z"
}

Authenticate

To authenticate, just include the received accessToken in headers as authorization in format bearer ${accessToken}

Last updated