openapi: 3.1.0 info: title: Client SDK subpackage_workflowSandboxes API version: 1.0.0 servers: - url: https://predict.vellum.ai - url: https://api.vellum.ai - url: https://documents.vellum.ai tags: - name: subpackage_workflowSandboxes paths: /v1/workflow-sandboxes/{id}/deploy: post: operationId: deploy-workflow summary: Deploy Workflow tags: - subpackage_workflowSandboxes parameters: - name: id in: path description: A UUID string identifying this workflow sandbox. required: true schema: type: string format: uuid - name: X-API-KEY in: header required: true schema: type: string - name: X-API-Version in: header required: false schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/WorkflowDeploymentRead' requestBody: content: application/json: schema: $ref: '#/components/schemas/DeploySandboxWorkflowRequest' components: schemas: VellumImage: type: object properties: src: type: string description: "The reference to the source data. This can be one of the following formats:\n1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').\n2. A url pointing to a file accessible over HTTP or HTTPS.\n3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.\n You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details." metadata: type: - object - 'null' additionalProperties: description: Any type required: - src title: VellumImage ErrorVellumValue: type: object properties: type: $ref: '#/components/schemas/ErrorEnum' value: oneOf: - $ref: '#/components/schemas/VellumError' - type: 'null' required: - type - value description: A value representing an Error. title: ErrorVellumValue EntityStatus: type: string enum: - ACTIVE - ARCHIVED - PENDING_DELETION description: '* `ACTIVE` - Active * `ARCHIVED` - Archived * `PENDING_DELETION` - Pending Deletion' title: EntityStatus PdfEnum: type: string enum: - PDF title: PdfEnum ChatMessageContent: oneOf: - $ref: '#/components/schemas/StringChatMessageContent' - $ref: '#/components/schemas/FunctionCallChatMessageContent' - $ref: '#/components/schemas/ArrayChatMessageContent' - $ref: '#/components/schemas/AudioChatMessageContent' - $ref: '#/components/schemas/VideoChatMessageContent' - $ref: '#/components/schemas/ImageChatMessageContent' - $ref: '#/components/schemas/DocumentChatMessageContent' title: ChatMessageContent ChatMessage: type: object properties: text: type: - string - 'null' role: $ref: '#/components/schemas/ChatMessageRole' content: oneOf: - $ref: '#/components/schemas/ChatMessageContent' - type: 'null' source: type: - string - 'null' description: An optional identifier representing who or what generated this message. metadata: type: - object - 'null' additionalProperties: description: Any type required: - role title: ChatMessage StringEnum: type: string enum: - STRING title: StringEnum DocumentVellumValue: type: object properties: type: $ref: '#/components/schemas/DocumentEnum' value: oneOf: - $ref: '#/components/schemas/VellumDocument' - type: 'null' required: - type - value description: A base Vellum primitive value representing a document. title: DocumentVellumValue DeploySandboxWorkflowRequest: type: object properties: workflow_deployment_id: type: - string - 'null' format: uuid description: The Vellum-generated ID of the Workflow Deployment you'd like to update. Cannot specify both this and workflow_deployment_name. Leave null to create a new Workflow Deployment. workflow_deployment_name: type: - string - 'null' description: The unique name of the Workflow Deployment you'd like to either create or update. Cannot specify both this and workflow_deployment_id. If provided and matches an existing Workflow Deployment, that Workflow Deployment will be updated. Otherwise, a new Prompt Deployment will be created. label: type: - string - 'null' description: In the event that a new Workflow Deployment is created, this will be the label it's given. release_tags: type: - array - 'null' items: type: string description: Optionally provide the release tags that you'd like to be associated with the latest release of the created/updated Prompt Deployment. release_description: type: - string - 'null' default: '' description: Optionally provide a description that details what's new in this Release. title: DeploySandboxWorkflowRequest NumberVellumValue: type: object properties: type: $ref: '#/components/schemas/NumberEnum' value: type: - number - 'null' format: double required: - type - value description: A value representing a number. title: NumberVellumValue StringVellumValue: type: object properties: type: $ref: '#/components/schemas/StringEnum' value: type: - string - 'null' required: - type - value description: A value representing a string. title: StringVellumValue AudioChatMessageContent: type: object properties: type: $ref: '#/components/schemas/AudioEnum' value: $ref: '#/components/schemas/VellumAudio' required: - type - value description: An audio value that is used in a chat message. title: AudioChatMessageContent SearchResultsVellumValue: type: object properties: type: $ref: '#/components/schemas/SearchResultsEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/SearchResult' required: - type - value description: A value representing Search Results. title: SearchResultsVellumValue WorkflowDeploymentDisplayData: type: object properties: icon: oneOf: - $ref: '#/components/schemas/WorkflowDisplayIcon' - type: 'null' description: The icon associated with this Workflow Deployment. description: Workflow Deployment display data title: WorkflowDeploymentDisplayData ChatHistoryVellumValue: type: object properties: type: $ref: '#/components/schemas/ChatHistoryEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/ChatMessage' required: - type - value description: A value representing Chat History. title: ChatHistoryVellumValue DocumentEnum: type: string enum: - DOCUMENT title: DocumentEnum ArrayVellumValue: type: object properties: type: $ref: '#/components/schemas/ArrayEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/VellumValue' required: - type - value description: A value representing an array of Vellum variable values. title: ArrayVellumValue ThinkingEnum: type: string enum: - THINKING title: ThinkingEnum VellumVariableType: type: string enum: - STRING - NUMBER - JSON - CHAT_HISTORY - SEARCH_RESULTS - ERROR - ARRAY - FUNCTION_CALL - AUDIO - VIDEO - IMAGE - DOCUMENT - 'NULL' - THINKING - REFERENCE description: '* `STRING` - STRING * `NUMBER` - NUMBER * `JSON` - JSON * `CHAT_HISTORY` - CHAT_HISTORY * `SEARCH_RESULTS` - SEARCH_RESULTS * `ERROR` - ERROR * `ARRAY` - ARRAY * `FUNCTION_CALL` - FUNCTION_CALL * `AUDIO` - AUDIO * `VIDEO` - VIDEO * `IMAGE` - IMAGE * `DOCUMENT` - DOCUMENT * `NULL` - NULL * `THINKING` - THINKING * `REFERENCE` - REFERENCE' title: VellumVariableType FunctionCallVellumValue: type: object properties: type: $ref: '#/components/schemas/FunctionCallEnum' value: oneOf: - $ref: '#/components/schemas/FunctionCall' - type: 'null' required: - type - value description: A value representing a Function Call. title: FunctionCallVellumValue ChatHistoryEnum: type: string enum: - CHAT_HISTORY title: ChatHistoryEnum VellumVariable: type: object properties: id: type: string key: type: string type: $ref: '#/components/schemas/VellumVariableType' required: type: - boolean - 'null' default: oneOf: - $ref: '#/components/schemas/VellumValue' - type: 'null' extensions: oneOf: - $ref: '#/components/schemas/VellumVariableExtensions' - type: 'null' schema: type: - object - 'null' additionalProperties: description: Any type required: - id - key - type title: VellumVariable FunctionCallChatMessageContent: type: object properties: type: $ref: '#/components/schemas/FunctionCallEnum' value: $ref: '#/components/schemas/FunctionCallChatMessageContentValue' required: - type - value description: A function call value that is used in a chat message. title: FunctionCallChatMessageContent ImageChatMessageContent: type: object properties: type: $ref: '#/components/schemas/ImageEnum' value: $ref: '#/components/schemas/VellumImage' required: - type - value description: An image value that is used in a chat message. title: ImageChatMessageContent SearchResult: type: object properties: text: type: string description: The text of the chunk that matched the search query. score: type: number format: double description: A score representing how well the chunk matches the search query. keywords: type: array items: type: string document: $ref: '#/components/schemas/SearchResultDocument' description: The document that contains the chunk that matched the search query. meta: oneOf: - $ref: '#/components/schemas/SearchResultMeta' - type: 'null' description: Additional information about the search result. required: - text - score - keywords - document title: SearchResult VideoEnum: type: string enum: - VIDEO title: VideoEnum VellumDocument: type: object properties: src: type: string description: "The reference to the source data. This can be one of the following formats:\n1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').\n2. A url pointing to a file accessible over HTTP or HTTPS.\n3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.\n You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details." metadata: type: - object - 'null' additionalProperties: description: Any type required: - src title: VellumDocument VideoChatMessageContent: type: object properties: type: $ref: '#/components/schemas/VideoEnum' value: $ref: '#/components/schemas/VellumVideo' required: - type - value description: A video value that is used in a chat message. title: VideoChatMessageContent ImageVellumValue: type: object properties: type: $ref: '#/components/schemas/ImageEnum' value: oneOf: - $ref: '#/components/schemas/VellumImage' - type: 'null' required: - type - value description: A base Vellum primitive value representing an image. title: ImageVellumValue VideoVellumValue: type: object properties: type: $ref: '#/components/schemas/VideoEnum' value: oneOf: - $ref: '#/components/schemas/VellumVideo' - type: 'null' required: - type - value description: A base Vellum primitive value representing a video. title: VideoVellumValue JsonEnum: type: string enum: - JSON title: JsonEnum PdfSearchResultMetaSource: type: object properties: document_type: $ref: '#/components/schemas/PdfEnum' start_page_num: type: - integer - 'null' description: The 1-indexed page number where the chunk starts in the document. Only available for supported chunking strategies and document types. end_page_num: type: - integer - 'null' description: The 1-indexed page number where the chunk ends in the document. Only available for supported chunking strategies and document types. required: - document_type - start_page_num - end_page_num description: The source of a search result from a PDF document. title: PdfSearchResultMetaSource ThinkingVellumValue: type: object properties: type: $ref: '#/components/schemas/ThinkingEnum' value: oneOf: - $ref: '#/components/schemas/StringVellumValue' - type: 'null' required: - type - value description: A value representing Thinking mode output. title: ThinkingVellumValue VellumAudio: type: object properties: src: type: string description: "The reference to the source data. This can be one of the following formats:\n1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').\n2. A url pointing to a file accessible over HTTP or HTTPS.\n3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.\n You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details." metadata: type: - object - 'null' additionalProperties: description: Any type required: - src title: VellumAudio SearchResultMeta: type: object properties: source: oneOf: - $ref: '#/components/schemas/SearchResultMetaSource' - type: 'null' title: SearchResultMeta SearchResultDocument: type: object properties: id: type: - string - 'null' format: uuid description: The ID of the document. label: type: string description: The human-readable name for the document. external_id: type: - string - 'null' description: The unique ID of the document as represented in an external system and specified when it was originally uploaded. metadata: type: - object - 'null' additionalProperties: description: Any type description: A previously supplied JSON object containing metadata that can be filtered on when searching. required: - label title: SearchResultDocument SearchResultsEnum: type: string enum: - SEARCH_RESULTS title: SearchResultsEnum FunctionCallEnum: type: string enum: - FUNCTION_CALL title: FunctionCallEnum SearchResultMetaSource: oneOf: - $ref: '#/components/schemas/PdfSearchResultMetaSource' title: SearchResultMetaSource AudioVellumValue: type: object properties: type: $ref: '#/components/schemas/AudioEnum' value: oneOf: - $ref: '#/components/schemas/VellumAudio' - type: 'null' required: - type - value description: A base Vellum primitive value representing audio. title: AudioVellumValue WorkflowDeploymentRead: type: object properties: id: type: string format: uuid name: type: string description: A name that uniquely identifies this workflow deployment within its workspace label: type: string description: A human-readable label for the workflow deployment status: $ref: '#/components/schemas/EntityStatus' description: 'The current status of the workflow deployment * `ACTIVE` - Active * `ARCHIVED` - Archived * `PENDING_DELETION` - Pending Deletion' environment: oneOf: - $ref: '#/components/schemas/EnvironmentEnum' - type: 'null' description: Deprecated. The value returned will always be 'PRODUCTION'. created: type: string format: date-time last_deployed_on: type: string format: date-time last_deployed_history_item_id: type: string format: uuid description: The ID of the history item associated with this Workflow Deployment's LATEST Release Tag input_variables: type: array items: $ref: '#/components/schemas/VellumVariable' description: The input variables this Workflow Deployment expects to receive values for when it is executed. output_variables: type: array items: $ref: '#/components/schemas/VellumVariable' description: The output variables this Workflow Deployment produces values for when it's executed. description: type: - string - 'null' description: A human-readable description of the workflow deployment display_data: oneOf: - $ref: '#/components/schemas/WorkflowDeploymentDisplayData' - type: 'null' description: Information used to display this Workflow Deployment. required: - id - name - label - created - last_deployed_on - last_deployed_history_item_id - input_variables - output_variables description: A Workflow Deployment's full details. title: WorkflowDeploymentRead ArrayEnum: type: string enum: - ARRAY title: ArrayEnum VellumValue: oneOf: - $ref: '#/components/schemas/StringVellumValue' - $ref: '#/components/schemas/NumberVellumValue' - $ref: '#/components/schemas/JsonVellumValue' - $ref: '#/components/schemas/AudioVellumValue' - $ref: '#/components/schemas/VideoVellumValue' - $ref: '#/components/schemas/ImageVellumValue' - $ref: '#/components/schemas/DocumentVellumValue' - $ref: '#/components/schemas/FunctionCallVellumValue' - $ref: '#/components/schemas/ErrorVellumValue' - $ref: '#/components/schemas/ArrayVellumValue' - $ref: '#/components/schemas/ChatHistoryVellumValue' - $ref: '#/components/schemas/SearchResultsVellumValue' - $ref: '#/components/schemas/ThinkingVellumValue' title: VellumValue ArrayChatMessageContent: type: object properties: type: $ref: '#/components/schemas/ArrayEnum' value: type: array items: $ref: '#/components/schemas/ArrayChatMessageContentItem' required: - type - value description: A list of chat message content items. title: ArrayChatMessageContent AudioEnum: type: string enum: - AUDIO title: AudioEnum VellumVariableExtensions: type: object properties: color: type: - string - 'null' description: type: - string - 'null' title: type: - string - 'null' description: A set of fields with additional properties for use in Vellum Variables. title: VellumVariableExtensions VellumErrorCodeEnum: type: string enum: - INVALID_REQUEST - INVALID_INPUTS - PROVIDER_ERROR - PROVIDER_CREDENTIALS_UNAVAILABLE - INTEGRATION_CREDENTIALS_UNAVAILABLE - REQUEST_TIMEOUT - INTERNAL_SERVER_ERROR - USER_DEFINED_ERROR - WORKFLOW_CANCELLED - NODE_CANCELLED - PROVIDER_QUOTA_EXCEEDED - CHAT_QUOTA_EXCEEDED description: '* `INVALID_REQUEST` - INVALID_REQUEST * `INVALID_INPUTS` - INVALID_INPUTS * `PROVIDER_ERROR` - PROVIDER_ERROR * `PROVIDER_CREDENTIALS_UNAVAILABLE` - PROVIDER_CREDENTIALS_UNAVAILABLE * `INTEGRATION_CREDENTIALS_UNAVAILABLE` - INTEGRATION_CREDENTIALS_UNAVAILABLE * `REQUEST_TIMEOUT` - REQUEST_TIMEOUT * `INTERNAL_SERVER_ERROR` - INTERNAL_SERVER_ERROR * `USER_DEFINED_ERROR` - USER_DEFINED_ERROR * `WORKFLOW_CANCELLED` - WORKFLOW_CANCELLED * `NODE_CANCELLED` - NODE_CANCELLED * `PROVIDER_QUOTA_EXCEEDED` - PROVIDER_QUOTA_EXCEEDED * `CHAT_QUOTA_EXCEEDED` - CHAT_QUOTA_EXCEEDED' title: VellumErrorCodeEnum ImageEnum: type: string enum: - IMAGE title: ImageEnum ArrayChatMessageContentItem: oneOf: - $ref: '#/components/schemas/StringChatMessageContent' - $ref: '#/components/schemas/FunctionCallChatMessageContent' - $ref: '#/components/schemas/AudioChatMessageContent' - $ref: '#/components/schemas/VideoChatMessageContent' - $ref: '#/components/schemas/ImageChatMessageContent' - $ref: '#/components/schemas/DocumentChatMessageContent' title: ArrayChatMessageContentItem ChatMessageRole: type: string enum: - SYSTEM - ASSISTANT - USER - FUNCTION description: '* `SYSTEM` - System * `ASSISTANT` - Assistant * `USER` - User * `FUNCTION` - Function' title: ChatMessageRole FunctionCall: type: object properties: arguments: type: object additionalProperties: description: Any type id: type: - string - 'null' name: type: string required: - arguments - name description: The final resolved function call value. title: FunctionCall JsonVellumValue: type: object properties: type: $ref: '#/components/schemas/JsonEnum' value: oneOf: - description: Any type - type: 'null' required: - type - value description: A value representing a JSON object. title: JsonVellumValue VellumVideo: type: object properties: src: type: string description: "The reference to the source data. This can be one of the following formats:\n1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').\n2. A url pointing to a file accessible over HTTP or HTTPS.\n3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.\n You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details." metadata: type: - object - 'null' additionalProperties: description: Any type required: - src title: VellumVideo StringChatMessageContent: type: object properties: type: $ref: '#/components/schemas/StringEnum' value: type: string required: - type - value description: A string value that is used in a chat message. title: StringChatMessageContent NumberEnum: type: string enum: - NUMBER title: NumberEnum VellumError: type: object properties: code: $ref: '#/components/schemas/VellumErrorCodeEnum' message: type: string raw_data: type: - object - 'null' additionalProperties: description: Any type required: - code - message title: VellumError ErrorEnum: type: string enum: - ERROR title: ErrorEnum WorkflowDisplayIcon: type: object properties: src: type: - string - 'null' color: type: - string - 'null' description: Icon to be used alongside a Workflow title: WorkflowDisplayIcon EnvironmentEnum: type: string enum: - DEVELOPMENT - STAGING - PRODUCTION title: EnvironmentEnum FunctionCallChatMessageContentValue: type: object properties: name: type: string arguments: type: object additionalProperties: description: Any type id: type: - string - 'null' required: - name - arguments description: The final resolved function call value. title: FunctionCallChatMessageContentValue DocumentChatMessageContent: type: object properties: type: $ref: '#/components/schemas/DocumentEnum' value: $ref: '#/components/schemas/VellumDocument' required: - type - value description: A document value that is used in a chat message. title: DocumentChatMessageContent securitySchemes: default: type: apiKey in: header name: X-API-KEY