CKBull Signer API
  • CKBull Signer API
  • Getting started
    • Create an account
    • Register a dApp
    • Regenerate API keys
    • Next steps
  • Guides and Concepts
    • Introduction
    • Sign in request
    • Transaction request
  • API
    • Introduction
    • Authentication
    • Transactions
    • Requests
      • Sign in request
      • Transaction request
    • Polling
Powered by GitBook
On this page
  1. API
  2. Requests

Transaction request

Transaction request API specification

PreviousSign in requestNextPolling

Last updated 1 year ago

Generate

To create a transaction request as a dApp, you will need to provide a sign in token and a transaction.

A partial transaction is a transaction with the TransactionSkeletonType format specified in the library . You need to attach the necessary fields that you want your transaction to have so that it can be processed by the API.

Each transaction request has 7 days to be signed or rejected before it expires.

Remember that to create a transaction request successfully you need to provide a signed sign in token. If the provided token is not signed your request will be rejected.

Get

With the provided transaction token, this method will return all pertinent information from the transaction request, including the sign in request and transaction data

This is a protected call which uses API authentication. See how to implement it in section.

API authentication
🔓
Lumos
get
Path parameters
transactionTokenstringRequired

Transaction request identifier

Header parameters
Content-TypestringRequired

application/json

Default: application/json
Responses
200Success
application/json
get
GET /api/transaction-request/{transactionToken} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
200Success
{
  "id": 1,
  "transactionToken": "text",
  "status": "pending",
  "transaction": {
    "id": 1,
    "transactionHash": "text",
    "transaction": {}
  },
  "createdAt": "2025-05-17T19:17:55.319Z",
  "expiresAt": "2025-05-17T19:17:55.319Z",
  "signInRequest": {
    "id": 1,
    "signInToken": "text",
    "status": "pending",
    "createdAt": "2025-05-17T19:17:55.319Z",
    "expiresAt": "2025-05-17T19:17:55.319Z",
    "sessionExpiresAt": "2025-05-17T19:17:55.319Z"
  }
}
  • Generate
  • POST/api/transaction-request
  • Get
  • GET/api/transaction-request/{transactionToken}
post

Create a new transaction request with a signInToken and a transaction object

Header parameters
Content-TypestringRequired

application/json

Default: application/json
x-timestampstringOptional

The timestamp of the request

x-signaturestringOptional

The signature of the request

x-api-keystringOptional

The API key of the dApp

Body
signInTokenstringRequired

The signIn token that was used to create the transaction request

transactionobjectRequired

The transaction request content

Default: {"cellProvider":null,"cellDeps":[],"headerDeps":[],"inputs":[],"outputs":[],"witnesses":[],"fixedEntries":[],"signingEntries":[],"inputSinces":{}}
Responses
201Success
application/json
403
Forbidden
404
DApp not found
post
POST /api/transaction-request HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 39

{
  "signInToken": "text",
  "transaction": {}
}
{
  "id": 1,
  "transactionToken": "text",
  "status": "pending",
  "transaction": {
    "id": 1,
    "transactionHash": "text",
    "transaction": {}
  },
  "createdAt": "2025-05-17T19:17:55.319Z",
  "expiresAt": "2025-05-17T19:17:55.319Z",
  "signInRequest": {
    "id": 1,
    "signInToken": "text",
    "status": "pending",
    "createdAt": "2025-05-17T19:17:55.319Z",
    "expiresAt": "2025-05-17T19:17:55.319Z",
    "sessionExpiresAt": "2025-05-17T19:17:55.319Z"
  }
}