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/json
code 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"}