OpenAI
Call OpenAI models from an automation - generate text, extract schema-shaped data, generate images, and screen content - on your own API key.
Connect an OpenAI project with an API key to use its models as automation tools: generate text from a prompt, extract data that matches a JSON Schema (enforced, not merely requested), generate an image that lands as an attachment on the session, and classify text against OpenAI's content-policy categories. List models is the source of truth for which model ids this key can reach. This is separate from the model that runs your automation - that is configured under Settings → AI settings → AI providers, and per agent under Setup → AI → Model & quality, on the organization's own keys. Prompts sent through this integration are not retained by OpenAI (store is off). Embeddings, audio and the Assistants API are not supported.
Connect
| Credential field | Required | Where it comes from |
|---|---|---|
API key (API_KEY) | Yes | From platform.openai.com → API keys (starts with sk-). It carries the model access, rate limits and billing of the project that owns it. |
| Setting | Required | What it is |
|---|---|---|
Default model (DEFAULT_MODEL) | No | Model id used when a step names none, e.g. gpt-5.1. Leave blank to use this integration's built-in default. A step can always override it. |
Organization ID (ORGANIZATION_ID) | No | Optional org-… id. Only needed when the key belongs to several organizations; otherwise OpenAI resolves it from the key. |
Project ID (PROJECT_ID) | No | Optional proj_… id. Only needed when the key spans several projects; otherwise OpenAI resolves it from the key. |
Tools
| Tool | Access | What it does |
|---|---|---|
List models (yekar.openai.list-models) | Read | The OpenAI models this API key can actually reach, newest first. This is the source of truth for the model argument on the other tools: a model that exists in OpenAI's documentation is not necessarily enabled for a given account or project, and this endpoint answers for THIS key. |
Generate text (yekar.openai.generate-text) | Read | Send a prompt to an OpenAI model and return its answer. One request, one answer - this tool holds no conversation state, so anything the model needs to know belongs in prompt or system. Use it for a second opinion from a different model family, for work a specific OpenAI model is better at, or wherever an automation needs OpenAI text specifically. For a result that must match a JSON schema, use Extract data instead. |
Extract data (yekar.openai.extract-data) | Read | Ask an OpenAI model for an answer shaped by a JSON Schema, and get back the parsed object rather than prose to hand-parse. Use it to pull fields out of unstructured text, classify against a fixed set of labels, or produce a record another step consumes. With strict on (the default) OpenAI enforces the schema, so a returned object matches it - a refusal or a cut-off answer are the two ways to get no data, and both are reported explicitly. |
Generate image (yekar.openai.generate-image) | Read | Generate an image from a text prompt with OpenAI's image model. The image is saved as an attachment on this session - it is not returned inline, because an image is bytes and the result of a tool call is text. One image per call. |
Moderate content (yekar.openai.moderate-content) | Read | Classify text against OpenAI's content-policy categories (hate, harassment, self-harm, sexual, violence, and their sub-categories) and report which ones it trips. Use it to screen user-supplied or model-generated text before an automation acts on it or publishes it. This reports a classification - it does not block anything, and the decision about what a flag means is the automation's. |
Notes
- In OpenAI, sign in to the project Yekar.AI should use - a key inherits that project's model access, rate limits and billing, so pick it deliberately.
- Go to platform.openai.com → API keys → Create new secret key, scope it to that project, and copy it. OpenAI shows it once.
- Paste it here. Organization ID and Project ID are optional - a key already resolves both, and they matter only if you need to pin a key that spans several.
- Set a default model if you want one model used whenever a step names none; otherwise the tools fall back to a built-in default and every result reports which model actually ran.
- Call List models to confirm what this key reaches - a model in OpenAI's documentation is not necessarily enabled for your project.
- Add one credential per OpenAI project - production and staging projects can live on the same connection.