---
title: "Connect Freshworks CRM and OpenAI - APIANT.ai"
description: "When \"New Contact\" fires in Freshworks CRM, your agent runs \"Create message\" in OpenAI, or \"New file\" in OpenAI to \"Add Note to Contact\" in Freshworks CRM."
canonical: "https://apiant.ai/connect/freshworks-crm-to-openai"
---

# Connect Freshworks CRM and OpenAI

When **New Contact** fires in [Freshworks CRM](https://apiant.ai/connections/freshworks-crm), your agent runs **Create message** in [OpenAI](https://apiant.ai/connections/openai), or **New file** in OpenAI to **Add Note to Contact** in Freshworks CRM. Describe the whole flow and it is built, tested on every scenario and kept running.

Freshworks CRM **6** triggers Freshworks CRM **17** actions OpenAI **5** triggers OpenAI **69** actions

What the catalog holds today. Ask for anything missing and your agent reads the API documentation and adds it.

## What do you want Freshworks CRM and OpenAI to do together?

Give your AI client this address.

`https://mcp.apiant.ai`

One connection does both: ask your client to act in an app once, or have it build an automation that keeps running. Any client that takes a remote MCP server. Nothing to install. Create your free account, then sign in once in your browser.

### Set it up in your client

### Claude Code

Run this in the directory you want to work in.

`claude mcp add --transport http -s project apiant-ai https://mcp.apiant.ai`

Start Claude Code there, approve the server, and sign in in the browser page it opens.

[Claude Code guide (opens in a new tab)](https://apiant.ai/docs/mcp/claude-code)

### Claude, web and desktop

Open Customize, then Connectors, then Add custom connector, and paste the address. On Team and Enterprise an owner adds it first.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Cursor

Add the address to your MCP configuration as a server URL. Cursor signs you in in your browser.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Zed

Open Settings, then AI, then MCP Servers, then Add Server, then Add Remote Server.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Codex and the ChatGPT desktop app

Open Settings, then MCP servers, then Add server, and choose Streamable HTTP. From the terminal, Codex takes the address with its own add command and then signs you in.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Any other MCP client

Paste the address where the client asks for a remote MCP server URL, and name the server apiant-ai where it lets you. APIANT's skills reach the client over the same connection.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

Connecting OpenAI and Freshworks CRM lets records in your pipeline drive model work, and model output land back on the right contact, deal or account. A new deal in Freshworks CRM can be researched with an OpenAI model and written back as a note, and files or videos created in OpenAI can raise tasks for the sales team.

Example flows

## What Freshworks CRM and OpenAI can do together

### From Freshworks CRM to OpenAI

- When **New Contact** in Freshworks CRM then **Create message** in OpenAI
- When **New Deal** in Freshworks CRM then **Create chat completion** in OpenAI

### From OpenAI to Freshworks CRM

- When **New file** in OpenAI then **Add Note to Contact** in Freshworks CRM
- When **New video** in OpenAI then **Create Task** in Freshworks CRM

Starting points drawn from the triggers and actions in the catalog today. Describe the flow you need, at any depth, and your agent builds it and tests every scenario before it ships.

Everything your agent can do with Freshworks CRM and OpenAI

## Triggers and actions 11 triggers · 86 actions

- Trigger

**New Account**

Polling trigger: fires when a new sales account is created. Sorted by created_at descending.

- Trigger

**New Contact**

Polling trigger: fires when a new contact is created. Sorted by created_at descending.

- Trigger

**New Deal**

Polling trigger: fires when a new deal is created. Sorted by created_at descending.

- Trigger

**New or Updated Account**

Polling trigger: fires when a sales account is created or updated. Sorted by updated_at descending.

- Trigger

**New or Updated Contact**

Polling trigger: fires when a contact is created or updated. Sorted by updated_at descending.

- Trigger

**New or Updated Deal**

Polling trigger: fires when a deal is created or updated. Sorted by updated_at descending.

- Action

**Add Note to Contact**

Adds a note to a contact (targetable_type=Contact) in Freshworks CRM.

- Action

**Create Account**

Creates a new sales account in Freshworks CRM.

- Action

**Create Appointment**

Creates an appointment in Freshworks CRM. from_date/end_date are ISO8601.

- Action

**Create Contact**

Creates a new contact in Freshworks CRM.

- Action

**Create Deal**

Creates a new deal in Freshworks CRM.

- Action

**Create Task**

Creates a task in Freshworks CRM. due_date is epoch milliseconds; targetable_type e.g. Contact/Deal/SalesAccount.

- Action

**Find Account by Name**

Looks up a sales account by name using the lookup endpoint.

- Action

**Find Contact by Email**

Looks up a contact by email address using the lookup endpoint.

- Action

**Find deal by custom field**

Searches for a deal by the selected custom field. If a single match is found, emits the deal's details. If none or multiple match, an error occurs.

- Action

**Find deal by name**

Searches for a deal by name. If a single match is found, emits the deal's details. If none or multiple match, an error occurs.

- Action

**Find deal stage by name**

Searches for a deal stage by name. If a single match is found, emits the stage's details. If none or multiple match, an error occurs.

- Action

**Find pipeline by name**

Searches for a pipeline by name. If a single match is found, emits the pipeline's details. If none or multiple match, an error occurs.

- Action

**Get Account**

Retrieves a sales account by ID in Freshworks CRM.

- Action

**Get Contact**

Retrieves a contact by ID in Freshworks CRM.

- Action

**Get Deal**

Retrieves a deal by ID in Freshworks CRM.

- Action

**Update Contact**

Updates an existing contact by ID in Freshworks CRM.

- Action

**Update Deal**

Updates an existing deal by ID in Freshworks CRM.

- Trigger

**New batch**

List your organization's batches.

- Trigger

**New file**

Returns a list of files.

- Trigger

**New model**

Lists the currently available models.

- Trigger

**New vector store**

Returns a list of vector stores.

- Trigger

**New video**

List recently generated videos for the current project.

- Action

**Cancel batch**

Cancels an in-progress batch.

- Action

**Cancel run**

Cancels a run that is in_progress.

- Action

**Cancel vector store file batch**

Cancel a vector store file batch.

- Action

**Content moderation**

Classifies text for hate, harassment, self-harm, sexual, and violence categories using the Moderations API.

- Action

**Count input tokens**

Returns input token counts of the request.

- Action

**Create assistant**

Create an assistant with a model and instructions.

- Action

**Create chat completion**

Sends a list of chat messages to a model via the Chat Completions API and returns the assistant's reply.

- Action

**Create completion**

Creates a completion for the provided prompt and parameters.

- Action

**Create embedding**

Generates a vector embedding for input text using an embeddings model (e.g. text-embedding-3-small).

- Action

**Create message**

Create a message.

- Action

**Create run**

Create a run.

- Action

**Creates and executes a batch from an uploaded file of requests**

Creates and executes a batch from an uploaded file of requests

- Action

**Create thread**

Create a thread.

- Action

**Create thread and run**

Create a thread and run it in one request.

- Action

**Create vector store**

Create a vector store.

- Action

**Create vector store file**

Create a vector store file by attaching a File to a vector store.

- Action

**Create vector store file batch**

Create a vector store file batch.

- Action

**Create video edit job**

Create a new video generation job by editing a source or existing generated video.

- Action

**Create video extension**

Create an extension of a completed video.

- Action

**Create video generation job**

Create a new video generation job from a prompt and optional reference assets.

- Action

**Create video remix**

Create a remix of a completed video using a refreshed prompt.

- Action

**Delete assistant**

Delete an assistant.

- Action

**Delete eval run**

Delete an eval run.

- Action

**Delete file**

Delete a file and remove it from all vector stores.

- Action

**Delete message**

Deletes a message.

- Action

**Delete thread**

Delete a thread.

- Action

**Delete vector store**

Delete a vector store.

- Action

**Delete vector store file**

Delete a vector store file (removes from store, file itself not deleted).

- Action

**Delete video**

Permanently delete a completed or failed video and its stored assets.

- Action

**Download video content**

Download the generated video bytes or a derived preview asset.

- Action

**Edit image**

Creates an edited or extended image given one or more source images and a prompt.

- Action

**Generate image**

Generates an image from a text prompt using gpt-image-1 / DALL-E and returns the image URL or base64 data.

- Action

**Generate speech**

Converts text into spoken audio using a TTS model and the selected voice. Returns audio bytes.

- Action

**Get assistant**

Retrieves an assistant.

- Action

**Get batch**

Retrieves a batch.

- Action

**Get file**

Returns information about a specific file.

- Action

**Get file content**

Returns the contents of the specified file.

- Action

**Get message**

Retrieve a message.

- Action

**Get model**

Retrieves a model instance.

- Action

**Get run**

Retrieves a run.

- Action

**Get run step**

Retrieves a run step.

- Action

**Get thread**

Retrieves a thread.

- Action

**Get vector store**

Retrieves a vector store.

- Action

**Get vector store file**

Retrieves a vector store file.

- Action

**Get vector store file batch**

Retrieves a vector store file batch.

- Action

**Get vector store file content**

Retrieve the parsed contents of a vector store file.

- Action

**Get video**

Fetch the latest metadata for a generated video.

- Action

**List conversation items**

List all items for a conversation with the given ID.

- Action

**List files**

Lists files that have been uploaded to your OpenAI account.

- Action

**List messages**

Returns a list of messages for a given thread.

- Action

**List models**

Lists the models currently available to your account.

- Action

**List runs**

Returns a list of runs belonging to a thread.

- Action

**List run steps**

Returns a list of run steps belonging to a run.

- Action

**List vector store file batch files**

Returns a list of vector store files in a batch.

- Action

**List vector store files**

Returns a list of vector store files.

- Action

**OpenAI agent message**

Runs one AI agent turn on OpenAI and returns the model's reply. The turn is billed to the OpenAI account connected on this step, and the agent can call the account's AI tool automations.

- Action

**Retrieve response**

Retrieves a previously created model response by its Response ID.

- Action

**Search vector store**

Search a vector store for relevant chunks based on a query and filter.

- Action

**Send model a message**

Sends a message to an OpenAI model via the Responses API and emits its response. Returns a Response ID usable as previous_response_id for multi-turn conversations.

- Action

**Submit tool outputs to run**

Submit tool outputs when a run requires action.

- Action

**Transcribe audio**

Transcribes audio into the input language.

- Action

**Translate audio**

Translates audio into English.

- Action

**Update assistant**

Modifies an assistant.

- Action

**Update message**

Modifies a message.

- Action

**Update run**

Modifies a run.

- Action

**Update thread**

Modifies a thread.

- Action

**Update vector store**

Modifies a vector store.

- Action

**Update vector store file attributes**

Update attributes on a vector store file.

- Action

**Upload file**

Upload a file that can be used across various endpoints.

## Each app on its own

- [ **Freshworks CRM** Freshworks CRM (Freshsales Suite) — manage contacts, sales accounts, deals, notes, tasks, and appointments.](https://apiant.ai/connections/freshworks-crm)
- [ **OpenAI** OpenAI's platform for text generation (Responses + Chat Completions), image generation (gpt-image-1 /...](https://apiant.ai/connections/openai)

Reviews

## What our customers say

## More from Freshworks CRM

- [ **Freshworks CRM to HubSpot** HubSpot is your all-in-one stop for all of your marketing software needs.](https://apiant.ai/connect/freshworks-crm-to-hubspot)
- [ **Freshworks CRM to Salesforce** Salesforce is a leading enterprise customer relationship management (CRM) platform.](https://apiant.ai/connect/freshworks-crm-to-salesforce)
- [ **Freshworks CRM to Slack** Slack is a messaging platform for teams. Post messages, manage channels, users, reminders, and react to...](https://apiant.ai/connect/freshworks-crm-to-slack)
- [ **Freshworks CRM to Mailchimp** Mailchimp marketing automation and email platform.](https://apiant.ai/connect/freshworks-crm-to-mailchimp)
- [ **Freshworks CRM to Stripe** Stripe is a payment processing platform for online businesses.](https://apiant.ai/connect/freshworks-crm-to-stripe)
- [ **Freshworks CRM to Shopify** Shopify is a commerce platform for online stores and retail point-of-sale.](https://apiant.ai/connect/freshworks-crm-to-shopify)

## More into OpenAI

- [ **Mailchimp to OpenAI** Mailchimp marketing automation and email platform.](https://apiant.ai/connect/mailchimp-to-openai)
- [ **ActiveCampaign to OpenAI** ActiveCampaign is a marketing automation, email marketing, and CRM platform.](https://apiant.ai/connect/activecampaign-to-openai)
- [ **Asana to OpenAI** Asana is a collaborative information manager for workspace.](https://apiant.ai/connect/asana-to-openai)
- [ **JIRA to OpenAI** Atlassian JIRA Cloud — issue tracking and project management.](https://apiant.ai/connect/jira-to-openai)
- [ **Twilio to OpenAI** Cloud communications platform for sending SMS/MMS messages, making and managing voice calls, and looking up...](https://apiant.ai/connect/twilio-to-openai)
- [ **Intercom to OpenAI** Intercom is a customer communications platform for support, engagement, and marketing.](https://apiant.ai/connect/intercom-to-openai)

Questions

## Freshworks CRM and OpenAI, answered

###

### Can the agent look up the related account before it calls OpenAI?

Yes. It can run Find Account by Name or Find Contact by Email in Freshworks CRM first, and continue only when a single match comes back. The lookup result is then available to the OpenAI step and to any later Freshworks CRM action such as Add Note to Contact.

###

### How do I know the setup handles both a matched and an unmatched record?

The agent tests every scenario before it goes live, including a deal whose account is found and one where no match exists. You decide what happens when there is no match, for example skipping the OpenAI call and creating a task in Freshworks CRM instead.

###

### What can start an automation from Freshworks CRM?

Any of Freshworks CRM's 6 triggers in the catalog, including New Contact, New Deal, New or Updated Deal and New Account. Describe the moment in plain language and your agent picks the right one.

###

### What can your agent do in OpenAI when something happens in Freshworks CRM?

Any of OpenAI's 69 actions, including Create chat completion, Search vector store, Create assistant and Create completion. Your agent maps the data both ways and tests every scenario before it ships.

###

### Can it also run from OpenAI to Freshworks CRM?

Yes. When something happens in OpenAI, your agent can act in Freshworks CRM too. This page covers both directions: OpenAI's triggers and Freshworks CRM's actions are listed here as well.

###

### Do I have to build a connector for Freshworks CRM or OpenAI?

No. Both are in the catalog with their triggers and actions. You describe the automation; your agent builds it, tests every scenario and keeps it running.

###

### Can my AI client use Freshworks CRM and OpenAI without building an automation?

Yes. With your AI client connected to APIANT, ask it to do something in either app once and it runs that action on the spot. Ask for an automation and your agent builds it, tests every scenario and keeps it running. One connection covers both.

###

### What happens when something fails?

Your agent works that out for you. It plans the failure paths along with the happy path, then tests every scenario before it ships.

###

### Is there a free plan?

Yes. Every plan includes the agent, including free, and building from your own AI client spends no assistant credits.
