Skip to main content
POST
/
stocks
/
api
/
manage
/
{tokenAddress}
/
controller
/
add
curl -X POST "https://api.trusset.org/stocks/api/manage/0x1234.../controller/add" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: trusset_abc123xy_secret..." \
  -d '{
    "account": "0x9876543210fedcba9876543210fedcba98765432",
    "useRelayer": true
  }'
{
  "success": true,
  "data": {
    "transactionHash": "0xdef456...",
    "tokenAddress": "0x1234567890abcdef1234567890abcdef12345678",
    "account": "0x9876543210fedcba9876543210fedcba98765432",
    "role": "CONTROLLER",
    "action": "granted"
  },
  "metadata": {
    "requestId": "550e8400-e29b-41d4-a716-446655440000",
    "timestamp": "2025-06-15T12:00:00.000Z",
    "instanceId": "inst_abc123"
  }
}
Grants the CONTROLLER role to the specified account on-chain. Controllers can execute force transfers, freeze tokens, and pause the contract.

Path Parameters

tokenAddress
string
required
Address of the stock token contract.

Request Body

account
string
required
Ethereum address to grant the controller role.
useRelayer
boolean
default:"false"
When true, the transaction is signed and submitted by the Trusset relayer.

Response Fields

success
boolean
Request status.
data
object
Transaction result.
curl -X POST "https://api.trusset.org/stocks/api/manage/0x1234.../controller/add" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: trusset_abc123xy_secret..." \
  -d '{
    "account": "0x9876543210fedcba9876543210fedcba98765432",
    "useRelayer": true
  }'
{
  "success": true,
  "data": {
    "transactionHash": "0xdef456...",
    "tokenAddress": "0x1234567890abcdef1234567890abcdef12345678",
    "account": "0x9876543210fedcba9876543210fedcba98765432",
    "role": "CONTROLLER",
    "action": "granted"
  },
  "metadata": {
    "requestId": "550e8400-e29b-41d4-a716-446655440000",
    "timestamp": "2025-06-15T12:00:00.000Z",
    "instanceId": "inst_abc123"
  }
}