Backend API

General Endpoints

Index

GET /

Basic endpoint to test if your BitClout node is running.

Parameters

None

Response

Your BitClout node is running!

Health Check

GET /api/v0/health-check

Check if your BitClout node is synced

Parameters:

None

Response:

If node is synced and received all transactions.

Get Exchange Rate

Get BitClout exchange rate, total amount of nanos sold, and Bitcoin exchange rate.

Parameters:

None

Response:

Get App State

Get state of BitClout App, such as cost of profile creation and diamond level map. Example use in the frontend and endpoint implementation in backend.

Parameters

None; however, you need to send an empty JSON { }. Otherwise, you will get 400 - Bad Request. More info on the request here.

Name

Type

Description

PublicKeyBase58Check

string

(optional) check public key

Response

Transaction Endpoints

Get Txn

Check if Txn is currently in mempool. Example use in the frontend and endpoint implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

TxnHashHex

string

Transaction hash

Response

Submit Transaction

Submit transaction to BitClout blockchain. Example use in frontend and endpoint implementation in backend.

Parameters

Read more on transaction format here. More info on the request here.

Name

Type

Description

TransactionHex

string

Transaction hash

Response

Update Profile

Update profile fields and receive corresponding Txn. Transaction needs to be signed and submitted through api/v0/submit-transaction before changes come into effect. Example use in frontend and endpoint implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

UpdaterPublicKeyBase58Check

string

Public key of updater

ProfilePublicKeyBase58Check

string

(optional) Public key of the profile if different from updater

NewUsername

string

Username

NewDescription

string

Description

NewProfilePic

string

Profile picture

NewCreatorBasisPoints

uint64

Creator Reward

NewStakeMultipleBasisPoints

uint64

Staking Reward

IsHidden

bool

MinFeeRateNanosPerKB

uint64

Rate per KB

Response

Burn Bitcoin

TODO

Send BitClout

Prepare transaction for sending BitClout. Transaction needs to be signed and submitted through api/v0/submit-transaction before changes come into effect. Example use in frontend and endpoint implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

SenderPublicKeyBase58Check

string

Public key of the sender

RecipientPublicKeyOrUsername

string

Public key of the recipient

AmountNanos

int64

transaction amount in nanos

MinFeeRateNanosPerKB

uint64

Rate per KB

Response

Submit Post

Prepare transaction for submiting a post. Transaction needs to be signed and submitted through api/v0/submit-transaction before changes come into effect. Example use in frontend and endpoint implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

UpdaterPublicKeyBase58Check

string

Public key of the updater

PostHashHexToModify

string

(optional) Modified post's hash

ParentStakeID

string

(optional)

Title

string

(optional)

BodyObj

json

{Body: STRING, ImageURLs: []}

RecloutedPostHashHex

string

(optional) hash of post to modify

PostExtraData

json

(optional) extra data, values must be strings

IsHidden

bool

MinFeeRateNanosPerKB

uint64

Rate per KB

Response

Create Follow Txn Stateless

Prepare a follow/unfollow transaction. Transaction needs to be signed and submitted through api/v0/submit-transaction before changes come into effect. Example use in frontend and endpoint implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

FollowerPublicKeyBase58Check

string

Public key of creator followed

FollowedPublicKeyBase58Check

string

Public key of follower

IsUnfollow

bool

false if follow / true if unfollow

MinFeeRateNanosPerKB

uint64

Rate per KB

Response

Creator Like Stateless

Prepare a like/unlike transaction. Transaction needs to be signed and submitted through api/v0/submit-transaction before changes come into effect. Example use in frontend and implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

ReaderPublicKeyBase58Check

string

Public key of reader

LikedPostHashHex

string

Hash of liked post

IsUnlike

bool

false if like / true if unlike

MinFeeRateNanosPerKB

uint64

Rate per KB

Response

Buy or Sell Creator Coin

Prepare transaction for buying/selling creator coin. Transaction needs to be signed and submitted through api/v0/submit-transaction before changes come into effect. Example use in frontend and implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

UpdaterPublicKeyBase58Check

string

Public key of updater

CreatorPublicKeyBase58Check

string

Public key of creator

OperationType

string

"buy" or "sell"

BitCloutToSellNanos

uint64

Amount of BitClout to spend

CreatorCoinToSellNanos

uint64

Amount of Creator Coin to spend

BitCloutToAddNanos

uint64

0

MinBitCloutExpectedNanos

uint64

0

MinCreatorCoinExpectedNanos

uint64

0

MinFeeRateNanosPerKB

uint64

Rate per KB

Response

Transfer Creator Coin

Prepare transaction for transfering creator coin. Transaction needs to be signed and submitted through api/v0/submit-transaction before changes come into effect. Example use in frontend and implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

SenderPublicKeyBase58Check

string

Public key of sender

CreatorPublicKeyBase58Check

string

Public key of creator

ReceiverUsernameOrPublicKeyBase58Check

string

username or public key of receiver

CreatorCoinToTransferNanos

uint64

Amount of Creator Coin to transfer

MinFeeRateNanosPerKB

uint64

Rate per KB

Response

Send Diamonds

Prepare transaction for sending diamonds 💎. Transaction needs to be signed and submitted through api/v0/submit-transaction before changes come into effect. Example use in frontend and implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

SenderPublicKeyBase58Check

string

Public key of sender

ReceiverPublicKeyBase58Check

string

Public key of receiver

DiamondPostHashHex

string

Hash of post receiving diamond

DiamondLevel

int64

Diamond level

MinFeeRateNanosPerKB

uint64

Rate per KB

Response

User Endpoints

Get Users Stateless

Get information about users. Request contains a list of public keys of users to fetch. Example use in frontend and implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

PublicKeysBase58Check

[]string

list of public keys

SkipHodlings

bool

HODL

Response

Delete Identities

Temporary route to wipe seedinfo cookies. This endpoint relies on identity api. Example use in frontend and implementation in backend.

Parameters

None

Response

None

Get Profiles

Get user profile information. Default number of returned profiles is 20. Example use in frontend and implementation in backend.

Parameters

OrderBy possible values: {"influencer_stake", "influencer_post_stake", "newest_last_post", "newest_last_comment", "influencer_coin_price"}. More info on the request here.

Name

Type

Description

PublicKeyBase58Check

string

(optional) Check public key

Username

string

(optional) reader username

UsernamePrefix

string

(optional) username prefix

Description

string

(optional) description

OrderBy

string

Order ENUM

NumToFetch

uint32

(optional) number of profiles to fetch

ReaderPublicKeyBase58Check

string

Reader public key

ModerationType

string

(optional) empty string or "leaderboard"

FetchUsersThatHODL

bool

If single profile is requested, return a list of HODLers

AddGlobalFeedBool

bool

If set to true posts in response will contain boolean if they are in global feed

Response

Get Single Profile

Get information about single profile. Example use in frontend and implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

PublicKeyBase58Check

string

(optional) Check public key

Username

string

profile username

Response

Get Hodlers For Public Key

Example use in frontend and implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

PublicKeyBase58Check

string

(optional) check public key

Username

string

profile username

LastPublicKeyBase58Check

string

(optional) last public key check

NumToFetch

uint64

number of records to fetch

FetchHodlings

bool

if true fetch balance for hodlings

FetchAll

bool

if true fetch all

Response

Get Diamonds for Public Key

Example use in frontend and implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

PublicKeyBase58Check

string

Check public key

FetchYouDiamonded

bool

If true fetch diamonds this user gave out

Response

Get Follows Stateless

Get followers. Example use in frontend and endpoint implementation in backend.

Parameters

Either publickey or username can be set. More info on the request here.

Name

Type

Description

PublicKeyBase58Check

string

Check public key

Username

string

username

GetEntriesFollowingUsername

bool

Get entries following username

LastPublicKeyBase58Check

string

public key of last follower/followee

NumToFetch

uint64

number of records to fetch

Response

Get User Global Metadata

Get user metadata such as email and phone. This endpoint relies on identity api. Example use in frontend and endpoint implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

UserPublicKeyBase58Check

string

user public key

JWT

string

JSON web token authenticating user

Response

Update User Global Meta

TODO

Get Notifications

Get user notifications. This endpoint relies on identity api. Example use in frontend and endpoint implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

PublicKeyBase58Check

string

user public key

FetchStartIndex

int64

Index of notification at which to start paginated lookup. Can set to -1

NumToFetch

int64

Number of notifications to fetch

Response

Block Public Key

Block user. This endpoint relies on identity api. Example use in frontend and endpoint implementation in backend.

Parameters

More info on the request here.

Name

Type

Description

PublicKeyBase58Check

string

user public key

BlockPublicKeyBase58Check

string

blocked user public key

Unblock

bool

false if block, true if unblock

JWT

string

JSON web token authenticating user

Response

Post Endpoints

Get Posts Stateless

TODO

Get Single Post

TODO

Get Posts For Public Key

TODO

Get Diamonded Posts

TODO

Media Endpoints

Upload Image

TODO

Get Full TikTok URL

TODO

Message Endpoints

Send Message Stateless

TODO

Get Messages Stateless

Mark Contact Messages Read

TODO

Mark All Messages Read

TODO

Verify Endpoints

Send Phone Number Verification Text

TODO

Submit Phone Number Verification Text

TODO

Wyre Endpoints

Get Wyre Wallet Order Quotation

Get Wyre Wallet Order Reservation

TODO

Wyre Wallet Order Subscription

TODO

Admin Get Wyre Orders For Public Key

TODO

Miner Endpoints

Get Block Template

TODO

Submit Block

TODO

Admin Node Endpoints

Node Control

TODO

Reprocess Bitcoin Block

TODO

Get Mempool Stats

TODO

Evict Unmined Bitcoin Txns

TODO

Admin Transaction Endpoints

Get Global Params

TODO

Update Global Params

TODO

Swap Identity

TODO

Admin User Endpoints

Update User Global Metadata

TODO

Get All User Global Metadata

TODO

Get User Global Metadata

TODO

Grant Verification Badge

TODO

Remove Verification Badge

TODO

Get Verified Users

TODO

Get Username Verification Audit Logs

TODO

Admin Feed Endpoints

Update Global Feed

TODO

Pin Post

TODO

Remove Nil Posts

TODO

Last updated

Was this helpful?