What is OpenAI Assistants?
OpenAI's API for building AI assistants with function calling, code interpreter, and file search capabilities.
Searching X (Twitter) with OpenAI Assistants
This integration lets your OpenAI Assistants agent search X (Twitter) in real time via the Scavio API. The agent gets back structured JSON with post snippets, author handles, timestamps, engagement signals — ready for reasoning and decision-making.
Setup
pip install openai requestsCode Example
Here is a complete OpenAI Assistants agent that searches X (Twitter) using Scavio:
from openai import OpenAI
import requests
import json
client = OpenAI()
def scavio_search(query: str) -> str:
response = requests.post(
"https://api.scavio.dev/api/v1/search",
headers={"x-api-key": "your_scavio_api_key", "Content-Type": "application/json"},
json={"query": query},
)
return json.dumps(response.json())
response = client.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": "site:x.com AI agents 2026"}],
tools=[{
"type": "function",
"function": {
"name": "scavio_search",
"description": "Search X (Twitter) for real-time results",
"parameters": {
"type": "object",
"properties": {"query": {"type": "string"}},
"required": ["query"],
},
},
}],
)
# Handle tool calls
for tool_call in response.choices[0].message.tool_calls or []:
result = scavio_search(json.loads(tool_call.function.arguments)["query"])
print(result[:500])Full Working Example
A production-ready example with error handling:
from openai import OpenAI
import requests
import json
client = OpenAI()
def scavio_search(query: str) -> str:
response = requests.post(
"https://api.scavio.dev/api/v1/search",
headers={"x-api-key": "your_scavio_api_key", "Content-Type": "application/json"},
json={"query": query},
)
return json.dumps(response.json())
tools = [{
"type": "function",
"function": {
"name": "scavio_search",
"description": "Search X (Twitter) for real-time results",
"parameters": {
"type": "object",
"properties": {"query": {"type": "string"}},
"required": ["query"],
},
},
}]
messages = [{"role": "user", "content": "site:x.com AI agents 2026"}]
response = client.chat.completions.create(model="gpt-4o", messages=messages, tools=tools)
if response.choices[0].message.tool_calls:
messages.append(response.choices[0].message)
for tc in response.choices[0].message.tool_calls:
result = scavio_search(json.loads(tc.function.arguments)["query"])
messages.append({"role": "tool", "tool_call_id": tc.id, "content": result})
final = client.chat.completions.create(model="gpt-4o", messages=messages)
print(final.choices[0].message.content)Pricing
Scavio offers a free tier with 500 credits/month (1 credit per search). No credit card required. This is enough to build and test your OpenAI Assistants integration. Paid plans start at $30/month for higher volumes.