Agentic virtual agents public APIs
Genesys Cloud Developer Center contains the public API schemas for agentic virtual agents. For more information, see API Explorer.
discriminator pattern used by certain OpenAPI 2.0 contracts. As a result, some fields and subtypes are not displayed.The API documentation is currently being migrated to the OpenAPI 3.0 standard, which supports the discriminator pattern. Until this migration is complete, direct public API clients for agentic virtual agent resources can use the underlying OpenAPI 2.0 specification below, which contains the complete definitions of all agentic virtual agent contracts. This specification also includes the fields that are not currently displayed in the Developer Center API documentation.
Agentic virtual agents OpenAPI 2.0 specification
You can download the agentic virtual agent APIs in the OpenAPI 2.0 specification as a .json file.
Example
The Tool contract has multiple subtypes, for example, one for a Data Action and another for a knowledge base tool. The discriminator pattern has two parts: the base contract and the subtype. Combine these two parts to form the complete contract.
The base type declares the discriminator
"AgenticVirtualAgentTool": {
"type": "object",
"required": ["description", "name", "target", "type"],
"discriminator": "type",
"properties": {
"type": {
"type": "string",
"description": "Tool type discriminator.",
"enum": ["KnowledgeSetting", "KnowledgeBase", "DataAction", "ExternalA2AServer"]
},
"name": { "type": "string", ... },
"description": { "type": "string", ... },
...
}
}
"discriminator": "type"names the property whose value decides the concrete subtype.- The
enumdefined on thetypeproperty lists the allowed discriminator values. Each value corresponds to a subtype, which links back to the base through itsx-discriminator-value(vendor extension) field, as shown after this.
The subtypes reference the base with “allOf”
"AgenticVirtualAgentKnowledgeBaseTool": {
"allOf": [
{ "$ref": "#/definitions/AgenticVirtualAgentTool" },
{
"type": "object",
"properties": {
"inputs": { "type": "array", "items": {...} },
"inputValidation": { "type": "array", "items": {...} }
},
"description": "Knowledge base tool."
}
],
"x-discriminator-value": "KnowledgeBase"
}
allOfmeans that “this type is the base plus these additional properties.” The first element references the base contract, and the second adds subtype-specific fields.x-discriminator-valuelinks theenumfrom the base to this subtype.
[NEXT] Was this article helpful?
Get user feedback about articles.