Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
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.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/textql-agentservice-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
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: TextQL Agent Service API
version: 1.0.0
description: 'TextQL public API. Generated from protobuf service definitions; internal
endpoints are excluded via google.api.visibility / file_visibility.'
servers:
- url: https://app.textql.com/rpc/public
security:
- apiKey: []
tags:
- name: AgentService
paths:
/textql.rpc.public.agent.AgentService/CreateAgent:
post:
tags:
- AgentService
summary: CreateAgent
operationId: AgentService_CreateAgent
x-speakeasy-group: agents
x-speakeasy-name-override: create
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.CreateAgentRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.CreateAgentResponse'
x-codeSamples:
- lang: typescript
label: TypeScript (SDK)
source: "import { Textql } from \"@textql/sdk\";\n\nconst textql = new Textql({\n apiKey: process.env[\"TEXTQL_API_KEY\"] ?? \"\",\n});\n\nasync function run() {\n const result = await textql.agents.create({\n body: {},\n });\n\n console.log(result);\n}\n\nrun();"
- lang: python
label: Python (SDK)
source: "import os\nfrom textql_sdk import Textql\n\n\nwith Textql(\n api_key=os.getenv(\"TEXTQL_API_KEY\", \"\"),\n) as textql:\n\n res = textql.agents.create()\n\n # Handle response\n print(res)"
/textql.rpc.public.agent.AgentService/DeleteAgent:
post:
tags:
- AgentService
summary: DeleteAgent
operationId: AgentService_DeleteAgent
x-speakeasy-group: agents
x-speakeasy-name-override: delete
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.DeleteAgentRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/google.protobuf.Empty'
x-codeSamples:
- lang: typescript
label: TypeScript (SDK)
source: "import { Textql } from \"@textql/sdk\";\n\nconst textql = new Textql({\n apiKey: process.env[\"TEXTQL_API_KEY\"] ?? \"\",\n});\n\nasync function run() {\n const result = await textql.agents.delete({\n body: {},\n });\n\n console.log(result);\n}\n\nrun();"
- lang: python
label: Python (SDK)
source: "import os\nfrom textql_sdk import Textql\n\n\nwith Textql(\n api_key=os.getenv(\"TEXTQL_API_KEY\", \"\"),\n) as textql:\n\n res = textql.agents.delete()\n\n # Handle response\n print(res)"
/textql.rpc.public.agent.AgentService/DuplicateAgent:
post:
tags:
- AgentService
summary: DuplicateAgent
operationId: AgentService_DuplicateAgent
x-speakeasy-group: agents
x-speakeasy-name-override: duplicate
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.DuplicateAgentRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.DuplicateAgentResponse'
x-codeSamples:
- lang: typescript
label: TypeScript (SDK)
source: "import { Textql } from \"@textql/sdk\";\n\nconst textql = new Textql({\n apiKey: process.env[\"TEXTQL_API_KEY\"] ?? \"\",\n});\n\nasync function run() {\n const result = await textql.agents.duplicate({\n body: {},\n });\n\n console.log(result);\n}\n\nrun();"
- lang: python
label: Python (SDK)
source: "import os\nfrom textql_sdk import Textql\n\n\nwith Textql(\n api_key=os.getenv(\"TEXTQL_API_KEY\", \"\"),\n) as textql:\n\n res = textql.agents.duplicate()\n\n # Handle response\n print(res)"
/textql.rpc.public.agent.AgentService/GetAgent:
post:
tags:
- AgentService
summary: GetAgent
operationId: AgentService_GetAgent
x-speakeasy-group: agents
x-speakeasy-name-override: getAgent
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.GetAgentRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.GetAgentResponse'
x-codeSamples:
- lang: typescript
label: TypeScript (SDK)
source: "import { Textql } from \"@textql/sdk\";\n\nconst textql = new Textql({\n apiKey: process.env[\"TEXTQL_API_KEY\"] ?? \"\",\n});\n\nasync function run() {\n const result = await textql.agents.getAgent({\n body: {},\n });\n\n console.log(result);\n}\n\nrun();"
- lang: python
label: Python (SDK)
source: "import os\nfrom textql_sdk import Textql\n\n\nwith Textql(\n api_key=os.getenv(\"TEXTQL_API_KEY\", \"\"),\n) as textql:\n\n res = textql.agents.get_agent()\n\n # Handle response\n print(res)"
/textql.rpc.public.agent.AgentService/GetAgentDBSchema:
post:
tags:
- AgentService
summary: GetAgentDBSchema
operationId: AgentService_GetAgentDBSchema
x-speakeasy-group: agents
x-speakeasy-name-override: getDBSchema
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.GetAgentDBSchemaRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.GetAgentDBSchemaResponse'
x-codeSamples:
- lang: typescript
label: TypeScript (SDK)
source: "import { Textql } from \"@textql/sdk\";\n\nconst textql = new Textql({\n apiKey: process.env[\"TEXTQL_API_KEY\"] ?? \"\",\n});\n\nasync function run() {\n const result = await textql.agents.getDBSchema({\n body: {},\n });\n\n console.log(result);\n}\n\nrun();"
- lang: python
label: Python (SDK)
source: "import os\nfrom textql_sdk import Textql\n\n\nwith Textql(\n api_key=os.getenv(\"TEXTQL_API_KEY\", \"\"),\n) as textql:\n\n res = textql.agents.get_db_schema()\n\n # Handle response\n print(res)"
/textql.rpc.public.agent.AgentService/GetAgentDBTablePreview:
post:
tags:
- AgentService
summary: GetAgentDBTablePreview
operationId: AgentService_GetAgentDBTablePreview
x-speakeasy-group: agents
x-speakeasy-name-override: getDBTablePreview
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.GetAgentDBTablePreviewRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.GetAgentDBTablePreviewResponse'
x-codeSamples:
- lang: typescript
label: TypeScript (SDK)
source: "import { Textql } from \"@textql/sdk\";\n\nconst textql = new Textql({\n apiKey: process.env[\"TEXTQL_API_KEY\"] ?? \"\",\n});\n\nasync function run() {\n const result = await textql.agents.getDBTablePreview({\n body: {},\n });\n\n console.log(result);\n}\n\nrun();"
- lang: python
label: Python (SDK)
source: "import os\nfrom textql_sdk import Textql\n\n\nwith Textql(\n api_key=os.getenv(\"TEXTQL_API_KEY\", \"\"),\n) as textql:\n\n res = textql.agents.get_db_table_preview()\n\n # Handle response\n print(res)"
/textql.rpc.public.agent.AgentService/GetAgentRun:
post:
tags:
- AgentService
summary: GetAgentRun
operationId: AgentService_GetAgentRun
x-speakeasy-group: agents
x-speakeasy-name-override: getRun
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.GetAgentRunRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.GetAgentRunResponse'
x-codeSamples:
- lang: typescript
label: TypeScript (SDK)
source: "import { Textql } from \"@textql/sdk\";\n\nconst textql = new Textql({\n apiKey: process.env[\"TEXTQL_API_KEY\"] ?? \"\",\n});\n\nasync function run() {\n const result = await textql.agents.getRun({\n body: {},\n });\n\n console.log(result);\n}\n\nrun();"
- lang: python
label: Python (SDK)
source: "import os\nfrom textql_sdk import Textql\n\n\nwith Textql(\n api_key=os.getenv(\"TEXTQL_API_KEY\", \"\"),\n) as textql:\n\n res = textql.agents.get_run()\n\n # Handle response\n print(res)"
/textql.rpc.public.agent.AgentService/ListAgentRuns:
post:
tags:
- AgentService
summary: ListAgentRuns
operationId: AgentService_ListAgentRuns
x-speakeasy-group: agents
x-speakeasy-name-override: listRuns
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.ListAgentRunsRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.ListAgentRunsResponse'
x-codeSamples:
- lang: typescript
label: TypeScript (SDK)
source: "import { Textql } from \"@textql/sdk\";\n\nconst textql = new Textql({\n apiKey: process.env[\"TEXTQL_API_KEY\"] ?? \"\",\n});\n\nasync function run() {\n const result = await textql.agents.listRuns({\n body: {},\n });\n\n console.log(result);\n}\n\nrun();"
- lang: python
label: Python (SDK)
source: "import os\nfrom textql_sdk import Textql\n\n\nwith Textql(\n api_key=os.getenv(\"TEXTQL_API_KEY\", \"\"),\n) as textql:\n\n res = textql.agents.list_runs()\n\n # Handle response\n print(res)"
/textql.rpc.public.agent.AgentService/ListAgents:
post:
tags:
- AgentService
summary: ListAgents
operationId: AgentService_ListAgents
x-speakeasy-group: agents
x-speakeasy-name-override: list
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.ListAgentsRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.ListAgentsResponse'
x-codeSamples:
- lang: typescript
label: TypeScript (SDK)
source: "import { Textql } from \"@textql/sdk\";\n\nconst textql = new Textql({\n apiKey: process.env[\"TEXTQL_API_KEY\"] ?? \"\",\n});\n\nasync function run() {\n const result = await textql.agents.list({\n body: {},\n });\n\n console.log(result);\n}\n\nrun();"
- lang: python
label: Python (SDK)
source: "import os\nfrom textql_sdk import Textql\n\n\nwith Textql(\n api_key=os.getenv(\"TEXTQL_API_KEY\", \"\"),\n) as textql:\n\n res = textql.agents.list()\n\n # Handle response\n print(res)"
/textql.rpc.public.agent.AgentService/ResetAgentAvatar:
post:
tags:
- AgentService
summary: ResetAgentAvatar
operationId: AgentService_ResetAgentAvatar
x-speakeasy-group: agents
x-speakeasy-name-override: resetAgentAvatar
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.ResetAgentAvatarRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.ResetAgentAvatarResponse'
x-codeSamples:
- lang: typescript
label: TypeScript (SDK)
source: "import { Textql } from \"@textql/sdk\";\n\nconst textql = new Textql({\n apiKey: process.env[\"TEXTQL_API_KEY\"] ?? \"\",\n});\n\nasync function run() {\n const result = await textql.agents.resetAgentAvatar({\n body: {},\n });\n\n console.log(result);\n}\n\nrun();"
- lang: python
label: Python (SDK)
source: "import os\nfrom textql_sdk import Textql\n\n\nwith Textql(\n api_key=os.getenv(\"TEXTQL_API_KEY\", \"\"),\n) as textql:\n\n res = textql.agents.reset_agent_avatar()\n\n # Handle response\n print(res)"
/textql.rpc.public.agent.AgentService/TriggerAgent:
post:
tags:
- AgentService
summary: TriggerAgent
operationId: AgentService_TriggerAgent
x-speakeasy-group: agents
x-speakeasy-name-override: triggerAgent
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.TriggerAgentRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.TriggerAgentResponse'
x-codeSamples:
- lang: typescript
label: TypeScript (SDK)
source: "import { Textql } from \"@textql/sdk\";\n\nconst textql = new Textql({\n apiKey: process.env[\"TEXTQL_API_KEY\"] ?? \"\",\n});\n\nasync function run() {\n const result = await textql.agents.triggerAgent({\n body: {},\n });\n\n console.log(result);\n}\n\nrun();"
- lang: python
label: Python (SDK)
source: "import os\nfrom textql_sdk import Textql\n\n\nwith Textql(\n api_key=os.getenv(\"TEXTQL_API_KEY\", \"\"),\n) as textql:\n\n res = textql.agents.trigger_agent()\n\n # Handle response\n print(res)"
/textql.rpc.public.agent.AgentService/UpdateAgent:
post:
tags:
- AgentService
summary: UpdateAgent
operationId: AgentService_UpdateAgent
x-speakeasy-group: agents
x-speakeasy-name-override: update
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.UpdateAgentRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.UpdateAgentResponse'
x-codeSamples:
- lang: typescript
label: TypeScript (SDK)
source: "import { Textql } from \"@textql/sdk\";\n\nconst textql = new Textql({\n apiKey: process.env[\"TEXTQL_API_KEY\"] ?? \"\",\n});\n\nasync function run() {\n const result = await textql.agents.update({\n body: {},\n });\n\n console.log(result);\n}\n\nrun();"
- lang: python
label: Python (SDK)
source: "import os\nfrom textql_sdk import Textql\n\n\nwith Textql(\n api_key=os.getenv(\"TEXTQL_API_KEY\", \"\"),\n) as textql:\n\n res = textql.agents.update()\n\n # Handle response\n print(res)"
/textql.rpc.public.agent.AgentService/UploadAgentAvatar:
post:
tags:
- AgentService
summary: UploadAgentAvatar
operationId: AgentService_UploadAgentAvatar
x-speakeasy-group: agents
x-speakeasy-name-override: uploadAgentAvatar
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.UploadAgentAvatarRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/textql.rpc.public.agent.UploadAgentAvatarResponse'
x-codeSamples:
- lang: typescript
label: TypeScript (SDK)
source: "import { Textql } from \"@textql/sdk\";\n\nconst textql = new Textql({\n apiKey: process.env[\"TEXTQL_API_KEY\"] ?? \"\",\n});\n\nasync function run() {\n const result = await textql.agents.uploadAgentAvatar({\n body: {},\n });\n\n console.log(result);\n}\n\nrun();"
- lang: python
label: Python (SDK)
source: "import os\nfrom textql_sdk import Textql\n\n\nwith Textql(\n api_key=os.getenv(\"TEXTQL_API_KEY\", \"\"),\n) as textql:\n\n res = textql.agents.upload_agent_avatar()\n\n # Handle response\n print(res)"
components:
schemas:
textql.rpc.public.chat.EgressSummary:
type: object
properties:
totalCalls:
type: integer
title: total_calls
format: int32
outcomeCounts:
type: object
title: outcome_counts
additionalProperties:
type: integer
title: value
format: int32
calls:
type: array
items:
$ref: '#/components/schemas/textql.rpc.public.chat.EgressCall'
title: calls
title: EgressSummary
additionalProperties: false
textql.rpc.public.agent.AgentRunTriggerGeo:
type: object
properties:
city:
type: string
title: city
region:
type: string
title: region
country:
type: string
title: country
countryCode:
type: string
title: country_code
title: AgentRunTriggerGeo
additionalProperties: false
textql.rpc.public.agent.UploadAgentAvatarResponse:
type: object
properties:
profileImageUrl:
type: string
title: profile_image_url
description: Signed URL of the newly uploaded avatar.
title: UploadAgentAvatarResponse
additionalProperties: false
textql.rpc.public.agent.CreateAgentRequest:
type: object
properties:
name:
type: string
title: name
prompt:
type: string
title: prompt
paradigmOptions:
title: paradigm_options
nullable: true
$ref: '#/components/schemas/textql.rpc.public.paradigm.ParadigmOptions'
sourceSuggestionId:
type: string
title: source_suggestion_id
slackChannelId:
type: string
title: slack_channel_id
nullable: true
slackDmUserIds:
type: array
items:
type: string
title: slack_dm_user_ids
skipOrgDefaultChannel:
type: boolean
title: skip_org_default_channel
llmModel:
title: llm_model
nullable: true
$ref: '#/components/schemas/textql.rpc.public.chat.LlmModel'
fastMode:
type: boolean
title: fast_mode
nullable: true
isStateful:
type: boolean
title: is_stateful
nullable: true
postingFrequencyCrons:
type: array
items:
type: string
title: posting_frequency_crons
emailRecipientMemberIds:
type: array
items:
type: string
title: email_recipient_member_ids
channelIds:
type: array
items:
type: string
title: channel_ids
teamsChannelId:
type: string
title: teams_channel_id
nullable: true
teamsDmUserAadIds:
type: array
items:
type: string
title: teams_dm_user_aad_ids
slackTrigger:
title: slack_trigger
nullable: true
$ref: '#/components/schemas/textql.rpc.public.agent.SlackAgentTrigger'
postingFrequencyCadences:
type: array
items:
type: string
title: posting_frequency_cadences
description: "Index-aligned with posting_frequency_crons. A non-empty cadence\n (HOURLY/FOUR-HOUR/EIGHT-HOUR/DAILY/WEEKLY) marks a flexible schedule whose\n cron the backend generates; \"\" (or an empty list) means exact."
callableAsSubagent:
type: boolean
title: callable_as_subagent
description: "Unset defaults to true: new agents are delegatable unless the caller opts\n out. Mirrors allow_ad_hoc_subagents below."
nullable: true
subagentInvokerMemberIds:
type: array
items:
type: string
title: subagent_invoker_member_ids
subagentInvokerRoleIds:
type: array
items:
type: string
title: subagent_invoker_role_ids
feedEnabled:
type: boolean
title: feed_enabled
nullable: true
subagentAgentIds:
type: array
items:
type: string
title: subagent_agent_ids
allowAdHocSubagents:
type: boolean
title: allow_ad_hoc_subagents
nullable: true
title: CreateAgentRequest
additionalProperties: false
textql.rpc.public.agent.Agent:
type: object
properties:
id:
type: string
title: id
name:
type: string
title: name
prompt:
type: string
title: prompt
isActive:
type: boolean
title: is_active
lastPostAt:
title: last_post_at
$ref: '#/components/schemas/google.protobuf.Timestamp'
paradigmOptions:
title: paradigm_options
nullable: true
$ref: '#/components/schemas/textql.rpc.public.paradigm.ParadigmOptions'
postCount:
type: integer
title: post_count
format: int32
commentCount:
type: integer
title: comment_count
format: int32
voteCount:
type: integer
title: vote_count
format: int32
memberId:
type: string
title: member_id
memberName:
type: string
title: member_name
lastChatId:
type: string
title: last_chat_id
hasWritePermission:
type: boolean
title: has_write_permission
nullable: true
slackChannelId:
type: string
title: slack_channel_id
description: Notification delivery
nullable: true
slackDmUserIds:
type: array
items:
type: string
title: slack_dm_user_ids
skipOrgDefaultChannel:
type: boolean
title: skip_org_default_channel
llmModel:
title: llm_model
nullable: true
$ref: '#/components/schemas/textql.rpc.public.chat.LlmModel'
fastMode:
type: boolean
title: fast_mode
nullable: true
isStateful:
type: boolean
title: is_stateful
description: whether or not we inject past run history
nullable: true
postingFrequencyCrons:
type: array
items:
type: string
title: posting_frequency_crons
emailOutputEnabled:
type: boolean
title: email_output_enabled
emailRecipientMemberIds:
type: array
items:
type: string
title: email_recipient_member_ids
webhookTriggerId:
type: string
title: webhook_trigger_id
channelIds:
type: array
items:
type: string
title: channel_ids
teamsChannelId:
type: string
title: teams_channel_id
nullable: true
teamsDmUserAadIds:
type: array
items:
type: string
title: teams_dm_user_aad_ids
slackTrigger:
title: slack_trigger
nullable: true
$ref: '#/components/schemas/textql.rpc.public.agent.SlackAgentTrigger'
profileImageUrl:
type: string
title: profile_image_url
postingFrequencyCadences:
type: array
items:
type: string
title: posting_frequency_cadences
description: "Index-aligned with posting_frequency_crons. Each entry is the flexible\n cadence (HOURLY/FOUR-HOUR/EIGHT-HOUR/DAILY/WEEKLY) the schedule came from,\n or \"\" when the schedule is an exact custom cron."
callableAsSubagent:
type: boolean
title: callable_as_subagent
description: "Whether this agent participates in the feed (posts/comments/engages, feed\n tools, feed persona prompt). Delivery config (channels, recipients, slack,\n teams) is only meaningful when true."
subagentInvokerMemberIds:
type: array
items:
type: string
title: subagent_invoker_member_ids
subagentInvokerRoleIds:
type: array
items:
type: string
title: subagent_invoker_role_ids
feedEnabled:
type: boolean
title: feed_enabled
subagentAgentIds:
type: array
items:
type: string
title: subagent_agent_ids
allowAdHocSubagents:
type: boolean
title: allow_ad_hoc_subagents
title: Agent
additionalProperties: false
textql.rpc.public.agent.GetAgentRunRequest:
type: object
properties:
runId:
type: string
title: run_id
title: GetAgentRunRequest
additionalProperties: false
textql.rpc.public.agent.GetAgentRequest:
type: object
properties:
agentId:
# --- truncated at 32 KB (62 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/textql/refs/heads/main/openapi/textql-agentservice-api-openapi.yml