Skyfire

Learn how to use Skyfire with Composio

Overview

SLUG: SKYFIRE

Description

Skyfire enables AI agents to autonomously transact and pay for services, creating a seamless payment infrastructure for AI applications.

Authentication Details

generic_api_key
stringRequired

Connecting to Skyfire

Create an auth config

Use the dashboard to create an auth config for the Skyfire toolkit. This allows you to connect multiple Skyfire accounts to Composio for agents to use.

1

Select App

Navigate to Skyfire.

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Skyfire Auth Config”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using API Key

1from composio import Composio
2
3# Replace these with your actual values
4skyfire_auth_config_id = "ac_YOUR_SKYFIRE_CONFIG_ID" # Auth config ID created above
5user_id = "0000-0000-0000" # UUID from database/app
6
7composio = Composio()
8
9def authenticate_toolkit(user_id: str, auth_config_id: str):
10 # Replace this with a method to retrieve an API key from the user.
11 # Or supply your own.
12 user_api_key = input("[!] Enter API key")
13
14 connection_request = composio.connected_accounts.initiate(
15 user_id=user_id,
16 auth_config_id=auth_config_id,
17 config={"auth_scheme": "API_KEY", "val": {"generic_api_key": user_api_key}}
18 )
19
20 # API Key authentication is immediate - no redirect needed
21 print(f"Successfully connected Skyfire for user {user_id}")
22 print(f"Connection status: {connection_request.status}")
23
24 return connection_request.id
25
26
27connection_id = authenticate_toolkit(user_id, skyfire_auth_config_id)
28
29# You can verify the connection using:
30connected_account = composio.connected_accounts.get(connection_id)
31print(f"Connected account: {connected_account}")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Skyfire toolkit’s playground

Python
1from composio import Composio
2from openai import OpenAI
3import json
4
5openai = OpenAI()
6composio = Composio()
7
8# User ID must be a valid UUID format
9user_id = "0000-0000-0000" # Replace with actual user UUID from your database
10
11tools = composio.tools.get(user_id=user_id, toolkits=["SKYFIRE"])
12
13print("[!] Tools:")
14print(json.dumps(tools))
15
16def invoke_llm(task = "What can you do?"):
17 completion = openai.chat.completions.create(
18 model="gpt-4o",
19 messages=[
20 {
21 "role": "user",
22 "content": task, # Your task here!
23 },
24 ],
25 tools=tools,
26 )
27
28 # Handle Result from tool call
29 result = composio.provider.handle_tool_calls(user_id=user_id, response=completion)
30 print(f"[!] Completion: {completion}")
31 print(f"[!] Tool call result: {result}")
32
33invoke_llm()

Tool List

Tool Name: Charge Skyfire Token

Description

Charge a buyer's token (seller-side operation). use when you've delivered a service and want to collect payment. the buyer created a token with max amount, you charge actual amount used.

Action Parameters

chargeAmount
stringRequired
token
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Skyfire KYA+PAY Token

Description

Issue a skyfire kya+pay token (post /api/v1/tokens with type=kya+pay).

Action Parameters

buyerTag
string
expiresAt
integerRequired
identityPermissions
object
sellerServiceId
stringRequired
tokenAmount
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Skyfire KYA Token

Description

Issue a skyfire kya token (post /api/v1/tokens with type=kya).

Action Parameters

buyerTag
string
expiresAt
integerRequired
identityPermissions
object
sellerServiceId
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Skyfire PAY Token

Description

Issue a skyfire pay token (post /api/v1/tokens with type=pay).

Action Parameters

buyerTag
string
expiresAt
integerRequired
sellerServiceId
stringRequired
tokenAmount
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get All Skyfire Service Tags

Description

Fetch all service tags to discover filtering options. chain with listdirectoryservices using tags parameter to find specific types of services (e.g., 'ai', 'mcp', 'scraping').

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Skyfire Buyer Wallet Balance

Description

Retrieve buyer wallet balance. chain before token creation to prevent declines.

Action Parameters

buyerAgentId
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Skyfire Service Details

Description

Get full details for one service. more detailed than listdirectoryservices - shows terms of service, api specs, and integration urls. use before creating expensive tokens.

Action Parameters

serviceId
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Skyfire Services by Agent

Description

Browse all services from one seller agent. useful when you trust a seller and want to see their full catalog, or when tracking down who provides a specific type of service.

Action Parameters

agentId
stringRequired
limit
integerDefaults to 20

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Skyfire Services by Tags

Description

Filter services by tags to find exactly what you need. more efficient than browsing all services when you know the category. chain: getallservicetags → getservicesbytags → createpaytoken.

Action Parameters

limit
integerDefaults to 20
tags
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Skyfire Token Charges

Description

Audit charges for a specific token. shows exactly what sellers charged against your token and when. use for reconciliation: "i authorized $5 max, what did they actually charge?"

Action Parameters

tokenId
stringRequired

Action Response

data
arrayRequired
error
string
successful
booleanRequired

Tool Name: Introspect Skyfire Token

Description

Check if a token is still valid before calling a seller service. prevents wasted api calls with expired tokens. use after creating tokens if there's a delay before calling the seller, or when debugging payment issues.

Action Parameters

token
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Skyfire Buyer Tokens

Description

Inspect buyer tokens for observability. chain with transactions to audit usage.

Action Parameters

createdAfter
string
createdBefore
string
cursor
string
limit
integerDefaults to 20
status
string

Action Response

data
arrayRequired
error
string
next_cursor
string
successful
booleanRequired

Tool Name: List Skyfire Directory Services

Description

Browse skyfire's service directory to obtain `sellerserviceid` for token creation. chain this with createpaytoken or createkyapaytoken.

Action Parameters

category
string
cursor
string
limit
integerDefaults to 20
minPrice
string
query
string
tags
string

Action Response

data
objectRequired
error
string
successful
booleanRequired