NEW The vision API for AI agents

Your AI agent
is blind.

It can hold a conversation. It can follow a script. But the moment a customer says "let me show you," your agent hits a wall.

VideoSignal fixes exactly that. Your agent sends one link. The customer films it, snaps it, or uploads it, straight from their browser. Seconds later, your agent receives structured answers, not a raw file.

50 free credits. No credit card. Works with any voice, chat, or email agent.
your AI
agent
link
IMG_4021.jpg
bicycle · red
front wheel · spokes bent
POST /your-webhook 200
{
"bike_brand": "Cicle Catala",
"bike_color": "red",
"issue": "bent front wheel",
"damaged_spokes": 4,
"severity": "high",
"blocks_use": true
}
blind agent → capture link → structured sight

Every AI agent has the same missing sense.

Think about the conversations your agent handles every day:

"There's a weird noise coming from the machine."
"The screen shows some kind of error."
"The damage is on the left side, sort of near the bumper."

Your agent does its best with words. It asks follow-up questions. It guesses. It escalates to a human who then asks the customer to send a photo over email anyway.

The information was always visual. Your agent just had no way to receive it.

That's the entire problem VideoSignal solves. Not video hosting. Not file management. One thing: letting your agent see what the customer sees, mid-conversation, and understand it.

// THE MOMENT IT CHANGES

From "can you describe it?"
to "show me."

Here's the same conversation, with eyes. Pick your channel:

Voice agent
Chatbot
Email agent
LIVE CALL · 02:14
The agent keeps talking and sends a text message with the link.
VSMessages · SMS
The front wheel on my bike is damaged, some spokes look bent.
TEXT MESSAGE FROM YOUR AGENTI can look at that. Film the wheel for a few seconds here: vsig.ai/c/7Kd2
records 20 seconds in their browser, no app, no login
AGENT, BACK ON THE CALLThanks. I can see it's a red Cicle Catala with 4 bent spokes on the front wheel. That's not safe to ride, I'm flagging it high severity and starting your claim now.
// the agent received, not a video:
bike_brand: Cicle Catala bike_color: red issue: bent front wheel damaged_spokes: 4 severity: high blocks_use: true

the agent received a text, then structured sight

// HOW IT WORKS

Three steps to a seeing agent

STEP 01
Tell VideoSignal what your agent needs to see
Define your extraction fields once: issue type, error text, severity, model number, whatever your workflow needs. This becomes your agent's way of looking.
STEP 02
Your agent drops a link into the conversation
Mid-call, mid-chat, mid-email thread. The customer opens it in their browser and records a video, takes a photo, or uploads a file they already have. Nothing to install, no account to create.
STEP 03
The answers come back, already structured
The capture is analyzed the moment it completes. Your webhook receives every field you defined, filled in and typed. Your agent continues the conversation like it just looked at the problem itself. Because it did.

Works with the agent you already have

This is not a platform migration. It's one tool call.

Voice agents
Send the link by SMS or WhatsApp during the call, keep talking while the customer films.
Chatbots
Drop the link in the thread, results arrive before the customer finishes typing "sent."
Email agents
Include the link in a reply, process the capture when it lands.
If your agent can call an API and receive a webhook, it can see. Vapi, Retell, LiveKit, a custom stack, it doesn't matter.
// videosignal SDK
const link = await vs.captures.create({
  assistant: "bike_claims", channel: "sms"
})

What your agent can now see

One extraction schema covers everything a customer might show:

Video
The intermittent bug, the noise, the leak in action. Your agent extracts the sequence of events, on-screen text, and error messages.
Photos
The damage, the serial number plate, the product defect. Your agent extracts objects, condition, visible text, severity.
Documents
The receipt, the warranty PDF, the insurance card. Your agent extracts the fields, not the layout.

Same link, same schema, same structured output, whatever the customer sends.

Where blind agents lose, seeing agents win

Support agents
close tickets on first contact instead of escalating "hard to describe" issues.
Insurance agents
collect damage evidence and policy documents in one conversational turn.
Property management
triage maintenance requests by actual urgency, not the tenant's adjectives.
E-commerce agents
verify return claims from a defect photo before approving anything.
Field service agents
identify the equipment and the part number before dispatching a technician.

Different industries, identical root cause: the agent couldn't see. Now it can.

Built for agents, which means built for trust

No hallucinated data
If the answer isn't visible in the capture, the field comes back empty. Your agent never acts on invented information.
No app friction
Everything runs in the customer's browser, mobile or desktop. The capture link is the entire user experience.
No storage liability by default
Files auto-delete after one hour on the free plan, or flow straight into your own storage on paid plans.
No parsing work
You never receive a transcript to interpret. You receive the fields you asked for.

Your agent's first look is free.

Pay as you go
$0/month
50 credits on us, then $1 per 10 credits. No credit card required.
1 credit per capture link generated
1 credit per image/PDF analysed, or per minute of audio or video analysed
Up to 3 assistants, one way of looking per use case
Custom variables: define any extraction fields you need
Captures up to 5 minutes
1h temporary storage, files auto-deleted after one hour
Start Today
MOST POPULAR
Pro
$149/month
2,000 credits. For agents that see all day, every day.
Everything in Pay as you go, plus:
Unlimited assistants, one way of looking per use case
Unlimited minutes, no restrictions on length or file size
Custom branding on the capture page, your logo and colors
Bring your own data, fine-tune extraction with your examples
Shared workspace for up to 3 team members
Standard support, 48-hour weekday response
Start Today
Enterprise
Custom models trained for your use case, on-premise deployment, data labelling, volume discounts, priority support, subaccounts. Optionally add real-time vision, so your agent sees live instead of waiting for a capture.
Contact Sales

Every agent you ship
from now on can see.

The gap between "describe the problem" and "show me the problem" is one API call. Close it today.

Give your agent eyes, free

Questions, answered

My agent is voice-only. How does the customer get the link?
Your agent sends it by SMS, WhatsApp, or email during the call. The customer films while the conversation continues, and the results arrive on your webhook before the call ends.
Does the customer need an app or account?
No. The link opens in any modern browser, mobile or desktop. Record, snap, or upload, then done.
What does my agent actually receive?
A webhook with the media reference and every extraction field you defined, filled in as typed values. No transcript parsing, no vision prompting on your side.
What if the capture doesn't show what we asked for?
The field comes back empty. VideoSignal never guesses, so your agent never acts on fabricated data.
Can I define different fields for different situations?
Yes. Create one assistant per use case (returns, claims, maintenance, bug reports) and pick which one each link uses.
How fast is the analysis?
Extraction runs automatically the moment the capture completes, so results typically arrive while the conversation is still live.
Where do the files go?
Auto-deleted after one hour on the free plan. On Pro and above, delivered straight to your own storage (S3, Google Drive, Dropbox, OneDrive, SharePoint, GCS, or your own endpoint).
Can I have real-time vision?
Yes, as an option on the Enterprise plan. Instead of waiting for a completed capture, your agent sees and analyzes the stream live. Get in touch to set it up.
Can I try it without integrating anything?
Yes. Generate a capture link from the dashboard, send it to yourself, and watch the structured output land.