Ask Sage Agent Builder API
Agent builder workflow and agent management
Agent builder workflow and agent management
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/ask-sage-agent-builder-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Ask Sage Server Agent Builder API
description: Ask Sage is an AI-powered platform providing intelligent completions, knowledge management, and workflow automation.
version: '2.0'
contact:
name: Ask Sage Support
email: support@asksage.ai
url: https://asksage.ai
servers:
- url: '{baseUrl}/server'
description: Ask Sage Server API
variables:
baseUrl:
default: https://api.asksage.ai
description: API base URL. Use https://api.asksage.ai for production, or your self-hosted instance URL.
security:
- ApiKeyAuth: []
tags:
- name: Agent Builder
description: Agent builder workflow and agent management
paths:
/create-workflow:
post:
summary: Create workflow
description: Create a new workflow for the agent builder
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- name
properties:
name:
type: string
minLength: 1
maxLength: 255
pattern: ^[a-zA-Z0-9\s\-_.]+$
description: Workflow name
description:
type: string
maxLength: 1000
description: Workflow description
initial_dsl:
type: object
description: Initial DSL definition for the workflow
responses:
'200':
description: Workflow created successfully
content:
application/json:
schema:
type: object
properties:
response:
type: string
workflow:
type: object
status:
type: integer
'400':
description: Bad request
'409':
description: Duplicate workflow name
operationId: postCreateWorkflow
x-operation-id-source: derived
/get-workflow:
get:
summary: Get workflow
description: Get workflow by ID
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- workflow_id
properties:
workflow_id:
type: integer
description: Workflow ID
responses:
'200':
description: Workflow retrieved
'404':
description: Workflow not found
operationId: getGetWorkflow
x-operation-id-source: derived
post:
summary: Get workflow (POST)
description: Get workflow by ID
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- workflow_id
properties:
workflow_id:
type: integer
description: Workflow ID
responses:
'200':
description: Workflow retrieved
'404':
description: Workflow not found
operationId: postGetWorkflow
x-operation-id-source: derived
/list-workflows:
get:
summary: List workflows
description: List workflows for user with pagination
tags:
- Agent Builder
parameters:
- name: limit
in: query
schema:
type: integer
default: 20
maximum: 100
- name: offset
in: query
schema:
type: integer
default: 0
responses:
'200':
description: Workflows listed
content:
application/json:
schema:
type: object
properties:
response:
type: array
items:
type: object
count:
type: integer
total:
type: integer
limit:
type: integer
offset:
type: integer
status:
type: integer
operationId: getListWorkflows
x-operation-id-source: derived
post:
summary: List workflows (POST)
description: List workflows for user with pagination
tags:
- Agent Builder
requestBody:
content:
application/json:
schema:
type: object
properties:
limit:
type: integer
default: 20
maximum: 100
offset:
type: integer
default: 0
responses:
'200':
description: Workflows listed
operationId: postListWorkflows
x-operation-id-source: derived
/delete-workflow:
delete:
summary: Delete workflow
description: Soft delete a workflow
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- workflow_id
properties:
workflow_id:
type: integer
responses:
'200':
description: Workflow deleted
'404':
description: Workflow not found
operationId: deleteDeleteWorkflow
x-operation-id-source: derived
post:
summary: Delete workflow (POST)
description: Soft delete a workflow
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- workflow_id
properties:
workflow_id:
type: integer
responses:
'200':
description: Workflow deleted
'404':
description: Workflow not found
operationId: postDeleteWorkflow
x-operation-id-source: derived
/save-workflow-version:
post:
summary: Save workflow version
description: Save a new version of workflow DSL
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- workflow_id
- dsl_definition
properties:
workflow_id:
type: integer
dsl_definition:
type: object
description: DSL definition for the workflow version
changelog:
type: string
maxLength: 1000
description: Version changelog
auto_save:
type: boolean
default: false
description: Whether this is an auto-save
responses:
'200':
description: Version saved successfully
content:
application/json:
schema:
type: object
properties:
response:
type: string
version:
type: object
properties:
id:
type: integer
version_number:
type: integer
created_at:
type: string
format: date-time
status:
type: integer
operationId: postSaveWorkflowVersion
x-operation-id-source: derived
/get-workflow-version:
get:
summary: Get workflow version
description: Get workflow version DSL by version_id or workflow_id
tags:
- Agent Builder
requestBody:
content:
application/json:
schema:
type: object
properties:
version_id:
type: integer
description: Specific version ID
workflow_id:
type: integer
description: Workflow ID (returns current version)
responses:
'200':
description: Version retrieved
operationId: getGetWorkflowVersion
x-operation-id-source: derived
post:
summary: Get workflow version (POST)
description: Get workflow version DSL by version_id or workflow_id
tags:
- Agent Builder
requestBody:
content:
application/json:
schema:
type: object
properties:
version_id:
type: integer
workflow_id:
type: integer
responses:
'200':
description: Version retrieved
operationId: postGetWorkflowVersion
x-operation-id-source: derived
/list-workflow-versions:
get:
summary: List workflow versions
description: List all versions of a workflow
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- workflow_id
properties:
workflow_id:
type: integer
responses:
'200':
description: Versions listed
operationId: getListWorkflowVersions
x-operation-id-source: derived
post:
summary: List workflow versions (POST)
description: List all versions of a workflow
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- workflow_id
properties:
workflow_id:
type: integer
responses:
'200':
description: Versions listed
operationId: postListWorkflowVersions
x-operation-id-source: derived
/create-agent:
post:
summary: Create agent
description: Create a new agent for the agent builder
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- name
- primary_workflow_uuid
properties:
name:
type: string
minLength: 1
maxLength: 255
pattern: ^[a-zA-Z0-9\s\-_.]+$
description:
type: string
maxLength: 1000
agent_mode:
type: string
enum:
- single
default: single
description: Agent execution mode (only 'single' currently supported)
primary_workflow_uuid:
type: string
format: uuid
description: UUID of the primary workflow
system_prompt:
type: string
maxLength: 5000
model:
type: string
description: Default model for the agent
temperature:
type: number
default: 1.0
variables:
type: object
description: Agent variable definitions
responses:
'200':
description: Agent created
'409':
description: Duplicate agent name
operationId: postCreateAgent
x-operation-id-source: derived
/get-agent:
get:
summary: Get agent
description: Get agent by ID
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- agent_id
properties:
agent_id:
type: integer
responses:
'200':
description: Agent retrieved
'404':
description: Agent not found
operationId: getGetAgent
x-operation-id-source: derived
post:
summary: Get agent (POST)
description: Get agent by ID
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- agent_id
properties:
agent_id:
type: integer
responses:
'200':
description: Agent retrieved
'404':
description: Agent not found
operationId: postGetAgent
x-operation-id-source: derived
/update-agent:
put:
summary: Update agent
description: Update agent configuration (creates new version)
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- agent_id
properties:
agent_id:
type: integer
name:
type: string
maxLength: 255
description:
type: string
maxLength: 1000
primary_workflow_uuid:
type: string
format: uuid
system_prompt:
type: string
maxLength: 5000
variables:
type: object
changelog:
type: string
responses:
'200':
description: Agent updated
'404':
description: Agent not found
'409':
description: Duplicate name
operationId: putUpdateAgent
x-operation-id-source: derived
post:
summary: Update agent (POST)
description: Update agent configuration (creates new version)
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- agent_id
properties:
agent_id:
type: integer
name:
type: string
maxLength: 255
description:
type: string
maxLength: 1000
primary_workflow_uuid:
type: string
format: uuid
system_prompt:
type: string
maxLength: 5000
variables:
type: object
changelog:
type: string
responses:
'200':
description: Agent updated
'404':
description: Agent not found
'409':
description: Duplicate name
operationId: postUpdateAgent
x-operation-id-source: derived
/delete-agent:
delete:
summary: Delete agent
description: Soft delete an agent
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- agent_id
properties:
agent_id:
type: integer
responses:
'200':
description: Agent deleted
'404':
description: Agent not found
operationId: deleteDeleteAgent
x-operation-id-source: derived
post:
summary: Delete agent (POST)
description: Soft delete an agent
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- agent_id
properties:
agent_id:
type: integer
responses:
'200':
description: Agent deleted
'404':
description: Agent not found
operationId: postDeleteAgent
x-operation-id-source: derived
/list-node-templates:
get:
summary: List node templates
description: List available node templates for the workflow builder. Templates are dynamically generated from registered node classes.
tags:
- Agent Builder
responses:
'200':
description: Node templates listed
content:
application/json:
schema:
type: object
properties:
response:
type: array
items:
type: object
status:
type: integer
operationId: getListNodeTemplates
x-operation-id-source: derived
/list-executions:
get:
summary: List executions
description: List workflow execution history with optional filters and pagination
tags:
- Agent Builder
parameters:
- name: workflow_id
in: query
schema:
type: integer
description: Filter by workflow ID
- name: status
in: query
schema:
type: string
description: Filter by execution status
- name: limit
in: query
schema:
type: integer
default: 20
maximum: 100
- name: offset
in: query
schema:
type: integer
default: 0
responses:
'200':
description: Executions listed
operationId: getListExecutions
x-operation-id-source: derived
post:
summary: List executions (POST)
description: List workflow execution history
tags:
- Agent Builder
requestBody:
content:
application/json:
schema:
type: object
properties:
workflow_id:
type: integer
status:
type: string
limit:
type: integer
default: 20
maximum: 100
offset:
type: integer
default: 0
responses:
'200':
description: Executions listed
operationId: postListExecutions
x-operation-id-source: derived
/get-execution-details:
get:
summary: Get execution details
description: Get execution details with node logs
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- execution_id
properties:
execution_id:
type: integer
responses:
'200':
description: Execution details retrieved
'404':
description: Execution not found
operationId: getGetExecutionDetails
x-operation-id-source: derived
post:
summary: Get execution details (POST)
description: Get execution details with node logs
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- execution_id
properties:
execution_id:
type: integer
responses:
'200':
description: Execution details retrieved
'404':
description: Execution not found
operationId: postGetExecutionDetails
x-operation-id-source: derived
/update-workflow-metadata:
put:
summary: Update workflow metadata
description: Update workflow metadata (name, description, publish status, visibility). Does NOT update DSL - use /save-workflow-version for that.
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- workflow_id
properties:
workflow_id:
type: integer
name:
type: string
maxLength: 255
description:
type: string
maxLength: 1000
is_published:
type: boolean
visibility:
type: string
enum:
- private
- org
- team
changelog:
type: string
maxLength: 1000
responses:
'200':
description: Workflow metadata updated
'404':
description: Workflow not found
'409':
description: Duplicate name
operationId: putUpdateWorkflowMetadata
x-operation-id-source: derived
post:
summary: Update workflow metadata (POST)
description: Update workflow metadata
tags:
- Agent Builder
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- workflow_id
properties:
workflow_id:
type: integer
name:
type: string
maxLength: 255
description:
type: string
maxLength: 1000
is_published:
type: boolean
visibility:
type: string
enum:
- private
- org
- team
changelog:
type: string
maxLength: 1000
responses:
'200':
description: Workflow metadata updated
operationId: postUpdateWorkflowMetadata
x-operation-id-source: derived
components:
securitySchemes:
ApiKeyAuth:
type: apiKey
in: header
name: x-access-tokens
description: JWT authentication token. Obtain a token by calling the User API endpoint `/user/get-token-with-api-key` with your email and API key.