# Signal data as  OpenAI function calls

Build AI agents that can search signals, enrich companies, and monitor accounts using Autobound's REST API with OpenAI function calling.

---

openai_function_calling.py

```python
import openai

# Define Autobound signal search as a tool
tools = [{\
    "type": "function",\
    "function": {\
        "name": "search_signals",\
        "description": "Search Autobound for B2B signals",\
        "parameters": {\
            "type": "object",\
            "properties": {\
                "query": {"type": "string", "description": "Natural language query"},\
                "signal_types": {"type": "array", "items": {"type": "string"}},\
                "limit": {"type": "integer", "default": 10}\
            },\
            "required": ["query"]\
        }\
    }\
}]

# Let GPT decide when to call Autobound
response = openai.chat.completions.create(
    model="gpt-4o",
    messages=[{"role": "user", "content": "Find companies investing in AI"}],
    tools=tools
)
```

## Use Cases

### What you can build

Combine OpenAI's reasoning with Autobound's signal data to create intelligent B2B workflows.

### AI SDR Agents

Build autonomous SDRs that research prospects using real signal data before every outreach.

### Research Assistants

Create assistants that answer questions about any company's recent activity, hiring trends, and financial signals.

### Automated Enrichment

Pipe signal data into your CRM via AI-powered workflows that enrich records on autopilot.

### Custom GPTs

Build ChatGPT plugins powered by real-time B2B signals. Give any GPT access to company intelligence.

## Available Functions

### Define these as OpenAI tools

Each Autobound API endpoint maps cleanly to an OpenAI function definition. Here are the most popular.

**POST**  
`search_signals()`  
`/v1/signals/search`  
Semantic search across 700+ signal types. Accepts natural language queries, structured filters, and pagination.

**POST**  
`enrich_company()`  
`/v1/companies/enrich`  
Pass a domain or company name. Returns financial filings, hiring trends, news, tech stack, and more.

**POST**  
`enrich_contact()`  
`/v1/contacts/enrich`  
Returns contact-level signals (job changes, posts, milestones) plus their employer's company signals.

**GET**  
`get_company_timeline()`  
`/v1/companies/{domain}/timeline`  
Chronological feed of all recent signals for a company. Filter by date range and signal type.

**GET**  
`get_trending_signals()`  
`/v1/signals/trending`  
Discover the most active signals across your target market. Great for prospecting workflows.

## How it works

### Three steps to AI-powered signals

No SDK required. Just your OpenAI client and an Autobound API key.

01  
### Talk to our team  
Contact sales to get your API key and discuss signal coverage for your use case.

02  
### Define your functions  
Map Autobound endpoints to OpenAI tool definitions. Search, enrich, timeline: each one becomes a callable function.

03  
### Call OpenAI  
Pass your tools to chat.completions.create(). GPT decides when to call Autobound, and you execute the API call.

## Start building with signal data

Talk to our team, define your functions, and let OpenAI call Autobound when your agents need real-time B2B intelligence.
