SureshakeDocs

Sureshake API

API for document verification and blockchain tokenization

List reports

POST
/reports.list

Get a paginated list of reports

X-API-Key<token>

API key for authentication

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://api.sureshake.com/v1/reports.list" \  -H "Content-Type: application/json" \  -d '{}'
{
  "result": {
    "data": {
      "success": true,
      "data": [
        {
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "title": "string",
          "description": "string",
          "status": "draft",
          "verificationScore": 100,
          "createdAt": "2019-08-24T14:15:22Z",
          "updatedAt": "2019-08-24T14:15:22Z"
        }
      ],
      "pagination": {
        "total": 0,
        "limit": 0,
        "offset": 0,
        "hasMore": true
      }
    }
  }
}
{
  "error": {
    "message": "string",
    "code": "string",
    "httpStatus": 0
  }
}
{
  "error": {
    "message": "string",
    "code": "string",
    "httpStatus": 0
  }
}

Get report

POST
/reports.get

Get detailed information about a specific report

X-API-Key<token>

API key for authentication

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

curl -X POST "https://api.sureshake.com/v1/reports.get" \  -H "Content-Type: application/json" \  -d '{}'
{
  "result": {
    "data": {
      "success": true,
      "data": {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "title": "string",
        "description": "string",
        "status": "draft",
        "verificationScore": 100,
        "createdAt": "2019-08-24T14:15:22Z",
        "updatedAt": "2019-08-24T14:15:22Z"
      }
    }
  }
}
{
  "error": {
    "message": "string",
    "code": "string",
    "httpStatus": 0
  }
}

Create API key

POST
/apiKeys.create

Create a new API key

Authorization

BearerAuth
AuthorizationBearer <token>

JWT or API key in Bearer format

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://api.sureshake.com/v1/apiKeys.create" \  -H "Content-Type: application/json" \  -d '{}'
{
  "result": {
    "data": {
      "success": true,
      "data": {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "name": "string",
        "keyPrefix": "string",
        "permissions": [
          "read"
        ],
        "rateLimit": 0,
        "lastUsedAt": "2019-08-24T14:15:22Z",
        "expiresAt": "2019-08-24T14:15:22Z",
        "createdAt": "2019-08-24T14:15:22Z",
        "key": "string"
      }
    }
  }
}

List API keys

POST
/apiKeys.list

Get all API keys for the current user

X-API-Key<token>

API key for authentication

In: header

Response Body

application/json

curl -X POST "https://api.sureshake.com/v1/apiKeys.list"
{
  "result": {
    "data": {
      "success": true,
      "data": [
        {
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "name": "string",
          "keyPrefix": "string",
          "permissions": [
            "read"
          ],
          "rateLimit": 0,
          "lastUsedAt": "2019-08-24T14:15:22Z",
          "expiresAt": "2019-08-24T14:15:22Z",
          "createdAt": "2019-08-24T14:15:22Z"
        }
      ]
    }
  }
}

Register OAuth application

POST
/oauth.registerApplication

Create a new OAuth 2.0 application

Authorization

BearerAuth
AuthorizationBearer <token>

JWT or API key in Bearer format

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://api.sureshake.com/v1/oauth.registerApplication" \  -H "Content-Type: application/json" \  -d '{}'
{
  "result": {
    "data": {
      "success": true,
      "data": {
        "application": {
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "clientId": "string",
          "name": "string",
          "description": "string",
          "website": "http://example.com",
          "redirectUris": [
            "http://example.com"
          ],
          "allowedScopes": [
            "string"
          ],
          "requirePkce": true,
          "createdAt": "2019-08-24T14:15:22Z"
        },
        "clientSecret": "string"
      }
    }
  }
}

List OAuth applications

POST
/oauth.listMyApplications

Get all OAuth applications owned by the current user

Authorization

BearerAuth
AuthorizationBearer <token>

JWT or API key in Bearer format

In: header

Response Body

application/json

curl -X POST "https://api.sureshake.com/v1/oauth.listMyApplications"
{
  "result": {
    "data": {
      "success": true,
      "data": [
        {
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "clientId": "string",
          "name": "string",
          "description": "string",
          "website": "http://example.com",
          "redirectUris": [
            "http://example.com"
          ],
          "allowedScopes": [
            "string"
          ],
          "requirePkce": true,
          "createdAt": "2019-08-24T14:15:22Z"
        }
      ]
    }
  }
}

OAuth authorization endpoint

GET
/oauth/authorize

Initiate OAuth 2.0 authorization flow

X-API-Key<token>

API key for authentication

In: header

Query Parameters

client_id*string

OAuth client ID

redirect_uri*string

Redirect URI

Formaturi
response_type*string

Response type (must be "code")

Value in"code"
scope*string

Space-separated OAuth scopes

state*string

CSRF protection state

code_challenge?string

PKCE code challenge

code_challenge_method?string

PKCE challenge method

Value in"S256" | "plain"

Response Body

curl -X GET "https://api.sureshake.com/v1/oauth/authorize?client_id=string&redirect_uri=http%3A%2F%2Fexample.com&response_type=code&scope=string&state=string"
Empty
Empty

OAuth token endpoint

POST
/oauth/token

Exchange authorization code for access token or refresh tokens

X-API-Key<token>

API key for authentication

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

curl -X POST "https://api.sureshake.com/v1/oauth/token" \  -H "Content-Type: application/json" \  -d '{    "grant_type": "authorization_code",    "code": "string",    "client_id": "string",    "client_secret": "string",    "redirect_uri": "http://example.com"  }'
{
  "access_token": "string",
  "refresh_token": "string",
  "token_type": "Bearer",
  "expires_in": 0,
  "scope": "string"
}
{
  "error": "invalid_request",
  "error_description": "string"
}