# What are Custom Actions?

Give your AVCodex agent the ability to act on the systems your AV team already runs.

---

> **Note:** Custom Actions require a Builder plan or higher.
> [Upgrade to Builder](https://app.avcodex.com/plans)

Custom Actions turn your AVCodex agent from a chat surface into an operator. When a tech asks the agent to open a ticket, push a Q-SYS deployment status to Slack, or pull a room's last commissioning report, Custom Actions are what make it happen.

## How it works

1. **A user makes a request.** "Open a high-priority ticket for the Boardroom 4 DSP that just dropped offline."
2. **The agent recognizes the intent.** It knows this maps to your ticketing API.
3. **The Custom Action fires.** A POST goes out to your help desk with the right payload.
4. **The agent reports back.** "Ticket #4421 is open. Field tech assigned, ETA 90 minutes."

## Real examples

### Notify the install team in Slack

User: "Tell the team the Crestron load for the 14th-floor boardroom passed commissioning."

```bash
POST https://hooks.slack.com/services/YOUR_WEBHOOK
{
  "text": "Boardroom 14F Crestron load passed commissioning. Ready for client walkthrough."
}
```

### Look up a project record

User: "What's the status of the install at 1200 Market, Boardroom 4?"

```bash
GET https://api.your-pm-tool.com/projects?site=1200-market&room=boardroom-4
```

### Open a support ticket from the field

User: "Open a high-priority ticket. Q-SYS Core in the auditorium is offline and the all-hands is at 2pm."

```bash
POST https://api.helpdesk.com/tickets
{
  "title": "Q-SYS Core offline, auditorium",
  "priority": "high",
  "description": "Core unreachable on management VLAN. All-hands scheduled 14:00 local."
}
```

## What you configure

### 1. The endpoint

Tell the agent which URL to hit:

- `https://api.your-service.com/endpoint`
- GET, POST, PUT, PATCH, DELETE are all supported.

### 2. Authentication

Store credentials safely:

- API keys, encrypted at rest.
- Bearer tokens in headers.
- Basic auth.

### 3. Parameters

Decide what gets sent:

- **Fixed values**: the same on every call (your API key, a tenant ID).
- **AI-generated**: the agent fills these in from the conversation (room name, error code, ticket priority).
- **From other actions**: chain results from a previous call (like a project ID lookup that feeds the next request).

### 4. When to fire

Write a description so the agent knows when to call this action:

- "Use this when a tech asks to open a ticket about a room or device."
- "Call this to look up a Crestron control system processor by hostname."

## Common use cases

**Field service and support**

- Look up a room's AS-built documentation.
- Open or update tickets without opening the help desk app.
- Fire a truck roll request to dispatch.

**Project management**

- Add a new RFP response to your CRM.
- Update a project stage from "commissioning" to "client acceptance."
- Push commissioning checklist results to your PM tool.

**Operations and monitoring**

- Check device health from a network monitoring tool.
- Pull the latest firmware version a manufacturer (Crestron, QSC, Biamp) has published.
- Trigger a backup of a Q-SYS design file.

**Knowledge and documentation**

- Query an internal SOP database.
- Log a field-tech observation against a site record.
- Pull spec-sheet answers from a Biamp, Extron, or Crestron PDF library.

## Why Custom Actions matter

**Without Custom Actions:** the agent can describe the work. The tech still has to do it.

**With Custom Actions:** the agent does the work. Instead of "you'll need to open a ticket for that," it says "ticket open, dispatch notified, ETA on the way."

That difference is what cuts truck rolls and keeps a field tech in the room solving the problem instead of bouncing between apps.

## Requirements

- Builder plan or higher.
- An API endpoint you want to connect.
- API credentials (if the endpoint needs them).
- About five minutes to set it up.

## Quick start

1. Go to [app.avcodex.com](https://app.avcodex.com) and pick your agent.
2. Navigate to **Build** then **Capabilities**.
3. Click **Add Custom Action**.

4. Paste a cURL command or configure manually.
5. Test it and save.

Your AVCodex agent can now drive that service.

Continue to [Getting Started](/docs/custom-actions/getting-started).

*AVCodex · Your AV expertise. Amplified by AI.*
