{
  "service": "openai",
  "displayName": "OpenAI",
  "categories": [
    "AI",
    "Developer Tools"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Key",
      "placeholder": "sk-proj-...",
      "description": "OpenAI API key used with the Authorization Bearer header. Create or manage it on the API Keys page: https://platform.openai.com/api-keys.",
      "extraFields": []
    }
  ],
  "homepageUrl": "https://openai.com/api/",
  "actions": [
    {
      "id": "openai.cancel_batch",
      "service": "openai",
      "name": "cancel_batch",
      "description": "Cancel one in-progress OpenAI batch job by its identifier.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "batch_id": {
            "type": "string",
            "description": "The batch identifier."
          }
        },
        "additionalProperties": true,
        "required": [
          "batch_id"
        ],
        "description": "The input payload for a batch lookup action."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The batch identifier."
          },
          "object": {
            "type": "string",
            "description": "The object type returned by the API."
          },
          "endpoint": {
            "type": "string",
            "description": "The endpoint executed for each batch request."
          },
          "input_file_id": {
            "type": "string",
            "description": "The input file identifier used by the batch."
          },
          "output_file_id": {
            "type": "string",
            "description": "The output file identifier created by the batch."
          },
          "error_file_id": {
            "type": "string",
            "description": "The error file identifier created by the batch."
          },
          "completion_window": {
            "type": "string",
            "description": "The completion window requested for the batch."
          },
          "status": {
            "type": "string",
            "description": "The current status of the batch."
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "description": "Metadata field value."
            },
            "description": "String metadata fields attached to the request."
          },
          "request_counts": {
            "type": "object",
            "additionalProperties": true,
            "description": "Any JSON object."
          },
          "errors": {
            "description": "The batch errors returned by the API."
          },
          "created_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch was created."
          },
          "in_progress_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch started processing."
          },
          "finalizing_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch started finalizing."
          },
          "completed_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch completed."
          },
          "cancelling_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch started cancelling."
          },
          "cancelled_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch was cancelled."
          },
          "failed_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch failed."
          },
          "expired_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch expired."
          },
          "expires_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch will expire."
          }
        },
        "additionalProperties": true,
        "required": [
          "id"
        ],
        "description": "An OpenAI batch object."
      }
    },
    {
      "id": "openai.create_audio_transcription",
      "service": "openai",
      "name": "create_audio_transcription",
      "description": "Transcribe one uploaded audio file with the OpenAI audio transcription API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "file": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "minLength": 1,
                "description": "The filename to report when uploading the audio file."
              },
              "mimetype": {
                "type": "string",
                "description": "The MIME type of the audio file."
              },
              "url": {
                "type": "string",
                "description": "A public URL pointing to the audio file."
              },
              "content_base64": {
                "type": "string",
                "minLength": 1,
                "description": "The base64-encoded audio content to upload."
              }
            },
            "additionalProperties": false,
            "required": [
              "name"
            ],
            "description": "The audio file source to upload."
          },
          "model": {
            "type": "string",
            "description": "The transcription model to use."
          },
          "chunking_strategy": {
            "type": "object",
            "additionalProperties": true,
            "description": "Any JSON object."
          },
          "include": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "One additional response field to include."
            },
            "description": "Additional response fields to include.",
            "minItems": 1
          },
          "language": {
            "type": "string",
            "description": "The language code of the source audio."
          },
          "prompt": {
            "type": "string",
            "description": "A guiding prompt for the transcription."
          },
          "response_format": {
            "type": "string",
            "description": "The response format to return."
          },
          "stream": {
            "type": "boolean",
            "description": "Whether to request a streaming transcription response. This connector only accepts false or an omitted value."
          },
          "temperature": {
            "type": "number",
            "minimum": 0,
            "maximum": 1,
            "description": "The sampling temperature."
          },
          "timestamp_granularities": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "word",
                "segment"
              ]
            },
            "description": "The timestamp granularities to include.",
            "minItems": 1
          }
        },
        "additionalProperties": true,
        "required": [
          "file",
          "model"
        ],
        "description": "The input payload for creating an OpenAI audio transcription."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "description": "The transcribed or translated text."
          },
          "language": {
            "type": "string",
            "description": "The detected or returned language code."
          },
          "duration": {
            "type": "number",
            "description": "The duration of the processed audio in seconds."
          },
          "segments": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true,
              "description": "Any JSON object."
            },
            "description": "The segment-level timing details."
          },
          "words": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true,
              "description": "Any JSON object."
            },
            "description": "The word-level timing details."
          },
          "logprobs": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true,
              "description": "Any JSON object."
            },
            "description": "The token log probabilities, if requested."
          },
          "usage": {
            "type": "object",
            "additionalProperties": true,
            "description": "Any JSON object."
          }
        },
        "additionalProperties": true,
        "description": "The normalized payload returned by an OpenAI audio text endpoint."
      }
    },
    {
      "id": "openai.create_audio_translation",
      "service": "openai",
      "name": "create_audio_translation",
      "description": "Translate one uploaded audio file into English with the OpenAI audio translation API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "file": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "minLength": 1,
                "description": "The filename to report when uploading the audio file."
              },
              "mimetype": {
                "type": "string",
                "description": "The MIME type of the audio file."
              },
              "url": {
                "type": "string",
                "description": "A public URL pointing to the audio file."
              },
              "content_base64": {
                "type": "string",
                "minLength": 1,
                "description": "The base64-encoded audio content to upload."
              }
            },
            "additionalProperties": false,
            "required": [
              "name"
            ],
            "description": "The audio file source to upload."
          },
          "model": {
            "type": "string",
            "description": "The translation model to use."
          },
          "prompt": {
            "type": "string",
            "description": "A guiding prompt for the translation."
          },
          "response_format": {
            "type": "string",
            "description": "The response format to return."
          },
          "temperature": {
            "type": "number",
            "minimum": 0,
            "maximum": 1,
            "description": "The sampling temperature."
          }
        },
        "additionalProperties": true,
        "required": [
          "file",
          "model"
        ],
        "description": "The input payload for creating an OpenAI audio translation."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "description": "The transcribed or translated text."
          },
          "language": {
            "type": "string",
            "description": "The detected or returned language code."
          },
          "duration": {
            "type": "number",
            "description": "The duration of the processed audio in seconds."
          },
          "segments": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true,
              "description": "Any JSON object."
            },
            "description": "The segment-level timing details."
          },
          "words": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true,
              "description": "Any JSON object."
            },
            "description": "The word-level timing details."
          },
          "logprobs": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true,
              "description": "Any JSON object."
            },
            "description": "The token log probabilities, if requested."
          },
          "usage": {
            "type": "object",
            "additionalProperties": true,
            "description": "Any JSON object."
          }
        },
        "additionalProperties": true,
        "description": "The normalized payload returned by an OpenAI audio text endpoint."
      }
    },
    {
      "id": "openai.create_batch",
      "service": "openai",
      "name": "create_batch",
      "description": "Create an OpenAI batch job from an uploaded input file.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "input_file_id": {
            "type": "string",
            "description": "The uploaded input file identifier to process."
          },
          "endpoint": {
            "type": "string",
            "description": "The API endpoint executed for each batch item."
          },
          "completion_window": {
            "type": "string",
            "description": "The requested completion window, such as `24h`."
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "description": "Metadata field value."
            },
            "description": "String metadata fields attached to the request."
          }
        },
        "additionalProperties": true,
        "required": [
          "input_file_id",
          "endpoint",
          "completion_window"
        ],
        "description": "The input payload for creating an OpenAI batch."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The batch identifier."
          },
          "object": {
            "type": "string",
            "description": "The object type returned by the API."
          },
          "endpoint": {
            "type": "string",
            "description": "The endpoint executed for each batch request."
          },
          "input_file_id": {
            "type": "string",
            "description": "The input file identifier used by the batch."
          },
          "output_file_id": {
            "type": "string",
            "description": "The output file identifier created by the batch."
          },
          "error_file_id": {
            "type": "string",
            "description": "The error file identifier created by the batch."
          },
          "completion_window": {
            "type": "string",
            "description": "The completion window requested for the batch."
          },
          "status": {
            "type": "string",
            "description": "The current status of the batch."
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "description": "Metadata field value."
            },
            "description": "String metadata fields attached to the request."
          },
          "request_counts": {
            "type": "object",
            "additionalProperties": true,
            "description": "Any JSON object."
          },
          "errors": {
            "description": "The batch errors returned by the API."
          },
          "created_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch was created."
          },
          "in_progress_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch started processing."
          },
          "finalizing_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch started finalizing."
          },
          "completed_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch completed."
          },
          "cancelling_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch started cancelling."
          },
          "cancelled_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch was cancelled."
          },
          "failed_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch failed."
          },
          "expired_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch expired."
          },
          "expires_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch will expire."
          }
        },
        "additionalProperties": true,
        "required": [
          "id"
        ],
        "description": "An OpenAI batch object."
      }
    },
    {
      "id": "openai.create_embeddings",
      "service": "openai",
      "name": "create_embeddings",
      "description": "Create embeddings with an OpenAI embedding model.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "input": {
            "anyOf": [
              {
                "type": "string",
                "description": "A single input string to embed."
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One input string."
                },
                "description": "A batch of input strings.",
                "minItems": 1
              },
              {
                "type": "array",
                "items": {
                  "type": "integer",
                  "description": "A single token ID."
                },
                "description": "A tokenized input sequence.",
                "minItems": 1
              },
              {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "integer",
                    "description": "A single token ID."
                  },
                  "minItems": 1
                },
                "description": "A batch of tokenized input sequences.",
                "minItems": 1
              }
            ]
          },
          "model": {
            "type": "string",
            "description": "The embedding model to use."
          },
          "dimensions": {
            "type": "integer",
            "minimum": 1,
            "description": "The number of embedding dimensions to request."
          },
          "encoding_format": {
            "type": "string",
            "enum": [
              "float",
              "base64"
            ],
            "description": "The embedding encoding format to return."
          },
          "user": {
            "type": "string",
            "description": "An end-user identifier passed through to the upstream API."
          }
        },
        "additionalProperties": true,
        "required": [
          "input",
          "model"
        ],
        "description": "The input payload for creating OpenAI embeddings."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "object": {
            "type": "string",
            "description": "The top-level object type."
          },
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true,
              "description": "Any JSON object."
            },
            "description": "The embedding items returned by the API."
          },
          "model": {
            "type": "string",
            "description": "The model that generated the embeddings."
          },
          "usage": {
            "type": "object",
            "additionalProperties": true,
            "description": "Any JSON object."
          }
        },
        "additionalProperties": true,
        "required": [
          "object",
          "data",
          "model",
          "usage"
        ],
        "description": "The response payload for creating OpenAI embeddings."
      }
    },
    {
      "id": "openai.create_image",
      "service": "openai",
      "name": "create_image",
      "description": "Generate images with the OpenAI image generation API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "prompt": {
            "type": "string",
            "description": "The prompt used to generate the image."
          },
          "model": {
            "type": "string",
            "description": "The image generation model to use."
          },
          "background": {
            "type": "string",
            "enum": [
              "auto",
              "opaque",
              "transparent"
            ],
            "description": "The background treatment to request for generated images."
          },
          "moderation": {
            "type": "string",
            "description": "The moderation level applied to the generation."
          },
          "n": {
            "type": "integer",
            "minimum": 1,
            "description": "The number of images to generate."
          },
          "output_compression": {
            "type": "integer",
            "minimum": 0,
            "maximum": 100,
            "description": "The output compression level to apply."
          },
          "output_format": {
            "type": "string",
            "enum": [
              "png",
              "jpeg",
              "webp"
            ],
            "description": "The image output format to request."
          },
          "partial_images": {
            "type": "integer",
            "minimum": 0,
            "description": "The number of partial images to stream before completion."
          },
          "quality": {
            "type": "string",
            "description": "The image quality to request."
          },
          "response_format": {
            "type": "string",
            "enum": [
              "b64_json",
              "url"
            ],
            "description": "The image payload format to return."
          },
          "size": {
            "type": "string",
            "description": "The requested image size."
          },
          "stream": {
            "type": "boolean",
            "description": "Whether to request a streaming image generation response. This connector only accepts false or an omitted value."
          },
          "user": {
            "type": "string",
            "description": "An end-user identifier passed through to the upstream API."
          }
        },
        "additionalProperties": true,
        "required": [
          "prompt"
        ],
        "description": "The input payload for creating one or more OpenAI images."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "created": {
            "type": "integer",
            "description": "The Unix timestamp when the image response was created."
          },
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "b64_json": {
                  "type": "string",
                  "description": "The generated image encoded as base64."
                },
                "url": {
                  "type": "string",
                  "description": "The signed image URL returned by the API."
                },
                "revised_prompt": {
                  "type": "string",
                  "description": "The prompt potentially revised by the model before generation."
                }
              },
              "additionalProperties": true,
              "description": "One generated image item returned by the API."
            },
            "description": "The generated image items returned by the API."
          },
          "usage": {
            "type": "object",
            "additionalProperties": true,
            "description": "Any JSON object."
          }
        },
        "additionalProperties": true,
        "required": [
          "data"
        ],
        "description": "The response payload for creating OpenAI images."
      }
    },
    {
      "id": "openai.create_moderation",
      "service": "openai",
      "name": "create_moderation",
      "description": "Classify text or image inputs with the OpenAI Moderations API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "input": {
            "anyOf": [
              {
                "type": "string",
                "description": "A single text input."
              },
              {
                "type": "array",
                "items": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "One text input."
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "text",
                            "image_url"
                          ],
                          "description": "The moderation input type."
                        },
                        "text": {
                          "type": "string",
                          "description": "The text content when the input type is text."
                        },
                        "image_url": {
                          "anyOf": [
                            {
                              "type": "string",
                              "description": "A direct image URL."
                            },
                            {
                              "type": "object",
                              "additionalProperties": true,
                              "description": "Any JSON object."
                            }
                          ]
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type"
                      ],
                      "description": "A multimodal moderation input item."
                    }
                  ]
                },
                "description": "A batch of moderation inputs.",
                "minItems": 1
              }
            ]
          },
          "model": {
            "type": "string",
            "description": "The moderation model to use."
          }
        },
        "additionalProperties": true,
        "required": [
          "input"
        ],
        "description": "The input payload for creating an OpenAI moderation request."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The moderation request identifier."
          },
          "model": {
            "type": "string",
            "description": "The moderation model used for the request."
          },
          "results": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true,
              "description": "Any JSON object."
            },
            "description": "The moderation results for each input."
          }
        },
        "additionalProperties": true,
        "required": [
          "id",
          "model",
          "results"
        ],
        "description": "The response payload for creating an OpenAI moderation request."
      }
    },
    {
      "id": "openai.create_response",
      "service": "openai",
      "name": "create_response",
      "description": "Create a non-streaming OpenAI response through the Responses API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string",
            "description": "The model to use for the response."
          },
          "input": {
            "anyOf": [
              {
                "type": "string",
                "description": "A plain text prompt."
              },
              {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "role": {
                      "type": "string",
                      "enum": [
                        "system",
                        "user",
                        "assistant",
                        "developer"
                      ],
                      "description": "The role of the message author."
                    },
                    "content": {
                      "anyOf": [
                        {
                          "type": "string",
                          "description": "Plain text content for a simple message."
                        },
                        {
                          "type": "array",
                          "items": {
                            "anyOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "const": "input_text",
                                    "type": "string",
                                    "description": "The content type. Must be input_text."
                                  },
                                  "text": {
                                    "type": "string",
                                    "description": "The text content sent to the model."
                                  }
                                },
                                "additionalProperties": false,
                                "required": [
                                  "type",
                                  "text"
                                ],
                                "description": "A text content block for a response input message."
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "const": "input_image",
                                    "type": "string",
                                    "description": "The content type. Must be input_image."
                                  },
                                  "image_url": {
                                    "type": "string",
                                    "description": "A remote image URL or a data URL containing the image bytes."
                                  },
                                  "detail": {
                                    "type": "string",
                                    "enum": [
                                      "auto",
                                      "low",
                                      "high",
                                      "original"
                                    ],
                                    "description": "The requested image detail level."
                                  }
                                },
                                "additionalProperties": false,
                                "required": [
                                  "type",
                                  "image_url"
                                ],
                                "description": "An image content block for a response input message."
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "const": "input_file",
                                    "type": "string",
                                    "description": "The content type. Must be input_file."
                                  },
                                  "file_id": {
                                    "type": "string",
                                    "description": "The uploaded file ID to reference."
                                  },
                                  "file_data": {
                                    "type": "string",
                                    "description": "The inline file data encoded as base64 or supplied as a data URL."
                                  },
                                  "filename": {
                                    "type": "string",
                                    "description": "The filename to report for inline file data."
                                  }
                                },
                                "additionalProperties": false,
                                "required": [
                                  "type"
                                ],
                                "description": "A file content block for a response input message."
                              }
                            ]
                          },
                          "description": "Structured multimodal content blocks.",
                          "minItems": 1
                        }
                      ]
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "role",
                    "content"
                  ],
                  "description": "A message in the Responses API input array."
                },
                "description": "An ordered array of conversation messages.",
                "minItems": 1
              }
            ]
          },
          "instructions": {
            "type": "string",
            "description": "A top-level instruction string applied before the input."
          },
          "max_output_tokens": {
            "type": "integer",
            "minimum": 1,
            "description": "The maximum number of output tokens to generate."
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "description": "Metadata field value."
            },
            "description": "String metadata fields attached to the request."
          },
          "previous_response_id": {
            "type": "string",
            "description": "The ID of a previous response to continue from."
          },
          "store": {
            "type": "boolean",
            "description": "Whether the response may be stored by the upstream platform."
          },
          "temperature": {
            "type": "number",
            "minimum": 0,
            "maximum": 2,
            "description": "The sampling temperature."
          },
          "text": {
            "type": "object",
            "properties": {
              "format": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "const": "json_object",
                        "type": "string",
                        "description": "The format type. Must be json_object."
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "type"
                    ],
                    "description": "A flexible JSON object output format."
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "const": "json_schema",
                        "type": "string",
                        "description": "The format type. Must be json_schema."
                      },
                      "name": {
                        "type": "string",
                        "description": "The schema name reported to the model."
                      },
                      "schema": {
                        "type": "object",
                        "additionalProperties": true,
                        "description": "Any JSON object."
                      },
                      "strict": {
                        "type": "boolean",
                        "description": "Whether the model must strictly follow the declared schema."
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "type",
                      "name",
                      "schema"
                    ],
                    "description": "A JSON Schema output format."
                  }
                ]
              }
            },
            "additionalProperties": false,
            "description": "Text output configuration for the response."
          },
          "top_p": {
            "type": "number",
            "minimum": 0,
            "maximum": 1,
            "description": "The nucleus sampling threshold."
          },
          "user": {
            "type": "string",
            "description": "An end-user identifier passed through to the upstream API."
          },
          "stream": {
            "type": "boolean",
            "description": "Whether to request a streaming response. This connector only accepts false or an omitted value."
          }
        },
        "additionalProperties": true,
        "required": [
          "model",
          "input"
        ],
        "description": "The input payload for creating a non-streaming OpenAI response."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The response identifier."
          },
          "object": {
            "type": "string",
            "description": "The top-level object type."
          },
          "created_at": {
            "type": "integer",
            "description": "The Unix timestamp when the response was created."
          },
          "status": {
            "type": "string",
            "description": "The response status."
          },
          "model": {
            "type": "string",
            "description": "The model that generated the response."
          },
          "output": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true,
              "description": "Any JSON object."
            },
            "description": "The raw output items returned by the response."
          },
          "output_text": {
            "type": "string",
            "description": "The aggregated plain text extracted from the output items."
          },
          "usage": {
            "type": "object",
            "additionalProperties": true,
            "description": "Any JSON object."
          },
          "error": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": true,
                "description": "Any JSON object."
              },
              {
                "type": "null"
              }
            ]
          },
          "incomplete_details": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": true,
                "description": "Any JSON object."
              },
              {
                "type": "null"
              }
            ]
          },
          "previous_response_id": {
            "anyOf": [
              {
                "type": "string",
                "description": "The previous response ID referenced by this response."
              },
              {
                "type": "null"
              }
            ]
          },
          "store": {
            "type": "boolean",
            "description": "Whether the response is stored by the upstream platform."
          },
          "expire_at": {
            "type": "integer",
            "description": "The Unix timestamp when the stored response expires."
          }
        },
        "additionalProperties": true,
        "required": [
          "id",
          "output"
        ],
        "description": "The response payload returned by the OpenAI Responses API."
      }
    },
    {
      "id": "openai.create_speech",
      "service": "openai",
      "name": "create_speech",
      "description": "Synthesize speech audio from text with the OpenAI audio speech API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string",
            "description": "The text-to-speech model to use."
          },
          "input": {
            "type": "string",
            "description": "The text to synthesize into speech."
          },
          "voice": {
            "anyOf": [
              {
                "type": "string",
                "description": "A built-in voice name."
              },
              {
                "type": "object",
                "additionalProperties": true,
                "description": "Any JSON object."
              }
            ]
          },
          "instructions": {
            "type": "string",
            "description": "Optional voice instructions that guide the synthesis style."
          },
          "response_format": {
            "type": "string",
            "enum": [
              "mp3",
              "opus",
              "aac",
              "flac",
              "wav",
              "pcm"
            ],
            "description": "The audio format to return."
          },
          "speed": {
            "type": "number",
            "minimum": 0.25,
            "maximum": 4,
            "description": "The playback speed multiplier."
          },
          "stream_format": {
            "type": "string",
            "enum": [
              "audio",
              "sse"
            ],
            "description": "The speech response delivery format. This connector only accepts audio or an omitted value."
          }
        },
        "additionalProperties": true,
        "required": [
          "model",
          "input",
          "voice"
        ],
        "description": "The input payload for creating OpenAI speech audio."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "content_base64": {
            "type": "string",
            "description": "The synthesized audio encoded as base64."
          },
          "content_type": {
            "type": "string",
            "description": "The MIME type of the synthesized audio."
          }
        },
        "additionalProperties": true,
        "required": [
          "content_base64",
          "content_type"
        ],
        "description": "The normalized speech audio payload returned by the connector."
      }
    },
    {
      "id": "openai.get_batch",
      "service": "openai",
      "name": "get_batch",
      "description": "Fetch one OpenAI batch job by its identifier.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "batch_id": {
            "type": "string",
            "description": "The batch identifier."
          }
        },
        "additionalProperties": true,
        "required": [
          "batch_id"
        ],
        "description": "The input payload for a batch lookup action."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The batch identifier."
          },
          "object": {
            "type": "string",
            "description": "The object type returned by the API."
          },
          "endpoint": {
            "type": "string",
            "description": "The endpoint executed for each batch request."
          },
          "input_file_id": {
            "type": "string",
            "description": "The input file identifier used by the batch."
          },
          "output_file_id": {
            "type": "string",
            "description": "The output file identifier created by the batch."
          },
          "error_file_id": {
            "type": "string",
            "description": "The error file identifier created by the batch."
          },
          "completion_window": {
            "type": "string",
            "description": "The completion window requested for the batch."
          },
          "status": {
            "type": "string",
            "description": "The current status of the batch."
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "description": "Metadata field value."
            },
            "description": "String metadata fields attached to the request."
          },
          "request_counts": {
            "type": "object",
            "additionalProperties": true,
            "description": "Any JSON object."
          },
          "errors": {
            "description": "The batch errors returned by the API."
          },
          "created_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch was created."
          },
          "in_progress_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch started processing."
          },
          "finalizing_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch started finalizing."
          },
          "completed_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch completed."
          },
          "cancelling_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch started cancelling."
          },
          "cancelled_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch was cancelled."
          },
          "failed_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch failed."
          },
          "expired_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch expired."
          },
          "expires_at": {
            "type": "integer",
            "description": "The Unix timestamp when the batch will expire."
          }
        },
        "additionalProperties": true,
        "required": [
          "id"
        ],
        "description": "An OpenAI batch object."
      }
    },
    {
      "id": "openai.get_input_token_counts",
      "service": "openai",
      "name": "get_input_token_counts",
      "description": "Count how many input tokens a Responses-style OpenAI request would consume.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string",
            "description": "The model used for counting the input tokens."
          },
          "input": {
            "anyOf": [
              {
                "type": "string",
                "description": "A plain text prompt."
              },
              {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "role": {
                      "type": "string",
                      "enum": [
                        "system",
                        "user",
                        "assistant",
                        "developer"
                      ],
                      "description": "The role of the message author."
                    },
                    "content": {
                      "anyOf": [
                        {
                          "type": "string",
                          "description": "Plain text content for a simple message."
                        },
                        {
                          "type": "array",
                          "items": {
                            "anyOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "const": "input_text",
                                    "type": "string",
                                    "description": "The content type. Must be input_text."
                                  },
                                  "text": {
                                    "type": "string",
                                    "description": "The text content sent to the model."
                                  }
                                },
                                "additionalProperties": false,
                                "required": [
                                  "type",
                                  "text"
                                ],
                                "description": "A text content block for a response input message."
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "const": "input_image",
                                    "type": "string",
                                    "description": "The content type. Must be input_image."
                                  },
                                  "image_url": {
                                    "type": "string",
                                    "description": "A remote image URL or a data URL containing the image bytes."
                                  },
                                  "detail": {
                                    "type": "string",
                                    "enum": [
                                      "auto",
                                      "low",
                                      "high",
                                      "original"
                                    ],
                                    "description": "The requested image detail level."
                                  }
                                },
                                "additionalProperties": false,
                                "required": [
                                  "type",
                                  "image_url"
                                ],
                                "description": "An image content block for a response input message."
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "const": "input_file",
                                    "type": "string",
                                    "description": "The content type. Must be input_file."
                                  },
                                  "file_id": {
                                    "type": "string",
                                    "description": "The uploaded file ID to reference."
                                  },
                                  "file_data": {
                                    "type": "string",
                                    "description": "The inline file data encoded as base64 or supplied as a data URL."
                                  },
                                  "filename": {
                                    "type": "string",
                                    "description": "The filename to report for inline file data."
                                  }
                                },
                                "additionalProperties": false,
                                "required": [
                                  "type"
                                ],
                                "description": "A file content block for a response input message."
                              }
                            ]
                          },
                          "description": "Structured multimodal content blocks.",
                          "minItems": 1
                        }
                      ]
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "role",
                    "content"
                  ],
                  "description": "A message in the Responses API input array."
                },
                "description": "An ordered array of conversation messages.",
                "minItems": 1
              }
            ]
          },
          "instructions": {
            "type": "string",
            "description": "Top-level instructions to include in the token count."
          },
          "previous_response_id": {
            "type": "string",
            "description": "A previous response identifier to continue counting from."
          },
          "text": {
            "type": "object",
            "properties": {
              "format": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "const": "json_object",
                        "type": "string",
                        "description": "The format type. Must be json_object."
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "type"
                    ],
                    "description": "A flexible JSON object output format."
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "const": "json_schema",
                        "type": "string",
                        "description": "The format type. Must be json_schema."
                      },
                      "name": {
                        "type": "string",
                        "description": "The schema name reported to the model."
                      },
                      "schema": {
                        "type": "object",
                        "additionalProperties": true,
                        "description": "Any JSON object."
                      },
                      "strict": {
                        "type": "boolean",
                        "description": "Whether the model must strictly follow the declared schema."
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "type",
                      "name",
                      "schema"
                    ],
                    "description": "A JSON Schema output format."
                  }
                ]
              }
            },
            "additionalProperties": false,
            "description": "Text output configuration for the response."
          },
          "truncation": {
            "type": "string",
            "description": "The truncation mode to apply before counting."
          }
        },
        "additionalProperties": true,
        "description": "The input payload for counting input tokens for a Responses-style request."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "object": {
            "type": "string",
            "description": "The object type returned by the API."
          },
          "input_tokens": {
            "type": "integer",
            "description": "The number of input tokens the request would consume."
          }
        },
        "additionalProperties": true,
        "required": [
          "input_tokens"
        ],
        "description": "The token count payload returned by the Responses input token count API."
      }
    },
    {
      "id": "openai.get_model",
      "service": "openai",
      "name": "get_model",
      "description": "Retrieve the metadata for a single OpenAI model by ID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string",
            "description": "The exact model identifier to retrieve."
          }
        },
        "additionalProperties": true,
        "required": [
          "model"
        ],
        "description": "The input payload for retrieving a single OpenAI model."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The model identifier."
          },
          "object": {
            "type": "string",
            "description": "The object type returned by the API."
          },
          "created": {
            "type": "integer",
            "description": "The Unix timestamp when the model was created."
          },
          "owned_by": {
            "type": "string",
            "description": "The organization or user that owns the model."
          },
          "root": {
            "type": "string",
            "description": "The root model identifier for a derived model."
          },
          "parent": {
            "anyOf": [
              {
                "type": "string",
                "description": "The immediate parent model identifier, if any."
              },
              {
                "type": "null"
              }
            ]
          },
          "permission": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true,
              "description": "Any JSON object."
            },
            "description": "The permission entries returned for the model."
          }
        },
        "additionalProperties": true,
        "required": [
          "id",
          "object",
          "created",
          "owned_by"
        ],
        "description": "An OpenAI model entry."
      }
    },
    {
      "id": "openai.get_response",
      "service": "openai",
      "name": "get_response",
      "description": "Retrieve one stored OpenAI response by its identifier.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "response_id": {
            "type": "string",
            "description": "The response identifier."
          },
          "include": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "One response field path to include."
            },
            "description": "Additional response fields to include in the result.",
            "minItems": 1
          }
        },
        "additionalProperties": true,
        "required": [
          "response_id"
        ],
        "description": "The input payload for retrieving one stored OpenAI response."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The response identifier."
          },
          "object": {
            "type": "string",
            "description": "The top-level object type."
          },
          "created_at": {
            "type": "integer",
            "description": "The Unix timestamp when the response was created."
          },
          "status": {
            "type": "string",
            "description": "The response status."
          },
          "model": {
            "type": "string",
            "description": "The model that generated the response."
          },
          "output": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true,
              "description": "Any JSON object."
            },
            "description": "The raw output items returned by the response."
          },
          "output_text": {
            "type": "string",
            "description": "The aggregated plain text extracted from the output items."
          },
          "usage": {
            "type": "object",
            "additionalProperties": true,
            "description": "Any JSON object."
          },
          "error": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": true,
                "description": "Any JSON object."
              },
              {
                "type": "null"
              }
            ]
          },
          "incomplete_details": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": true,
                "description": "Any JSON object."
              },
              {
                "type": "null"
              }
            ]
          },
          "previous_response_id": {
            "anyOf": [
              {
                "type": "string",
                "description": "The previous response ID referenced by this response."
              },
              {
                "type": "null"
              }
            ]
          },
          "store": {
            "type": "boolean",
            "description": "Whether the response is stored by the upstream platform."
          },
          "expire_at": {
            "type": "integer",
            "description": "The Unix timestamp when the stored response expires."
          }
        },
        "additionalProperties": true,
        "required": [
          "id",
          "output"
        ],
        "description": "The response payload returned by the OpenAI Responses API."
      }
    },
    {
      "id": "openai.list_input_items",
      "service": "openai",
      "name": "list_input_items",
      "description": "List the stored input items for one OpenAI response.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "response_id": {
            "type": "string",
            "description": "The response identifier whose input items should be listed."
          },
          "after": {
            "type": "string",
            "description": "Return items after this item identifier."
          },
          "include": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "One input item field path to include."
            },
            "description": "Additional input item fields to include in the result.",
            "minItems": 1
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "description": "The maximum number of input items to return."
          },
          "order": {
            "type": "string",
            "enum": [
              "asc",
              "desc"
            ],
            "description": "The sort order for returned items."
          }
        },
        "additionalProperties": true,
        "required": [
          "response_id"
        ],
        "description": "The input payload for listing stored response input items."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "object": {
            "type": "string",
            "description": "The object type returned by the API."
          },
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true,
              "description": "Any JSON object."
            },
            "description": "The returned input items."
          },
          "first_id": {
            "type": "string",
            "description": "The first item identifier in the page."
          },
          "last_id": {
            "type": "string",
            "description": "The last item identifier in the page."
          },
          "has_more": {
            "type": "boolean",
            "description": "Whether more input items are available."
          }
        },
        "additionalProperties": true,
        "required": [
          "data"
        ],
        "description": "The response payload for listing stored response input items."
      }
    },
    {
      "id": "openai.list_models",
      "service": "openai",
      "name": "list_models",
      "description": "List the OpenAI models available to the current API key.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": true,
        "description": "No input parameters are required for this action."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "object": {
            "type": "string",
            "description": "The top-level object type."
          },
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "The model identifier."
                },
                "object": {
                  "type": "string",
                  "description": "The object type returned by the API."
                },
                "created": {
                  "type": "integer",
                  "description": "The Unix timestamp when the model was created."
                },
                "owned_by": {
                  "type": "string",
                  "description": "The organization or user that owns the model."
                },
                "root": {
                  "type": "string",
                  "description": "The root model identifier for a derived model."
                },
                "parent": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "The immediate parent model identifier, if any."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "permission": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "additionalProperties": true,
                    "description": "Any JSON object."
                  },
                  "description": "The permission entries returned for the model."
                }
              },
              "additionalProperties": true,
              "required": [
                "id",
                "object",
                "created",
                "owned_by"
              ],
              "description": "An OpenAI model entry."
            },
            "description": "The list of available models."
          }
        },
        "additionalProperties": true,
        "required": [
          "object",
          "data"
        ],
        "description": "The response payload for listing OpenAI models."
      },
      "followUpActions": [
        "openai.get_model"
      ]
    }
  ]
}
