GET /v1/actions
List all available actions, optionally filtered by tags
GET
/v1/actions
List all available actions, optionally filtered by tags
Query Parameters
tags
string[]
optional
query
Filter by tags (comma-separated or multiple params). Actions must have ALL specified tags (AND logic).
Responses
200
OK
application/jsoncode
integer
data
object[]
Array of:
category
string
Action category (e.g., "Blockchain", "Social")
connector
object
nil means no connector required
accountType
string
Required wallet account type (e.g., "polymarket_deposit_wallet")
type
string
Required connector type (e.g., "slack")
walletSupport
string[]
Wallet account types this action supports (e.g., ["eoa"]). Nil = all types allowed.
Array of:
connectorOutput
object
Auto-save result as connector
fieldMapping
object
resultField → connectorDataField
nameTemplate
string
Display name with {{field}} interpolation (uses result field names, i.e. left side of FieldMapping)
type
string
Connector type (e.g., "railgun")
createdBy
string
description
string
documentationUrl
string
exampleInput
unknown
Example input for documentation
exampleOutput
unknown
fundsMovement
integer[]
Opaque pass-through from b3os-actions
Array of:
gasChainField
string
Payload field whose value is the gas-paying chain ID (dynamic; consulted when GasChainID is 0). E.g. "srcChainId" for cross-chain actions where the user signs and pays gas on the source chain.
gasChainId
integer
Chain ID where gas is needed (static)
logoUrl
string
name
string
payloadSchema
object
Separate schema for wait-for-trigger config
platform
string
Platform grouping for integrations page (e.g., "solana")
requiredTokens
integer[]
Opaque pass-through from b3os-actions
Array of:
requiresGas
boolean
Whether action requires gas (blockchain transaction fees)
resultSchema
object
Separate schema for wait-for-trigger config
tags
string[]
Tags for filtering
Array of:
test
object
nil means testable (default)
disabledReason
string
enabled
boolean
type
string
weight
integer
Search ranking weight (nil = default 50)
message
string
requestId
string
curl -X GET 'https://api.example.com/v1/actions' \ -H 'Authorization: Bearer YOUR_API_TOKEN'
const response = await fetch('https://api.example.com/v1/actions', { method: 'GET', headers: { "Authorization": "Bearer YOUR_API_TOKEN" }});const data = await response.json();console.log(data);
import requestsheaders = { 'Authorization': 'Bearer YOUR_API_TOKEN'}response = requests.get('https://api.example.com/v1/actions', headers=headers)print(response.json())
package mainimport ( "fmt" "io" "net/http")func main() { req, _ := http.NewRequest("GET", "https://api.example.com/v1/actions", nil) req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN") resp, _ := http.DefaultClient.Do(req) defer resp.Body.Close() result, _ := io.ReadAll(resp.Body) fmt.Println(string(result))}
200
Response
{ "code": 0, "data": [ { "category": "<string>", "connector": { "accountType": "<string>", "type": "<string>", "walletSupport": [ "<string>" ] }, "connectorOutput": { "fieldMapping": "<object>", "nameTemplate": "<string>", "type": "<string>" }, "createdBy": "<string>", "description": "<string>", "documentationUrl": "<string>", "exampleInput": "<unknown>", "exampleOutput": "<unknown>", "fundsMovement": [ 123 ], "gasChainField": "<string>", "gasChainId": 123, "logoUrl": "<string>", "name": "<string>", "payloadSchema": "<object>", "platform": "<string>", "requiredTokens": [ 123 ], "requiresGas": true, "resultSchema": "<object>", "tags": [ "<string>" ], "test": { "disabledReason": "<string>", "enabled": true }, "type": "<string>", "weight": 123 } ], "message": "successfully", "requestId": "abc-123"}
API Playground
Try this endpoint
GET
/v1/actions
