ondewo/csi/conversation.proto

Top

Services

Conversations

Endpoints of CSI service.

Service Methods

CreateS2sPipeline

rpc CreateS2sPipeline (S2sPipeline) returns (.google.protobuf.Empty)

Create the S2S pipeline specified in the request message. The pipeline with the specified ID must not exist.

Examples:

grpcurl -plaintext -d '{
  "id": "pizza",
  "s2t_pipeline_id": "default_german",
  "nlu_project_id": "1f3425d2-41fd-4970-87e6-88e8e121bb49",
  "nlu_language_code": "de",
  "t2s_pipeline_id": "default_german"
}' localhost:50051 ondewo.csi.Conversations.CreateS2sPipeline
{}

GetS2sPipeline

rpc GetS2sPipeline (S2sPipelineId) returns (S2sPipeline)

Retrieve the S2S pipeline with the ID specified in the request message.

Examples:

grpcurl -plaintext -d '{"id": "pizza"}' localhost:50051 ondewo.csi.Conversations.GetS2sPipeline
{ "id": "pizza", "s2t_pipeline_id": "default_german", "nlu_project_id": "1f3425d2-41fd-4970-87e6-88e8e121bb49", "nlu_language_code": "de", "t2s_pipeline_id": "default_german" }

UpdateS2sPipeline

rpc UpdateS2sPipeline (S2sPipeline) returns (.google.protobuf.Empty)

Update the S2S pipeline specified in the request message. The pipeline must exist.

Examples:

grpcurl -plaintext -d '{
  "id": "pizza",
  "s2t_pipeline_id": "default_german",
  "nlu_project_id": "1f3425d2-41fd-4970-87e6-88e8e121bb49",
  "nlu_language_code": "en",
  "t2s_pipeline_id": "default_german"
}' localhost:50051 ondewo.csi.Conversations.UpdateS2sPipeline
{}

DeleteS2sPipeline

rpc DeleteS2sPipeline (S2sPipelineId) returns (.google.protobuf.Empty)

Delete the S2S pipeline with the ID specified in the request message. The pipeline must exist.

Examples:

grpcurl -plaintext -d '{"id": "pizza"}' localhost:50051 ondewo.csi.Conversations.DeleteS2sPipeline
{}

ListS2sPipelines

rpc ListS2sPipelines (ListS2sPipelinesRequest) returns (ListS2sPipelinesResponse)

List all S2S pipelines of the server.

Examples:

grpcurl -plaintext localhost:50051 ondewo.csi.Conversations.ListS2sPipelines
{ "pipelines": [ { "id": "pizza", "s2t_pipeline_id": "default_german", "nlu_project_id": "1f3425d2-41fd-4970-87e6-88e8e121bb49", "nlu_language_code": "de", "t2s_pipeline_id": "default_german" } ] }

S2sStream

rpc S2sStream (stream S2sStreamRequest) returns (stream S2sStreamResponse)

Processes a natural language query in audio format in a streaming fashion and returns structured, actionable data as a result.

CheckUpstreamHealth

rpc CheckUpstreamHealth (.google.protobuf.Empty) returns (CheckUpstreamHealthResponse)

Check the health of S2T, NLU and T2S servers.

Examples:

grpcurl -plaintext localhost:50051 ondewo.csi.Conversations.CheckUpstreamHealth
All upstreams healthy: {} All upstreams unhealthy: { "s2t_status": { "code": 14, "message": "failed to connect to all addresses" }, "nlu_status": { "code": 14, "message": "failed to connect to all addresses" }, "t2s_status": { "code": 14, "message": "failed to connect to all addresses" } }

GetControlStream

rpc GetControlStream (ControlStreamRequest) returns (stream ControlStreamResponse)

Get the control stream to control sip, t2s, s2t etc. during a conversation.

SetControlStatus

rpc SetControlStatus (SetControlStatusRequest) returns (SetControlStatusResponse)

Send a message on the control stream to control sip, t2s, s2t etc. during a conversation.

Messages

CheckUpstreamHealthResponse

Health checks.

FieldTypeLabelDescription
s2t_status google.rpc.Status

Health checks for Speech-2-Text

nlu_status google.rpc.Status

Health checks for NLU

t2s_status google.rpc.Status

Health checks for Text-2-Speech

Condition

A condition message with its type and value.

A Condition can be of various types.

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:

Immediate execution:

{

"type": "immediate"

}

Number of interactions of the user with the AI agent:

{

"type": "interactions",

"value": "10"

}

Number of seconds:

{

"type": "duration",

"value": "3600"

}

At a specific date and time:

{

"type": "datetime",

"value": "2021-12-23T13:45:00.000Z"

}

FieldTypeLabelDescription
type ConditionType

Condition type

value string

Value of the condition. Examples of conditions values based on the condition type are given in the ConditionType documentation.

ControlMessage

A control message.

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:

{

"service": "<SERVICE_NAME>", // e.g. ondewo_s2t

"method": "<SERVICE_CONTROL_METHOD>", // e.g. update_config

"parameters": [

// primitive data types and JSON objects are possible

1,

1.0,

-2.0,

"string",

true,

{

// parameter JSON object

},

{

// Condition start object

},

{

// Condition end object [optional]

},

]

}

FieldTypeLabelDescription
service ControlMessageServiceName

Service to control. Valid service names are: ondewo_nlu, ondewo_t2s, ondewo_s2t, ondewo_sip and ondewo_csi.

method ControlMessageServiceMethod

Method to invoke on the service

parameters ControlMessageServiceParameters

Parameters to use to invoke the method of the service

ControlMessageServiceParameters

Parameters of the control message passed to the service specified in the control message.

FieldTypeLabelDescription
t2s_config ondewo.t2s.RequestConfig

Text-2-Speech: configuration to control the synthesis of a text into audio

s2t_config ondewo.s2t.TranscribeRequestConfig

Speech-2-Text: configuration to control the recognition of text based on human voice audio

transfer_id string

SIP: callee id to transfer call to

wav_files bytes repeated

SIP: bytes of audio files to play to a caller

text string

text, e.g. for NLU detect intent response or Text-2-Speech voice synthesis

context ondewo.nlu.Context

NLU: context for creating, updating or deleting contextual information from a NLU session

session_id string

NLU: the session id of a NLU session

context_name string

NLU: the name of the context of a NLU session

condition_start Condition

CSI: the condition that defines when a control message should be executed

condition_end Condition

CSI: the condition that defines when a control message should stop its execution

ControlStreamRequest

Control stream message.

ControlStreamResponse

Control stream response message.

FieldTypeLabelDescription
control_status ControlStatus

Control status

ListS2sPipelinesRequest

The top-level message sent by client to ListS2sPipelines endpoint. Currently without arguments.

TODO: add filtering options

ListS2sPipelinesResponse

The top-level message received from ListS2sPipelines endpoint.

FieldTypeLabelDescription
pipelines S2sPipeline repeated

Collection of S2S pipelines of the server.

S2sPipeline

The top-level message sent by client to CreateS2sPipeline and UpdateS2sPipeline endpoints and received from GetS2sPipeline endpoint.

FieldTypeLabelDescription
id string

Required. CSI pipeline identifier consisting of S2T, NLU and T2S configuration. ID can be any non-empty string.

s2t_pipeline_id string

Required. S2T pipeline ID, e.g. "german_general"

nlu_project_id string

Required. NLU project ID, usually a hash, e.g. "ae33586b-x2s2-494a-aa73-1af0589cfc56".

nlu_language_code string

Required. Language code present in the corresponding NLU project, e.g. "de".

t2s_pipeline_id string

Required. T2S pipeline ID, e.g. "kerstin".

S2sPipelineId

The top-level message sent by client to GetS2sPipeline and DeleteS2sPipeline endpoints.

FieldTypeLabelDescription
id string

Required. CSI pipeline identifier.

S2sStreamRequest

The top-level message sent by the client to the S2sStream method.

Multiple request messages should be sent in order:

FieldTypeLabelDescription
pipeline_id string

Optional. The CSI pipeline ID specified in the initial request.

session_id string

Optional. The session or call ID specified in the initial request. It's up to the API caller to choose an appropriate string. It can be a random number or some type of user identifier (preferably hashed).

audio bytes

Optional. The input audio content to be recognized.

end_of_stream bool

If true, the recognizer will not return any further hypotheses about this piece of the audio. May only be populated for event_type = RECOGNITION_EVENT_TRANSCRIPT.

initial_intent_display_name string

Optional. Intent display name to trigger in NLU system in the beginning of the conversation.

S2sStreamResponse

The top-level message returned from the S2sStream method.

A response message is returned for each utterance of the input stream. It contains the full response from NLU system in detect_intent_response or the full T2S response in synthesize_response.

Multiple response messages can be returned in order:

FieldTypeLabelDescription
detect_intent_response ondewo.nlu.DetectIntentResponse

full NLU detect intent response

synthesize_response ondewo.t2s.SynthesizeResponse

full T2S synthesize response

sip_trigger SipTrigger

SIP trigger message

SetControlStatusRequest

Request to set control status.

FieldTypeLabelDescription
control_status ControlStatus

Control status

SetControlStatusResponse

Response of setting the control status with the old and new status objects.

FieldTypeLabelDescription
old_control_status ControlStatus

Previous 'old' control status

new_control_status ControlStatus

Current 'new' control status

SipTrigger

SIP trigger message.

FieldTypeLabelDescription
type SipTrigger.SipTriggerType

Type of the SIP trigger.

content google.protobuf.Struct

extra parameters for the trigger

Enums

ConditionType

Type of condition that need to be satisfied to execute a control message.

NameNumberDescription
UNKNOWTYPE 0

Unknown type

immediate 1

Immediate execution of the control message. Example value need be given as a string in the format:

value="5"

duration 2

Duration in number of seconds after a control message should be executed. Example value need be given as a string in the format:

value="10"

datetime 3

Date and time when a control message should be executed. Example value need be given as a string in the format:

value="2021-12-23T13:45:00.000Z"

interactions 4

Number of interactions of the user with an ONDEWO AI agent after a control message should be executed. Example value need be given as a string in the format:

value="4"

ControlMessageServiceMethod

Control message methods to control services during a conversation.

NameNumberDescription
UNKNOWNMETHOD 0

Unknown method (default)

update_config 1

CSI: update configuration

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_s2t",
   "method": "update_config",
   "parameters": [
       {
           // Speech2TextConfig object
           "s2tPipelineId" : "s2t_pipeline_german_1",
           "languageModelName" : "language_model_german"
       },
       {
            // condition_start object => should take effect immediately
            "type": "immediate",
            "value": "0"
       },
       {
            // condition_end object - s2t config will be changed back to
            // last valid configuration after 10 interactions of user with
            // the AI agent
            "type": "interactions",
	           "value": 10
       },
   ]
}

undo_config 2

CSI: undo previous configuration update

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_s2t",
   "method": "undo_config",
   "parameters": [
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
	          // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty "{}"
       },
   ]
}

reset_config 3

CSI: reset configuration to default

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_s2t",
   "method": "reset_config",
   "parameters": [
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty "{}"
       },
   ]
}

end_call 4

SIP: end conversation / hang up call

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_sip",
   "method": "end_call",
   "parameters": [
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty "{}"
       },
   ]
}

transfer_call 5

SIP: transfer call

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_sip",
   "method": "transfer_call",
   "parameters": [
       {
	 	      "transfer_id": "+43123456789@127.0.0.10:5060",
       },
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty "{}"
       },
   ]
}

play_wav_files 6

SIP: play wav files on the call

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_sip",
   "method": "play_wav_files",
   "parameters": [
       {
	 	      "wav_files":  [
               <bytes_of_file_1>,
               <bytes_of_file_2>,
               <bytes_of_file_3>,
           ]
       },
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty “{}”
       },
   ]
}

play_text 7

SIP: play a certain text on the phone based on Text-2-Speech synthesis

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_sip",
   "method": "play_text",
   "parameters": [
       {
	 	      "text": "Welcome from ONDEWO AI Agent! How are you today?",
       },
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty "{}"
       },
   ]
}

mute 8

SIP: mute microphone

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_sip",
   "method": "mute",
   "parameters": [
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty "{}"
       },
   ]
}

un_mute 9

SIP: unmute microphone

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_sip",
   "method": "un_mute",
   "parameters": [
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty "{}"
       },
   ]
}

stop_all_control_messages 10

CSI: stop the execution of all running and scheduled control messages

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "",    <= empty string since it is for all services / no specific service
   "method": "stop_all_control_messages",
   "parameters": [
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty “{}”
       },
   ]
}

train_agent 11

NLU: train agent

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_nlu",
   "method": "train_agent",
   "parameters": [
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty "{}"
       },
   ]
}

cancel_train_agent 12

NLU: cancel the ongoing agent

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_nlu",
   "method": "cancel_train_agent",
   "parameters": [
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty "{}"
       },
   ]
}

delete_session 13

NLU: delete session and all session-related information

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_nlu",
   "method": "delete_session",
   "parameters": [
       {
	 	      "session_id": "97ea1a20-0784-442b-93c0-eb9e2469420e",
       },
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty "{}"
       },
   ]
}

delete_all_contexts 14

NLU: delete all context information in the current session

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_nlu",
   "method": "delete_all_contexts",
   "parameters": [
       {
	 	      "session_id": "97ea1a20-0784-442b-93c0-eb9e2469420e",
       },
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty "{}"
       },
   ]
}

create_context 15

NLU: create a context based on the provided contextual information in the current session

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_nlu",
   "method": "create_context",
   "parameters": [
       {
	 	      "context": {           <== <NLU Context Object as JSON object>
               "name": "projects/db46dcf8-2d2c-4115-ac38-eff443ea0e72/agent/sessions/ss2ea1a20-0784-442b-93c0-eb9e2469420e/contexts/78ea1a20-0784-442b-93c0-eb9e2469420e",
               ...,
           }
       },
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty “{}”
       },
   ]
}

update_context 16

NLU: update an existing context based on the provided contextual information in the current session

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_nlu",
   "method": "update_context",
   "parameters": [
       {
	 	      "context": {           <== <NLU Context Object as JSON object>
               "name": "projects/db46dcf8-2d2c-4115-ac38-eff443ea0e72/agent/sessions/2dea1a20-0784-442b-93c0-eb9e2469420e/contexts/78ea1a20-0784-442b-93c0-eb9e2469420e",
               ...,
           }
       },
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty “{}”
       },
   ]
}

delete_context 17

NLU: delete an existing context including all contextual information in the current session

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_nlu",
   "method": "delete_context",
   "parameters": [
       {
	 	      "session_id": "97ea1a20-0784-442b-93c0-eb9e2469420e",
	 	      "context_name": "78ea1a20-0784-442b-93c0-eb9e2469420e",
       },
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty "{}"
       },
   ]
}

detect_intent 18

NLU: execute a detect intent request based on the provided information in the current session

Example of a JSON how to invoke a control message via ONDEWO RABBITMQ service:


{
   "service": "ondewo_nlu",
   "method": "detect_intent",
   "parameters": [
       {
	 	      "session_id": "97ea1a20-0784-442b-93c0-eb9e2469420e",
	 	      "text": "Are you an artificial intelligence?",
       },
       {
	 	      // condition_start object
       },
       {
	 	      // condition_end object (OPTIONAL) - for permanent change
           // no condition_end needs to be supplied i.e.
		      // this parameter is missing or empty "{}"
       },
   ]
}

ControlMessageServiceName

Control message services.

NameNumberDescription
UNKNOWNNAME 0

Unknown control message service name

ondewo_s2t 1

Speech-2-Text control message service name

ondewo_t2s 2

Text-2-Speech control message service name

ondewo_nlu 3

NLU control message service name

ondewo_sip 4

SIP control message service name

ondewo_vtsi 5

VTSI control message service name

ondewo_csi 6

CSI control message service name

ondewo_survey 7

Survey control message service name

ControlStatus

Control status.

NameNumberDescription
OK 0

Status that control stream is ok

EMERGENCY_STOP 1

Status that control stream needs to stop immediately

VAD_START_OF_SPEECH 2

Status that voice activity detection detected start of speech

SipTrigger.SipTriggerType

Type of SIP trigger that can be executed during a conversation.

NameNumberDescription
UNSPECIFIED 0

should never be used

HANGUP 1

hard hangup

HUMAN_HANDOVER 2

handover to human

SEND_NOW 3

send now

PAUSE 4

pause

TRANSFER 5

transfer

INVITE 6

invite to conference call

PLAY_AUDIO 7

play audio

ondewo/nlu/agent.proto

Top

File-level comment for ondewo/nlu/agent.proto.

This file contains a single service Agents.

The most important messages is Agent and its most complicated field is configs.

Services

Agents

Agents are best described as Natural Language Understanding (NLU) modules that transform user requests into actionable data. You can include agents in your app, product, or service to determine user intent and respond to the user in a natural way.

After you create an agent, you can add Intents, Contexts, Entity Types, Webhooks, and so on to manage the flow of a conversation and match user input to predefined intents and actions.

You can create an agent using both Dialogflow Standard Edition and Dialogflow Enterprise Edition. For details, see Dialogflow Editions.

You can save your agent for backup or versioning by exporting the agent by using the ExportAgent method. You can import a saved agent by using the ImportAgent method.

Dialogflow provides several prebuilt agents for common conversation scenarios such as determining a date and time, converting currency, and so on.

For more information about agents, see the Dialogflow documentation.

Service Methods

CreateAgent

rpc CreateAgent (CreateAgentRequest) returns (Agent)
Creates the specified agent. Examples:
grpcurl -plaintext -H 'cai-token: aimp' -d '{
  "agent": {
    "display_name": "My Pizza Bot",
    "default_language_code": "en",
    "supported_language_codes": ["en"],
    "time_zone": "Europe/Vienna",
    "nlu_platform": "ONDEWO"
  }
}' localhost:50055 ondewo.nlu.Agents.CreateAgent
{ "parent": "projects/76aaf4f3-a1f6-4fda-b4b3-351c64e65bc4/agent", "display_name": "Pizza Bot", "default_language_code": "en", "supported_language_codes": [ "en" ], "time_zone": "Europe/Vienna", "nlu_platform": "ONDEWO", "owner_id": "5aac51b8-668f-49dd-913f-cc683e56af34" }

UpdateAgent

rpc UpdateAgent (UpdateAgentRequest) returns (Agent)
Updates the specified agent. Examples:
grpcurl -plaintext -H 'cai-token: aimp' -d '{
  "agent": {
    "parent": "projects/76aaf4f3-a1f6-4fda-b4b3-351c64e65bc4/agent",
    "display_name": "Pizza Bot 2",
    "supported_language_codes": ["en", "de"]
  },
  "update_mask": {
    "paths": [
      "agent.display_name",
      "agent.supported_language_codes"
    ]
  }
}' localhost:50055 ondewo.nlu.Agents.UpdateAgent
{ "parent": "projects/76aaf4f3-a1f6-4fda-b4b3-351c64e65bc4/agent", "display_name": "Pizza Bot 2", "default_language_code": "en", "supported_language_codes": [ "en", "de" ], "time_zone": "Europe/Vienna", "nlu_platform": "ONDEWO", "owner_id": "5aac51b8-668f-49dd-913f-cc683e56af34" }

GetAgent

rpc GetAgent (GetAgentRequest) returns (Agent)
Retrieves the specified agent. Examples:
grpcurl -plaintext -H 'cai-token: aimp' -d '{
  "parent": "projects/76aaf4f3-a1f6-4fda-b4b3-351c64e65bc4/agent"
}' localhost:50055 ondewo.nlu.Agents.GetAgent
{ "parent": "projects/76aaf4f3-a1f6-4fda-b4b3-351c64e65bc4/agent", "display_name": "Pizza Bot 2", "default_language_code": "en", "supported_language_codes": [ "en", "de" ], "time_zone": "Europe/Vienna", "nlu_platform": "ONDEWO", "configs": {...}, "owner_id": "5aac51b8-668f-49dd-913f-cc683e56af34" }

DeleteAgent

rpc DeleteAgent (DeleteAgentRequest) returns (.google.protobuf.Empty)
Deletes the specified agent. Examples:
grpcurl -plaintext -H 'cai-token: aimp' -d '{
  "parent": "projects/76aaf4f3-a1f6-4fda-b4b3-351c64e65bc4/agent"
}' localhost:50055 ondewo.nlu.Agents.DeleteAgent
{}

DeleteAllAgents

rpc DeleteAllAgents (.google.protobuf.Empty) returns (.google.protobuf.Empty)
Deletes all agents in the server (for development purposes only). Examples:
grpcurl -plaintext -H 'cai-token: aimp' localhost:50055 ondewo.nlu.Agents.DeleteAllAgents
{}

ListAgents

rpc ListAgents (ListAgentsRequest) returns (ListAgentsResponse)
Lists agents in the server associated to the current user Examples:
grpcurl -plaintext -H 'cai-token: aimp' localhost:50055 ondewo.nlu.Agents.ListAgents
{ "agents_with_owners": [ { "agent": { "parent": "projects/76aaf4f3-a1f6-4fda-b4b3-351c64e65bc4/agent", "display_name": "Pizza Bot 2", "owner_id": "5aac51b8-668f-49dd-913f-cc683e56af34" }, "owner": { "user_id": "5aac51b8-668f-49dd-913f-cc683e56af34", "display_name": "admin", "server_role_id": 3, "user_email": "admin@ondewo.com" } } ], "next_page_token": "current_index-1" }

ListAgentsOfUser

rpc ListAgentsOfUser (ListAgentsRequest) returns (ListAgentsOfUserResponse)
Lists agents in the server associated to the given user Examples:
grpcurl -plaintext -H 'cai-token: aimp' localhost:50055 ondewo.nlu.Agents.ListAgentsOfUser
{ "agents_of_user_with_owners": [ { "agent_with_owner": { "agent": { "parent": "projects/76aaf4f3-a1f6-4fda-b4b3-351c64e65bc4/agent", "display_name": "Pizza Bot 2", "owner_id": "5aac51b8-668f-49dd-913f-cc683e56af34" }, "owner": { "user_id": "5aac51b8-668f-49dd-913f-cc683e56af34", "display_name": "admin", "server_role_id": 3, "user_email": "admin@ondewo.com" } }, "project_role": { "role_id": 4, "name": "ADMIN" } } ], "next_page_token": "current_index-1" }

ListAllAgents

rpc ListAllAgents (ListAgentsRequest) returns (ListAgentsResponse)
Lists all agents in the server Examples:
grpcurl -plaintext -H 'cai-token: aimp' localhost:50055 ondewo.nlu.Agents.ListAllAgents
{ "agents_with_owners": [ { "agent": { "parent": "projects/76aaf4f3-a1f6-4fda-b4b3-351c64e65bc4/agent", "display_name": "Pizza Bot 2", "owner_id": "5aac51b8-668f-49dd-913f-cc683e56af34" }, "owner": { "user_id": "5aac51b8-668f-49dd-913f-cc683e56af34", "display_name": "admin", "server_role_id": 3, "user_email": "admin@ondewo.com" } } ], "next_page_token": "current_index-1" }

AddUserToProject

rpc AddUserToProject (AddUserToProjectRequest) returns (.google.protobuf.Empty)
Adds a user with specified id to the project (agent)

RemoveUserFromProject

rpc RemoveUserFromProject (RemoveUserFromProjectRequest) returns (.google.protobuf.Empty)
Removes a user with specified id from the project (agent)

ListUsersInProject

rpc ListUsersInProject (ListUsersInProjectRequest) returns (ListUsersInProjectResponse)
Lists users in the project (agent)

GetPlatformInfo

rpc GetPlatformInfo (.google.protobuf.Empty) returns (GetPlatformInfoResponse)
Gets information from the platform
Request parameter: google.protobuf.Empty

ListProjectPermissions

rpc ListProjectPermissions (ListProjectPermissionsRequest) returns (ListProjectPermissionsResponse)
List permissions from the project (agent)

TrainAgent

rpc TrainAgent (TrainAgentRequest) returns (Operation)
Trains the specified agent. Operation <response: google.protobuf.Empty, metadata: google.protobuf.Struct>

BuildCache

rpc BuildCache (BuildCacheRequest) returns (Operation)
Builds cache for the specified agent. Operation <response: google.protobuf.Empty, metadata: google.protobuf.Struct>

ExportAgent

rpc ExportAgent (ExportAgentRequest) returns (Operation)
Exports the specified agent to a ZIP file.
Operation <response: ExportAgentResponse, metadata: google.protobuf.Struct>

ExportBenchmarkAgent

rpc ExportBenchmarkAgent (ExportBenchmarkAgentRequest) returns (Operation)
Exports the specified train agent to a ZIP file after train-test split, returns the test TrainingPhrase list.

ImportAgent

rpc ImportAgent (ImportAgentRequest) returns (Operation)
Imports the specified agent from a ZIP file.
Uploads new intents and entity types without deleting the existing ones. Intents and entity types with the same name are replaced with the new versions from ImportAgentRequest.
Operation <response: google.protobuf.Empty, metadata: google.protobuf.Struct>

MigrateAgent

rpc MigrateAgent (MigrateAgentRequest) returns (Operation)

OptimizeRankingMatch

rpc OptimizeRankingMatch (OptimizeRankingMatchRequest) returns (Operation)

RestoreAgent

rpc RestoreAgent (RestoreAgentRequest) returns (Operation)
Restores the specified agent from a ZIP file.
Replaces the current agent version with a new one. All the intents and entity types in the older version are deleted.
Operation <response: google.protobuf.Empty, metadata: google.protobuf.Struct>

GetAgentStatistics

rpc GetAgentStatistics (GetAgentStatisticsRequest) returns (GetAgentStatisticsResponse)
Gets statistics for the agent

GetSessionsStatistics

rpc GetSessionsStatistics (GetSessionsStatisticsRequest) returns (GetSessionsStatisticsResponse)

SetAgentStatus

rpc SetAgentStatus (SetAgentStatusRequest) returns (Agent)
Sets status for the agent

SetResources

rpc SetResources (SetResourcesRequest) returns (.google.protobuf.Empty)
Sets resources

DeleteResources

rpc DeleteResources (DeleteResourcesRequest) returns (.google.protobuf.Empty)
Deletes resources

ExportResources

rpc ExportResources (ExportResourcesRequest) returns (ExportResourcesResponse)
Exports resources

GetModelStatuses

rpc GetModelStatuses (GetModelStatusesRequest) returns (GetModelStatusesResponse)
Get statuses of models related to project

GetPlatformMapping

rpc GetPlatformMapping (GetPlatformMappingRequest) returns (PlatformMapping)
Get all set platform name mappings for an Agent

SetPlatformMapping

rpc SetPlatformMapping (PlatformMapping) returns (PlatformMapping)
Set platform name mappings for an Agent

GetFullTextSearchEntityType

rpc GetFullTextSearchEntityType (FullTextSearchRequest) returns (FullTextSearchResponseEntityType)
Full text search endpoint in entity types

GetFullTextSearchEntity

rpc GetFullTextSearchEntity (FullTextSearchRequest) returns (FullTextSearchResponseEntity)
Full text search endpoint in entities

GetFullTextSearchEntitySynonym

rpc GetFullTextSearchEntitySynonym (FullTextSearchRequest) returns (FullTextSearchResponseEntitySynonym)
Full text search endpoint in entity synonyms

GetFullTextSearchIntent

rpc GetFullTextSearchIntent (FullTextSearchRequest) returns (FullTextSearchResponseIntent)
Full text search endpoint in intents

GetFullTextSearchIntentContextIn

rpc GetFullTextSearchIntentContextIn (FullTextSearchRequest) returns (FullTextSearchResponseIntentContextIn)
Full text search endpoint in context ins of intents

GetFullTextSearchIntentContextOut

rpc GetFullTextSearchIntentContextOut (FullTextSearchRequest) returns (FullTextSearchResponseIntentContextOut)
Full text search endpoint in context outs of intents

GetFullTextSearchIntentUsersays

rpc GetFullTextSearchIntentUsersays (FullTextSearchRequest) returns (FullTextSearchResponseIntentUsersays)
Full text search endpoint in user says of intents

GetFullTextSearchIntentTags

rpc GetFullTextSearchIntentTags (FullTextSearchRequest) returns (FullTextSearchResponseIntentTags)
Full text search endpoint in tags of intents

GetFullTextSearchIntentResponse

rpc GetFullTextSearchIntentResponse (FullTextSearchRequest) returns (FullTextSearchResponseIntentResponse)
Full text search endpoint in responses of intents

GetFullTextSearchIntentParameters

rpc GetFullTextSearchIntentParameters (FullTextSearchRequest) returns (FullTextSearchResponseIntentParameters)
Full text search endpoint in parameters of intents

ReindexAgent

rpc ReindexAgent (ReindexAgentRequest) returns (Operation)
Force reindexing Intent and Entity data of Agent

Methods with HTTP bindings

Method Name Method Pattern Body
CreateAgent POST /v2/projects *
UpdateAgent PATCH /v2/{agent.parent=projects/*/agent} *
GetAgent GET /v2/{parent=projects/*/agent}
DeleteAgent DELETE /v2/{parent=projects/*/agent}
DeleteAllAgents DELETE /v2/projects
ListAgents GET /v2/projects
ListAgentsOfUser GET /v2/projects
ListAllAgents GET /v2/projects:all
AddUserToProject POST /v2/{parent=projects/*/agent}/users/{user_id=*} *
RemoveUserFromProject DELETE /v2/{parent=projects/*/agent}/users/{user_id=*}
ListUsersInProject GET /v2/{parent=projects/*/agent}/users
GetPlatformInfo GET /v2/version
ListProjectPermissions GET /v2/project_permissions
TrainAgent POST /v2/{parent=projects/*/agent}:train *
BuildCache POST /v2/{parent=projects/*/agent}:build_cache *
ExportAgent POST /v2/{parent=projects/*/agent}:export *
ExportBenchmarkAgent POST /v2/{parent=projects/*/agent}:export_benchmark *
ImportAgent POST /v2/{parent=projects/*/agent}:import *
MigrateAgent POST /v2/{parent=projects/*/agent}:migrate *
OptimizeRankingMatch POST /v2/{parent=projects/*/agent}:optimize_ranking_match *
RestoreAgent POST /v2/{parent=projects/*/agent}:restore *
GetAgentStatistics GET /v2/{parent=projects/*/agent}:statistics
GetSessionsStatistics GET /v2/{parent=projects/*/agent}:session_statistics
SetAgentStatus POST /v2/{parent=projects/*/agent}:status *
SetResources POST /v2/{parent=projects/*/agent}:resources *
DeleteResources DELETE /v2/{parent=projects/*/agent}:resources
ExportResources POST /v2/{parent=projects/*/agent}:resources *
Messages

AddUserToProjectRequest

Request to add user to project.

FieldTypeLabelDescription
parent string

Required. The project that the agent to train is associated with. Format:

projects/<project_uuid>

user_id string

id of the user

project_role_id uint32

ID of the project role of the user

Agent

Project/Agent messages

FieldTypeLabelDescription
parent string

Required. The project of this agent. Format:

projects/<project_uuid>/agent
Read-only in the Agent message

display_name string

Required. The name of this agent.

default_language_code string

Required. The default language of the agent as a language tag. See Language Support for a list of the currently supported language codes. This field cannot be set by the Update method.

supported_language_codes string repeated

Optional. The list of all languages supported by this agent (except for the default_language_code).

time_zone string

Required. The time zone of this agent from the time zone database, e.g., America/New_York, Europe/Paris.

nlu_platform string

Required. Specifies the format of the agent data.

configs google.protobuf.Struct

Optional. Agent configuration as OndewoConfig converted to Struct format.

owner_id string

Optional. User id of the project owner. If empty, in CreateAgent call it is set to user id in the call metadata. Read-only in the Agent message

status AgentStatus

Optional. Status of the agent Read-only in the Agent message

description string

Optional. Description of the agent.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

AgentOfUserWithOwner

This message contains the agent of user with owner

FieldTypeLabelDescription
agent_with_owner AgentWithOwner

Required. Agent message and User message of its owner.

project_role ProjectRole

Required. The role of the user in the project in SHALLOW view (only ID and name fields are populated)

AgentSorting

Sorting order of agent

FieldTypeLabelDescription
sorting_field AgentSorting.AgentSortingField

sorting field for agent sorting

sorting_mode SortingMode

Sorting mode

AgentWithOwner

This message contains the agent with owner

FieldTypeLabelDescription
agent Agent

The agent

owner User

User who created the agent

BuildCacheRequest

The request message for Agents.TrainAgentBuildCache.

FieldTypeLabelDescription
parent string

Required. The project that the agent to build cache is associated with. Format:

projects/<project_uuid>

branch string

Name of the branch of the agent for versioning. The default branch name is develop.

CreateAgentRequest

Request to create an agent

FieldTypeLabelDescription
agent Agent

The agent

agent_view AgentView

Optional. Specify the view of the returned agent (sparse view by default)

CustomPlatformInfo

This message contains the information of custom platform

FieldTypeLabelDescription
platform Intent.Message.Platform

Required. ID of the Platform. Custom Intent.Message.Platform placeholder. Note: it will not work with non-placeholders values

display_name string

Required. Name to be displayed.

position uint32

Optional. Sorting position of the GetPlatformMappingRequest.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

DeleteAgentRequest

Request to delete the agent

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

DeleteResourcesRequest

Request to delete resources

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

name string

Required. Name of the resource to delete.

type string

Required. Type of the resource (e.g., "audio", "image", "file").

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

ExportAgentRequest

The request message for Agents.ExportAgent.

FieldTypeLabelDescription
parent string

Required. The project that the agent to export is associated with. Format:

projects/<project_uuid>

agent_uri string

Optional. The Google Cloud Storage URI to export the agent to. Note: The URI must start with "gs://". If left unspecified, the serialized agent is returned inline.

compression_level int32

Optional. The compression level of the zip file created. Valid range 1-9; the grpc-default value 0 will be mapped to 1, other values cause an error in the request validation handler.

ExportAgentResponse

The response message for Agents.ExportAgent.

FieldTypeLabelDescription
agent_uri string

The URI to a file containing the exported agent. This field is populated only if agent_uri is specified in ExportAgentRequest.

agent_content bytes

The exported agent. Example for how to export an agent to a zip file via a command line:

curl \
  'https://dialogflow.googleapis.com/v2/projects//agent:export'\
  -X POST \
  -H 'Authorization: Bearer '$(gcloud auth print-access-token) \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --compressed \
  --data-binary '{}' \
| grep agentContent | sed -e 's/.*"agentContent": "\([^"]*\)".*/\1/' \
| base64 --decode > 

ExportBenchmarkAgentRequest

Request to export benchmark agent

FieldTypeLabelDescription
parent string

Agent related info Required. The project that the agent to export is associated with. Format:

projects/<project_uuid>

compression_level int32

Optional. The compression level of the zip file created. Valid range 1-9; the grpc-default value 0 will be mapped to 1, other values cause an error in the request validation handler.

test_size float

Train-test split related parameters, for further info, check https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html default values come from API definition above Optional: bigger than zero

train_size float

Optional: bigger than zero

random_state int32

Optional: random seed

ExportBenchmarkAgentResponse

Response to export benchmark agent

FieldTypeLabelDescription
agent_content bytes

Agent responses as zip file

training_phrases ExportBenchmarkAgentResponse.TrainingPhrasesEntry repeated

Key is the language code, value is the corresponding ListTrainingPhrasesResponse

ExportBenchmarkAgentResponse.TrainingPhrasesEntry

FieldTypeLabelDescription
key string

value ListTrainingPhrasesResponse

ExportResourcesRequest

Request to export resources

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

name string

Required. Name of the resource to export.

type string

Required. Type of the resource (e.g., "audio", "image", "file").

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

ExportResourcesResponse

Response to export resources

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

name string

Required. Name of the exported resource.

type string

Required. Type of the resource (e.g., "audio", "image", "file").

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

resource_file bytes

Required. The exported resource file content as bytes.

FullTextSearchRequest

This message is a request to run full text search

FieldTypeLabelDescription
parent string

Required. The project that the agent is associated with. Format:

projects/<project_uuid>/agent

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

term string

What to search for in the elastic server

page_token string

Composite string: current_index-0--page_size-10 The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

FullTextSearchResponseEntity

This message is a response of full text search of entity

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

entity_results FullTextSearchResponseEntity.EntitySearchResult repeated

List of entity search results

term string

Search term used in the query

elastic_query string

Elasticsearch query that was executed

time float

Time taken to execute the query in seconds

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

FullTextSearchResponseEntity.EntitySearchResult

Search result for an entity

FieldTypeLabelDescription
name string

Name of the entity

display_name string

Display name of the entity

entity_type_name string

Name of the entity type this entity belongs to

entity_type_display_name string

Display name of the entity type

language string

Language code of the entity

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

FullTextSearchResponseEntitySynonym

This message is a response of full text search of synonym entity

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

entity_synonym_results FullTextSearchResponseEntitySynonym.EntitySynonymSearchResult repeated

List of entity synonym search results

term string

Search term used in the query

elastic_query string

Elasticsearch query that was executed

time float

Time taken to execute the query in seconds

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

FullTextSearchResponseEntitySynonym.EntitySynonymSearchResult

Search result for an entity synonym

FieldTypeLabelDescription
name string

Name of the entity synonym

display_name string

Display name of the entity synonym

entity_type_name string

Name of the entity type

entity_type_display_name string

Display name of the entity type

entity_name string

Name of the entity this synonym belongs to

entity_display_name string

Display name of the entity

language string

Language code of the entity synonym

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

FullTextSearchResponseEntityType

This message is a response of full text search of entity type

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

entity_type_results FullTextSearchResponseEntityType.EntityTypeSearchResult repeated

List of entity type search results

term string

Search term used in the query

elastic_query string

Elasticsearch query that was executed

time float

Time taken to execute the query in seconds

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

FullTextSearchResponseEntityType.EntityTypeSearchResult

Search result for an entity type

FieldTypeLabelDescription
name string

Name of the entity type

display_name string

Display name of the entity type

language string

Language code of the entity type

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

FullTextSearchResponseIntent

This message is a response of full text search of intent

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

intent_results FullTextSearchResponseIntent.IntentSearchResult repeated

List of intent search results

term string

Search term used in the query

elastic_query string

Elasticsearch query that was executed

time float

Time taken to execute the query in seconds

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

FullTextSearchResponseIntent.IntentSearchResult

Search result for an intent

FieldTypeLabelDescription
name string

Name of the intent

display_name string

Display name of the intent

domain_name string

Domain name of the intent

tags string repeated

Tags associated with the intent

language string

Language code of the intent

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

FullTextSearchResponseIntentContextIn

This message is a response of full text search of intent with context in

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

intent_context_in_results FullTextSearchResponseIntentContextIn.IntentContextInSearchResult repeated

List of intent input context search results

term string

Search term used in the query

elastic_query string

Elasticsearch query that was executed

time float

Time taken to execute the query in seconds

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

FullTextSearchResponseIntentContextIn.IntentContextInSearchResult

Search result for an intent input context

FieldTypeLabelDescription
name string

Name of the input context

intent_name string

Name of the intent this context belongs to

intent_display_name string

Display name of the intent

tags string repeated

Tags associated with the intent

language string

Language code of the context

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

FullTextSearchResponseIntentContextOut

This message is a response of full text search of intent with context out

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

intent_context_out_results FullTextSearchResponseIntentContextOut.IntentContextOutSearchResult repeated

List of intent output context search results

term string

Search term used in the query

elastic_query string

Elasticsearch query that was executed

time float

Time taken to execute the query in seconds

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

FullTextSearchResponseIntentContextOut.IntentContextOutSearchResult

Search result for an intent output context

FieldTypeLabelDescription
name string

Name of the output context

intent_name string

Name of the intent this context belongs to

intent_display_name string

Display name of the intent

tags string repeated

Tags associated with the intent

language string

Language code of the context

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

FullTextSearchResponseIntentParameters

This message is a response of full text search of intent with parameters

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

intent_parameters_results FullTextSearchResponseIntentParameters.IntentParametersSearchResult repeated

List of intent parameter search results

term string

Search term used in the query

elastic_query string

Elasticsearch query that was executed

time float

Time taken to execute the query in seconds

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

FullTextSearchResponseIntentParameters.IntentParametersSearchResult

Search result for an intent parameter

FieldTypeLabelDescription
parameter_name string

Name of the parameter

parameter_display_name string

Display name of the parameter

intent_name string

Name of the intent this parameter belongs to

intent_display_name string

Display name of the intent

tags string repeated

Tags associated with the intent

language string

Language code of the parameter

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

FullTextSearchResponseIntentResponse

This message is a response of full text search of intent response

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

intent_response_results FullTextSearchResponseIntentResponse.IntentResponseSearchResult repeated

List of intent response search results

term string

Search term used in the query

elastic_query string

Elasticsearch query that was executed

time float

Time taken to execute the query in seconds

next_page_token string

The next_page_token is used to retrieve the next page of a returned result. The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

FullTextSearchResponseIntentResponse.IntentResponseSearchResult

Search result for an intent response

FieldTypeLabelDescription
text string

Text content of the response

platform string

Platform for which this response is intended

response_type string

Type of the response

intent_name string

Name of the intent this response belongs to

intent_display_name string

Display name of the intent

tags string repeated

Tags associated with the intent

language string

Language code of the response

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

FullTextSearchResponseIntentTags

This message is a response of full text search of intent with tags

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

intent_tags_results FullTextSearchResponseIntentTags.IntentTagsSearchResult repeated

List of intent tag search results

term string

Search term used in the query

elastic_query string

Elasticsearch query that was executed

time float

Time taken to execute the query in seconds

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

FullTextSearchResponseIntentTags.IntentTagsSearchResult

Search result for an intent tag

FieldTypeLabelDescription
name string

Name of the tag

text string

Text content of the tag

intent_name string

Name of the intent this tag belongs to

intent_display_name string

Display name of the intent

tags string repeated

Tags associated with the intent

language string

Language code of the tag

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

FullTextSearchResponseIntentUsersays

This message is a response of full text search of intent with sentence

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

intent_usersays_results FullTextSearchResponseIntentUsersays.IntentUsersaysSearchResult repeated

List of intent training phrase search results

term string

Search term used in the query

elastic_query string

Elasticsearch query that was executed

time float

Time taken to execute the query in seconds

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

FullTextSearchResponseIntentUsersays.IntentUsersaysSearchResult

Search result for an intent training phrase (user says)

FieldTypeLabelDescription
name string

Name of the training phrase

text string

Text of the training phrase

text_as_entity_types string

Text with entity types annotated

text_as_entity_values string

Text with entity values annotated

type string

Type of the training phrase part

intent_name string

Name of the intent this training phrase belongs to

intent_display_name string

Display name of the intent

tags string repeated

Tags associated with the intent

language string

Language code of the training phrase

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

GetAgentRequest

The request message for Agents.GetAgent.

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

agent_view AgentView

Optional. Specify the view of the returned agent (full view by default)

field_mask google.protobuf.FieldMask

Optional. A mask to control which fields are returned in the response.

GetAgentStatisticsRequest

Request statistics of the agent

FieldTypeLabelDescription
parent string

Required. The project to get statistics from. Format:

projects/<project_uuid>

format ReportFormat

File formats for reports

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc. the language to calculate statistics about

type ReportType

Type of reports about the domain of the agent

llm_model_filter string repeated

Optional. Restrict LLM aggregations to specific models (e.g. "claude-3-5-sonnet-20241022"). Empty list = all models.

llm_provider_filter string repeated

Optional. Restrict LLM aggregations to specific providers (e.g. "anthropic", "openai"). Empty list = all providers.

llm_agent_name_filter string repeated

Optional. Restrict LLM aggregations to specific intent-agent names.

llm_group_bys string repeated

Optional. Group LLM aggregations by named dimensions (e.g. ["model_name", "provider"]). Empty list = no grouping.

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data on the response (e.g. paths=["llm_telemetry_report"]).

llm_ccai_service_provider_filter CcaiServiceProvider repeated

Optional. Restrict LLM aggregations to specific CCAI service providers. Empty = all.

GetAgentStatisticsResponse

Response to get statistics of the agent

FieldTypeLabelDescription
reports bytes

Statistic info.

format ReportFormat

File formats for reports

type ReportType

Type of reports about the domain of the agent

llm_telemetry_report LlmTelemetryReport

Optional aggregate LLM telemetry across all sessions / steps in scope (subject to the LLM filters in the request). Populated only when the request field_mask includes llm_telemetry_report.

GetModelStatusesRequest

Request to get model statuses

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agent

cache_version int32

Optional. Cache version to filter model statuses. If not specified, returns statuses for all cache versions.

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

model_name string

Optional. Model name to filter model statuses. If not specified, returns statuses for all models.

GetModelStatusesResponse

Response to get model statuses

FieldTypeLabelDescription
model_statuses ModelStatus repeated

List of model statuses matching the request filters.

GetPlatformInfoResponse

GIT information about the version of the server

FieldTypeLabelDescription
version string

version of the server build

commit_hash string

git commit hash of the server build

GetPlatformMappingRequest

Request to get platform mapping

FieldTypeLabelDescription
parent string

Required. The project that the agent is associated with. Format:

projects/<project_uuid>/agent

GetSessionsStatisticsRequest

Request of the report of the statistics about sessions

FieldTypeLabelDescription
parent string

Required. The project to get statistics from. Format:

projects/<project_uuid>

format ReportFormat

File formats for reports

type SessionsReportType

Type of reports about the domain of the agent

session_filter SessionFilter

Optional. A filter to narrow reports based on sessions

context_filters ContextFilter repeated

Optional. A filter to narrow reports based on contextual information (Coming soon! Not yet implemented)

limit int32

Optional. limit the returned number of results

group_bys string repeated

Optional. Grouping based on named properties

order_bys string repeated

Optional. Order based on named properties

field_mask google.protobuf.FieldMask

Optional. The mask to control which data fields will be added to the returned data.
Example: paths=["duration_in_s_min", "id", "session_id", "project_id"]

sql_query string

SQL Query - only usable with specific SessionsReportType such as SessionsReportType.SESSION_SQL_QUERY

llm_model_filter string repeated

Optional. Restrict LLM-typed reports to specific models. Empty = all models.

llm_provider_filter string repeated

Optional. Restrict LLM-typed reports to specific providers. Empty = all providers.

llm_agent_name_filter string repeated

Optional. Restrict LLM-typed reports to specific intent-agent names. Empty = all.

llm_tool_name_filter string repeated

Optional. Restrict LLM-typed reports to specific tool names. Empty = all.

llm_ccai_service_provider_filter CcaiServiceProvider repeated

Optional. Restrict LLM-typed reports to specific CCAI service providers. Empty = all.

GetSessionsStatisticsResponse

Report of the statistics about sessions

FieldTypeLabelDescription
reports bytes

Statistic info.

format ReportFormat

File formats for reports

type SessionsReportType

Type of reports about the domain of the agent

llm_telemetry_report LlmTelemetryReport

Optional aggregate LLM telemetry summarizing the report (tokens, tool calls, thinking) across all sessions matched by the request. Populated only for LLM-typed report types (SESSION_LLM_*).

ImportAgentRequest

The request message for Agents.ImportAgent.

FieldTypeLabelDescription
parent string

Required. The project that the agent to import is associated with. Format:

projects/<project_uuid>

agent_uri string

The URI to a Google Cloud Storage file containing the agent to import. Note: The URI must start with "gs://".

agent_content bytes

The agent to import.
Example for how to import an agent via the command line:

curl \
  'https://dialogflow.googleapis.com/v2/projects//agent:import\
   -X POST \
   -H 'Authorization: Bearer '$(gcloud auth print-access-token) \
   -H 'Accept: application/json' \
   -H 'Content-Type: application/json' \
   --compressed \
   --data-binary "{
      'agentContent': '$(cat  | base64 -w 0)'
   }"

ListAgentsOfUserResponse

Get list of agents of user

FieldTypeLabelDescription
agents_of_user_with_owners AgentOfUserWithOwner repeated

The list of agents with their owners of the given user. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

ListAgentsRequest

Request to get the list of agents

FieldTypeLabelDescription
agent_view AgentView

Optional. Specify the view of the returned agent (full view by default)

page_token string

Optional. The next_page_token value returned from a previous list request.

sort_by_field AgentSorting

Optional. Defines the sorting of the list. Default, no sorting.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListAgentsResponse

Get list of agents

FieldTypeLabelDescription
agents_with_owners AgentWithOwner repeated

The list of agent and their owners. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

ListProjectPermissionsRequest

Project permissions

FieldTypeLabelDescription
page_token string

Optional. The next_page_token value returned from a previous list request. The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListProjectPermissionsResponse

List project permissions

FieldTypeLabelDescription
permissions string repeated

The list of project permissions. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

ListUsersInProjectRequest

Request to list users in the project

FieldTypeLabelDescription
parent string

Required. The project that the agent to train is associated with. Format:

projects/<project_uuid>

page_token string

Optional. The next_page_token value returned from a previous list request. The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListUsersInProjectResponse

List the users in a project

FieldTypeLabelDescription
users UserInProject repeated

The list of users in a project. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

MigrateAgentRequest

Request to migrate an agent

FieldTypeLabelDescription
agent_content bytes

The agent to migrate as zip file

ModelStatus

Status of model

FieldTypeLabelDescription
cache_version int32

Cache version that contains the correspondent model

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

model_name string

The model name

status_set_time google.protobuf.Timestamp

Timestamp when the status was set. Read-only field.

config string

Configuration of the model as a string.

status ModelStatus.StatusName

Current status of the model.

OptimizeRankingMatchRequest

This message is a request to run Optimize Ranking Match

FieldTypeLabelDescription
parent string

Required. The project that the agent to train is associated with. Format:

projects/<project_uuid>

language_codes string repeated

languages that should be optimized

optimization_configs RankingMatchOptimizationConfig repeated

optimization config will contain all possible optimizations, with which we will come up in the future

in_place bool

if in_place is true then the config of the agent on the server will be updated, if False then config with optimized thresholds will be returned but not updated on the server

OptimizeRankingMatchResponse

This message is a response of Optimize Ranking Match

FieldTypeLabelDescription
optimization_info google.protobuf.Struct

info about optimization

optimized_ondewo_config google.protobuf.Struct

the optimized configuration of the ondewo agent e.g., optimized parameters

PlatformMapping

This message contains the mapping of platform

FieldTypeLabelDescription
parent string

Required. The project that the agent is associated with. Format:

projects/<project_uuid>/agent

platform_info CustomPlatformInfo repeated

Required. If not set, it will set it empty.

RankingMatchOptimizationConfig

This message contains the configuration to run Optimize Ranking Match

FieldTypeLabelDescription
language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

n_splits int32

number of splits for optimization

random_seed int32

random seed number for defining the split of train and test of training phrases for optimization

initial_thresholds google.protobuf.Struct

initial thresholds are optional, if not given will be taken from the current config
example {'OndewoIntentSimilarityMatch': 0.59, 'OndewoIntentNamedSimilarityMatch': 0.39}

ReindexAgentRequest

This message is a request to reindex agent

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

branch_name string

Optional, useful for versioning reasons of the agent data

index_types FullTextSearchRequest.QueryType repeated

Optional, useful for reindexing specific indices in the future

RemoveUserFromProjectRequest

Request to remove user from the project.

FieldTypeLabelDescription
parent string

Required. The project that the agent to train is associated with. Format:

projects/<project_uuid>

user_id string

id of the user

RestoreAgentRequest

The request message for Agents.RestoreAgent.

FieldTypeLabelDescription
parent string

Required. The project that the agent to restore is associated with. Format:

projects/<project_uuid>

agent_uri string

The URI to a Google Cloud Storage file containing the agent to restore. Note: The URI must start with "gs://".

agent_content bytes

The agent to restore.
Example for how to restore an agent via the command line:

curl \
  'https://dialogflow.googleapis.com/v2/projects//agent:restore\
   -X POST \
   -H 'Authorization: Bearer '$(gcloud auth print-access-token) \
   -H 'Accept: application/json' \
   -H 'Content-Type: application/json' \
   --compressed \
   --data-binary "{
       'agentContent': '$(cat  | base64 -w 0)'
   }" \

SetAgentStatusRequest

Request to set status of the agent

FieldTypeLabelDescription
parent string

Required. The project of which to set the status. Format:

projects/<project_uuid>/agent

status AgentStatus

Required. Status of the agent

agent_view AgentView

Optional. View of the returned agent

SetResourcesRequest

Request to set resources

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

name string

Required. Name of the resource.

type string

Required. Type of the resource (e.g., "audio", "image", "file").

resource_file bytes

Required. The resource file content as bytes.

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

TrainAgentRequest

The request message for Agents.TrainAgent.

FieldTypeLabelDescription
parent string

Required. The project that the agent to train is associated with. Format:

projects/<project_uuid>

branch string

Name of the branch of the agent for versioning. The default branch name is develop.

initiation_protocol InitiationProtocol

Defines when to initiate newly created agent when training started

UpdateAgentRequest

Request to update the agent

FieldTypeLabelDescription
agent Agent

The agent

agent_view AgentView

Optional. Specify the view of the returned agent (sparse view by default)

update_mask google.protobuf.FieldMask

Optional. The mask to control which fields get updated.

UserInProject

Request to get user in project

FieldTypeLabelDescription
parent string

Required. The project that the agent to train is associated with. Format:

projects/<project_uuid>

user User

User object

role_id uint32

ID of the project role of the user

Enums

AgentSorting.AgentSortingField

Sorting field

NameNumberDescription
NO_AGENT_SORTING 0

no sorting

SORT_AGENT_BY_NAME 1

sorting by name

SORT_AGENT_BY_CREATION_DATE 2

sorting by creation date

SORT_AGENT_BY_LAST_UPDATED 3

sorting by last updated date

SORT_AGENT_BY_OWNER_NAME 4

sorting by owner, i.e. user who owns the agent which is usually the creator of the agent

AgentStatus

Type of Agent / Project status

NameNumberDescription
ACTIVE 0

If project is active, all its endpoints are active

INACTIVE 1

If project is inactive:

  • members of the project do not see the project anymore except users with project role "PROJECT_ADMIN" and users with server role "SERVER_ADMIN"
  • nothing is allowed (no endpoint) on the project except "SetAgentStatus" by PROJECT_ADMIN or SERVER_ADMIN

AgentView

Structure of agent view

NameNumberDescription
AGENT_VIEW_UNSPECIFIED 0

Unspecified agent view: the view is defined by the call:

  • CreateAgent: AGENT_VIEW_SHALLOW
  • UpdateAgent: AGENT_VIEW_SHALLOW
  • GetAgent: AGENT_VIEW_FULL
  • ListAgents: AGENT_VIEW_SHALLOW

AGENT_VIEW_FULL 1

Full agent view: populate all the fields of the Agent message including configs.

AGENT_VIEW_SHALLOW 2

Shallow agent view: populates all the fields except configs.

AGENT_VIEW_MINIMUM 3

Minimum view including only agent UUID and agent display name

FullTextSearchRequest.QueryType

Type of query

NameNumberDescription
ALL 0

Placeholder value, has to start with zero

OndewoEntityQuery 1

Query for entities

OndewoEntityTypeQuery 2

Query for entity types

OndewoEntitySynonymQuery 3

Query for entity synonyms

OndewoIntentQuery 4

Query for intents

OndewoIntentContextInQuery 5

Query for intent input contexts

OndewoIntentContextOutQuery 6

Query for intent output contexts

OndewoIntentUsersaysQuery 7

Query for intent training phrases (user says)

OndewoIntentTagsQuery 8

Query for intent tags

OndewoIntentParametersQuery 9

Query for intent parameters

OndewoIntentResponseQuery 10

Query for intent responses

InitiationProtocol

Defines when to initiate newly created agent when training started

NameNumberDescription
AS_SOON_AS_POSSIBLE 0

after cache successfully built and after each model trained the agent will be updated

WHEN_TRAINED 1

after cache successfully built and all the active models successfully trained

NEVER 2

do not initiate

ModelStatus.StatusName

Status name of the model.

NameNumberDescription
UNKNOWN 0

Unknown status

INITIALIZING 1

Model is initializing

INITIALIZED 2

Model has been initialized

LOADING_DATA 3

Model is loading data

TRAINING 4

Model is training

TESTING 5

Model is being tested

TRAINED 6

Model training is complete

ReportFormat

File formats for reports

NameNumberDescription
CSV 0

CSV (comma separated values) file format

HTML 1

HTML file format

JSON 2

JSON file format

ReportType

Type of reports about the domain of the agent

NameNumberDescription
ALL 0

will return all reports as files of specified format compressed into a single zipfile

INTENT_PER_LANGUAGE 1

statistics of the language specific part of the intent database

ENTITY_PER_LANGUAGE 2

statistics of the language specific part of the entity database

ENTITY_COLLISION 3

report on collision of the entity synonyms

INTENT_GENERAL 4

report of statistics of the general (relevant to all supported languages) part of intent database

AGENT_LLM_TOKEN_USAGE 5

Aggregate LLM token usage (input / output / cache) over the agent domain.

AGENT_LLM_MODELS_USED 6

Per-model usage rollup (calls, tokens, latency) over the agent domain.

AGENT_LLM_PROVIDERS_USED 7

Per-provider usage rollup over the agent domain.

AGENT_LLM_CCAI_SERVICES_USED 8

Per-CCAI-service usage rollup (keyed by CcaiServiceProvider) over the agent domain.

AGENT_LLM_AGENTS_USED 9

Per-intent-agent usage rollup over the agent domain.

AGENT_LLM_ERRORS 10

LLM error breakdown (counts and rate per error_class) over the agent domain.

AGENT_LLM_CACHE_EFFICIENCY 11

Prompt-cache efficiency over the agent domain.

AGENT_LLM_REASONING_EFFORT 12

Reasoning-effort distribution (keyed by ReasoningEffort) over the agent domain.

AGENT_LLM_TOP_X_TOOLS 13

Top X most-invoked tools over the agent domain.

AGENT_LLM_LEAST_X_TOOLS 14

Least X invoked tools over the agent domain.

AGENT_LLM_LATENCY 15

LLM latency aggregates (p50 / p95 / p99, time-to-first-token) over the agent domain.

AGENT_LLM_FINISH_REASONS 16

Finish-reason distribution over the agent domain.

AGENT_LLM_TOTAL_STATISTICS 17

Single rolled-up LLM statistics summary (totals + all breakdowns) over the agent domain.

AGENT_LLM_INPUT_TOKEN_USAGE 18

Aggregate LLM input / prompt token usage over the agent domain.

AGENT_LLM_OUTPUT_TOKEN_USAGE 19

Aggregate LLM output / completion token usage over the agent domain.

AGENT_LLM_THINKING_TOKEN_USAGE 20

Aggregate LLM thinking / reasoning token usage over the agent domain.

AGENT_LLM_TOOL_CALL_TOKEN_USAGE 21

Aggregate LLM tool-call token usage over the agent domain.

AGENT_LLM_TOP_X_MODELS 22

Top X most-used models (by calls / tokens) over the agent domain.

AGENT_LLM_TOP_X_CCAI_SERVICE_PROVIDERS 23

Top X most-used CCAI service providers over the agent domain.

AGENT_LLM_TOP_X_AGENT_NAMES 24

Top X most-used agent name of agentic AI team

SessionsReportType

Type of reports about the domain of the agent

NameNumberDescription
SESSIONS 0

report on sessions. Supports SessionFilter to filter

SESSION_STEPS 1

report on session steps. Supports SessionFilter to filter

SESSION_TOP_X_INTENTS 2

report top x detected intents in session. Supports SessionFilter to filter

SESSION_TOP_X_ENTITY_TYPES 3

report top x detected entity types. Supports SessionFilter to filter

SESSION_TOP_X_ENTITY_VALUES 4

report top x detected entity values Supports SessionFilter to filter

SESSION_TOP_X_USERS 5

report top x users. Supports SessionFilter to filter (Coming soon! Not yet implemented)

SESSION_TOP_X_LABELS 6

report top x labels. Supports SessionFilter to filter

SESSION_TOP_X_TAGS 7

report top x tags. Supports SessionFilter to filter

SESSION_TOP_X_PHONE_NUMBERS 8

report top x phone_numbers. Supports SessionFilter to filter (Coming soon! Not yet implemented)

SESSION_HUMAN_HANDOVERS 9

report on human handovers. Supports SessionFilter to filter (Coming soon! Not yet implemented)

SESSION_SQL_QUERY 10

report based on a query issued tables with session information. Requires to define sql_query in request. Allowed tables to query are:

  • session
  • session_context
  • session_step
  • session_step_context
  • session_step_detect_entity
  • session_step_detect_intent
  • session_step_detect_intent_context_in
  • session_step_detect_intent_context_out
  • session_step_detect_intent_context_out
  • session_step_detect_intent_label
  • session_step_detect_intent_tag
Example:
SELECT ... FROM session
SELECT ... FROM session, session_steps

SESSION_LEAST_X_INTENTS 11

report least x detected intents in session. Supports SessionFilter to filter

SESSION_LEAST_X_ENTITY_TYPES 12

report least x detected entity types. Supports SessionFilter to filter

SESSION_LEAST_X_ENTITY_VALUES 13

report least x detected entity values Supports SessionFilter to filter

SESSION_LEAST_X_USERS 14

report least x users. Supports SessionFilter to filter (Coming soon! Not yet implemented)

SESSION_LEAST_X_LABELS 15

report least x labels. Supports SessionFilter to filter

SESSION_LEAST_X_TAGS 16

report least x tags. Supports SessionFilter to filter

TOTAL_STATISTICS 17

report total numbers of e.g. sessions, session steps, etc.

SESSION_LLM_TOKEN_USAGE 18

Aggregate LLM token usage (input / output / cache) across sessions in scope. Supports SessionFilter to filter and the request's llm_*_filter fields to restrict to specific models / providers / agents.

SESSION_LLM_TOOL_CALLS 19

Tool-call breakdown across sessions in scope (counts, durations, error rate).

SESSION_LLM_THINKING 20

Thinking-token / duration aggregates across sessions in scope (where the provider surfaces extended thinking).

SESSION_LLM_FINISH_REASONS 21

Finish-reason distribution across sessions in scope (stop, length, tool_calls, content_filter, error, ...).

SESSION_LLM_LATENCY 22

LLM call latency aggregates (p50 / p95 / p99, time-to-first-token).

SESSION_LLM_RAG_METRICS 23

RAG-specific metrics (retrieval hit-rate, context precision, citation overlap) aggregated across sessions in scope.

SESSION_LLM_MODELS_USED 24

Per-model usage rollup (calls, tokens, latency) across sessions in scope.

SESSION_LLM_PROVIDERS_USED 25

Per-provider usage rollup across sessions in scope.

SESSION_LLM_CCAI_SERVICES_USED 26

Per-CCAI-service usage rollup (keyed by CcaiServiceProvider) across sessions in scope.

SESSION_LLM_AGENTS_USED 27

Per-intent-agent usage rollup across sessions in scope.

SESSION_LLM_ERRORS 28

LLM error breakdown (counts and rate per error_class) across sessions in scope.

SESSION_LLM_CACHE_EFFICIENCY 29

Prompt-cache efficiency (cache read / creation tokens, hit-rate, savings).

SESSION_LLM_REASONING_EFFORT 30

Reasoning-effort distribution (keyed by ReasoningEffort) across sessions in scope.

SESSION_LLM_TOP_X_TOOLS 31

Top X most-invoked tools (count, duration, error-rate) across sessions in scope.

SESSION_LLM_LEAST_X_TOOLS 32

Least X invoked tools across sessions in scope.

SESSION_LLM_TOTAL_STATISTICS 33

Single rolled-up LLM statistics summary (totals + all breakdowns) across sessions in scope.

SESSION_LLM_INPUT_TOKEN_USAGE 34

Aggregate LLM input / prompt token usage across sessions in scope.

SESSION_LLM_OUTPUT_TOKEN_USAGE 35

Aggregate LLM output / completion token usage across sessions in scope.

SESSION_LLM_THINKING_TOKEN_USAGE 36

Aggregate LLM thinking / reasoning token usage across sessions in scope.

SESSION_LLM_TOOL_CALL_TOKEN_USAGE 37

Aggregate LLM tool-call token usage across sessions in scope.

SESSION_LLM_TOP_X_MODELS 38

Top X most-used models (by calls / tokens) across sessions in scope.

SESSION_LLM_TOP_X_CCAI_SERVICE_PROVIDERS 39

Top X most-used CCAI service providers across sessions in scope.

SESSION_LLM_TOP_X_AGENT_NAMES 40

Top X most-used agent name of agentic AI team

ondewo/nlu/aiservices.proto

Top

Services

AiServices

The Central class defining the ondewo ai services

Service Methods

ExtractEntities

rpc ExtractEntities (ExtractEntitiesRequest) returns (ExtractEntitiesResponse)
Processes a natural language query and returns detected entities

GenerateUserSays

rpc GenerateUserSays (GenerateUserSaysRequest) returns (GenerateUserSaysResponse)
Generates a list of training phrases

GenerateResponses

rpc GenerateResponses (GenerateResponsesRequest) returns (GenerateResponsesResponse)
Generate responses from all intents using synonyms

GetAlternativeSentences

rpc GetAlternativeSentences (GetAlternativeSentencesRequest) returns (GetAlternativeSentencesResponse)
Generates alternative phrase based on original phrase

GetAlternativeTrainingPhrases

rpc GetAlternativeTrainingPhrases (GetAlternativeTrainingPhrasesRequest) returns (GetAlternativeTrainingPhrasesResponse)
Generates alternative training phrase based on original training phrase

GetSynonyms

rpc GetSynonyms (GetSynonymsRequest) returns (GetSynonymsResponse)
Generates synonyms for a certain word

ClassifyIntents

rpc ClassifyIntents (ClassifyIntentsRequest) returns (ClassifyIntentsResponse)
Preprocess text and detects intents in a sentence

ExtractEntitiesFuzzy

rpc ExtractEntitiesFuzzy (ExtractEntitiesFuzzyRequest) returns (ExtractEntitiesResponse)
Processes a natural language query and returns detected entities

LlmGenerate

rpc LlmGenerate (LlmGenerateRequest) returns (LlmGenerateResponse)
Generates a single response from a Large Language Model (LLM). This RPC method allows a client to make a request to the LLM and receive a single complete response based on the input parameters provided.

StreamingLlmGenerate

rpc StreamingLlmGenerate (LlmGenerateRequest) returns (stream StreamingLlmGenerateResponse)
Generates a response from the LLM in a streaming format. This RPC allows continuous streaming of responses from the model, which is useful for real-time applications or large outputs.

ListLlmModels

rpc ListLlmModels (ListLlmModelsRequest) returns (ListLlmModelsResponse)
Lists available Large Language Models (LLMs) for a specified CCAI service. This RPC method allows clients to retrieve metadata about all LLM models associated with a particular service within a project, including model names, descriptions, and providers.

Methods with HTTP bindings

Method Name Method Pattern Body
ExtractEntities POST /v2/{parent=projects/*/agent}/entities:extract *
GenerateUserSays POST /v2/{parent=projects/*/agent}/generate_user_says *
GenerateResponses POST /v2/{parent=projects/*/agent}/generate_responses *
GetAlternativeSentences POST /v2/{parent=projects/*/agent}/get_alternative:sentence *
GetAlternativeTrainingPhrases POST /v2/{parent=projects/*/agent}/get_alternative:training_phrases *
GetSynonyms POST /v2/{parent=projects/*/agent}/get_synonyms *
ClassifyIntents POST /v2/{parent=projects/*/agent}/classify_intent *
LlmGenerate POST /v2/{parent=projects/*/agent}/llm_generate *
ListLlmModels POST /v2/{parent=projects/*/agent}/list_llm_models *
Messages

AltSentence

This message contains an alternative sentence

FieldTypeLabelDescription
sentence string

Alternative sentence

score float

Score associated to the alternative sentence resulted

AltTrainingPhrase

This message contains an alternative training phrase

FieldTypeLabelDescription
training_phrase Intent.TrainingPhrase

Alternative training phrase

score float

Score associated to training_phrase

BertAugEnrichmentConfig

Configuration for BERT augmenter enrichment

FieldTypeLabelDescription
is_active bool

Activation flag

enrichment_factor int32

Factor of enrichment

execution_order int32

Order of augmenter execution

ClassifyIntentsRequest

The request for intent classification.

FieldTypeLabelDescription
parent string

Required. The project of this agent. Format:

projects/<project_uuid>/agent

text string

the input text

language_code string

the input language

active_contexts bool

Optional: if restrict classification result with input contexts listed in the field context_names

context_names string repeated

Optional: names of the input contexts to restrict the classification result with. Intents can only be classified if the intent's input context set is the subset of the given context set.

mode Mode

Optional: Which mode to use:

  • EXCLUSIVE - skip algorithms listed in algorithms field,
  • INCLUSIVE - run ONLY algorithms listed in algorithms field,
  • UNSPECIFIED - default mode, described in agent config

algorithms IntentAlgorithms repeated

Optional: Algorithm list

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ClassifyIntentsResponse

Response containing the intents classified in a sentence

FieldTypeLabelDescription
intents_classified IntentClassified repeated

A list of intents detected

text string

The text containing from which the intents were detected

active_contexts bool

Flag that enables the context through the conversation

context_names string repeated

The context tags associated to the intents

DataEnrichmentConfig

This message contains the configuration of data enrichment

FieldTypeLabelDescription
entity_enrichment EntityEnrichmentConfig

Entity augmenter configuration

thesaurus_enrichment ThesaurusEnrichmentConfig

Thesaurus augmenter configuration

word2vec_enrichment Word2VecEnrichmentConfig

Word2Vec augmenter configuration

word_net_enrichment WordNetAugEnrichmentConfig

WordNet augmenter configuration

gpt2_enrichment GPT2EnrichmentConfig

GPT2 augmenter configuration

glove_enrichment GloVeEnrichmentConfig

GloVe augmenter configuration

bert_enrichment BertAugEnrichmentConfig

BERT augmenter configuration

xlnet_enrichment XLNetAugEnrichmentConfig

XLNet augmenter configuration

llm_enrichment LlmEnrichmentConfig

Large language model (LLM) augmenter configuration

EntityDetected

This message contains the entity detected

FieldTypeLabelDescription
entity Intent.TrainingPhrase.Entity

The entity name that is detected

extraction_method string

The extractor name, e.g. SpacyNer

score float

The confidence score of the detected entity

EntityEnrichmentConfig

Configuration for Entity enrichment

FieldTypeLabelDescription
is_active bool

Activation flag

enrichment_factor int32

Factor of enrichment

execution_order int32

Order of augmenter execution

EntityTypeFuzzyNerConfig

Configuration for Fuzzy Entity Recognizer

FieldTypeLabelDescription
entity_type EntityType

The Entity Type

minimal_score float

Optional. Overrides the minimal score in ExtractEntitiesFuzzyRequest.

entity_values string repeated

Optional. If defined, only entity value from this list are considered.

algorithm EntityTypeFuzzyNerConfig.FuzzyNerAlgorithm

Optional. Specify the Fuzzy Ner algorithm

allow_overlaps bool

Should not use allow_overlaps here, since its default value is False

ExtractEntitiesFuzzyRequest

This message is a request to extract entities with Fuzzy Entity Recognizer

FieldTypeLabelDescription
parent string

the parent of the request Format:

projects/<project_uuid>

text string

The text to be analyzed

potential_entities EntityTypeFuzzyNerConfig repeated

Potential entities to be extracted from the text with entity-specific configs

minimal_score float

Minimal similarity score to consider entity as "matched"

allow_overlaps bool

Optional. Whether or not entities are allowed to overlap.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ExtractEntitiesRequest

The request to detect parameters.

FieldTypeLabelDescription
parent string

the parent of the request Format:

projects/<project_uuid>

text string

the input text

language_code string

the input language

intent_name string

Optional. The name of the relevant intent. Used to establish preference hierarchy for entities that correspond to intent parameters Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ExtractEntitiesResponse

This message is a response of extracting entities

FieldTypeLabelDescription
entities_detected EntityDetected repeated

A list of entities detected

text string

The text containing the entities detected

GPT2EnrichmentConfig

Configuration for GPT2 enrichment

FieldTypeLabelDescription
is_active bool

Activation flag

enrichment_factor int32

Factor of enrichment

execution_order int32

Order of augmenter execution

GenerateResponsesRequest

Request to generate responses

FieldTypeLabelDescription
language_code string

language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

parent string

the parent of the request Format:

projects/<project_uuid>

n_repeat_synonym int32

The number of synonyms desired

branch string

Git branch

drop_unknown_parameters bool

Optional. Whether to drop unknown parameters from the generated responses

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

GenerateResponsesResponse

Response containing responses

FieldTypeLabelDescription
responses string repeated

A list of responses

GenerateUserSaysRequest

Request to generate user sentences

FieldTypeLabelDescription
language_code string

language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

parent string

the parent of the request Format:

projects/<project_uuid>

n_repeat_synonym int32

The number of synonyms desired

branch string

Git branch

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

GenerateUserSaysResponse

Response containing user sentences

FieldTypeLabelDescription
user_says string repeated

A list of sampled sentences

GetAlternativeSentencesRequest

Request to get alternative sentences

FieldTypeLabelDescription
config DataEnrichmentConfig

Configuration type of the enricher

sentence string

The sentence from which it is desired to get alternative sentences

language_code string

Language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

parent string

the parent of the request Format:

projects/<project_uuid>

protected_words string repeated

Protected words in the augmentation process

words_to_change string repeated

Words to be changed in the augmentation process

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

GetAlternativeSentencesResponse

Response containing alternative sentences

FieldTypeLabelDescription
alternative_sentences AltSentence repeated

A list of alternative sentences

GetAlternativeTrainingPhrasesRequest

Request to get alternative training phrases

FieldTypeLabelDescription
config DataEnrichmentConfig

Configuration of the enricher

training_phrase Intent.TrainingPhrase

Training phrase from which an alternative one is got

intent_name string

The intent tag attached to the training phrase

language_code string

language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

parent string

the parent of the request Format:

projects/<project_uuid>

detect_entities bool

Flag to determine whether entities must or not be detected

similarity_threshold float

similarity threshold defines how similar sentences should be to drop generated training phrase as duplicate. Meaningful values of similarity_threshold are between 0.95 and 1.0

protected_words string repeated

Protected words in the augmentation process

words_to_change string repeated

Words to be changed in the augmentation process

branch string

Git branch

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

GetAlternativeTrainingPhrasesResponse

Response containing alternative training phrases

FieldTypeLabelDescription
alternative_training_phrases AltTrainingPhrase repeated

A list of alternative training phrases

GetSynonymsRequest

Request to get synonyms

FieldTypeLabelDescription
config DataEnrichmentConfig

Configuration of the enricher

word string

Word from which a synonym is got

language_code string

language code specifies the language of the request in IETF BCP 47 language tag format, e.g. de-DE, en-US, etc.

parent string

the parent of the request Format:

projects/<project_uuid>

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

GetSynonymsResponse

Response containing synonyms

FieldTypeLabelDescription
synonyms Synonym repeated

A list of synonyms

GloVeEnrichmentConfig

Configuration for GloVe enrichment

FieldTypeLabelDescription
is_active bool

Activation flag

enrichment_factor int32

Factor of enrichment

execution_order int32

Order of augmenter execution

IntentClassified

Intent classified by a certain intent classifier

FieldTypeLabelDescription
intent_name string

The unique identifier of this intent. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

intent_display_name string

The name of the intent.

classifier string

The name of the classifier that detected the intent

score float

Score associated to the detection of the intent by the classifier

ListLlmModelsRequest

The request message to list available LLM models for a specified CCAI service.

FieldTypeLabelDescription
ccai_service_name string

The CCAI service for which to list models. Format:

projects/<project_uuid>/ccai/services/<service_uuid>

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListLlmModelsResponse

The response message containing a list of available LLM models.

FieldTypeLabelDescription
llm_models LlmModel repeated

A list of LLM models associated with the specified CCAI service.
Each model in this list represents an individual language model that can
be used within the service, including details such as name, provider, and description.

LlmEnrichmentConfig

Configuration for large language model (LLM) enrichment

FieldTypeLabelDescription
is_active bool

Activation flag

enrichment_factor int32

Factor of enrichment

execution_order int32

Order of augmenter execution

ccai_service_name string

The CCAI service to be used to enrich This specifies which large language model provider and model settings will handle the request. Format:

projects/<project_uuid>/ccai/services/<service_uuid>

LlmGenerateRequest

The request message to generate a response from a Large Language Model (LLM).

FieldTypeLabelDescription
llm_generation_request google.protobuf.Struct

The request payload for the LLM, structured according to the specific requirements of the large language model provider.
The payload must fit the format expected by the specified LLM provider, as defined by

CcaiServiceProvider

ccai_service_name string

The CCAI service to be used for processing the request. This specifies which large language model provider and model settings will handle the request. Format:

projects/<project_uuid>/ccai/services/<service_uuid>

file_resources FileResource repeated

Files as input for the generation request

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

LlmGenerateResponse

The response message containing the generated output from a Large Language Model (LLM).

FieldTypeLabelDescription
llm_generation_response google.protobuf.Struct

The response data from the LLM, returned as a structured payload.
This can contain the text generation, embeddings, or other outputs based on the specific request made to the LLM provider.

file_resources FileResource repeated

Files as input for the generation request, e.g., generated pictures, audio or video

LlmModel

Represents an individual LLM model available within a CCAI service.

FieldTypeLabelDescription
name string

The resource name of the model. Format:

projects/<project_uuid>/ccai/services/<service_uuid>/model/<model_uuid>
This is a unique identifier for the model, specifying its project, service, and model ID.

display_name string

The display name of the model. This is a human-readable name used for identifying the model in other requests, such as

LlmGenerateRequest
and
StreamingLlmGenerateRequest

description string

The description of the model. Provides additional details about the model, such as its purpose, architecture, or any other relevant information.

ccai_service_name string

The resource name of the CCAI service to which the model belongs. This field links the model to its service context, helping clients understand which service hosts the model.

ccai_service_provider CcaiServiceProvider

The provider of the CCAI service that offers this model. Specifies the LLM provider (e.g., Ollama, OpenAI, Google, etc.), indicating the origin or vendor of the model.

StreamingLlmGenerateResponse

The response message for streaming generation from a Large Language Model (LLM).

FieldTypeLabelDescription
llm_generation_stream_response google.protobuf.Struct

The response data from the LLM in a streaming format, returned as a structured payload.
This response is part of a continuous stream of data from the LLM, allowing incremental results to be sent as they are generated.

Synonym

This message contains a Synonym

FieldTypeLabelDescription
synonym string

Synonym word

score int32

Score associated to the synonym resulted

ThesaurusEnrichmentConfig

Configuration for Thesaurus enrichment

FieldTypeLabelDescription
is_active bool

Activation flag

enrichment_factor int32

Factor of enrichment

execution_order int32

Order of augmenter execution

Word2VecEnrichmentConfig

Configuration for Word2Vec enrichment

FieldTypeLabelDescription
is_active bool

Activation flag

enrichment_factor int32

Factor of enrichment

execution_order int32

Order of augmenter execution

WordNetAugEnrichmentConfig

Configuration for WordNet augmenter enrichment

FieldTypeLabelDescription
is_active bool

Activation flag

enrichment_factor int32

Factor of enrichment

execution_order int32

Order of augmenter execution

XLNetAugEnrichmentConfig

Configuration for XLNet enrichment

FieldTypeLabelDescription
is_active bool

Activation flag

enrichment_factor int32

Factor of enrichment

execution_order int32

Order of augmenter execution

Enums

EntityTypeFuzzyNerConfig.FuzzyNerAlgorithm

Enum of fuzzy ner algorithms

NameNumberDescription
PREFILTER_LEVENSHTEIN 0

Levenshtein algorithm for fuzzy ner matching

LOCAL_MAXIMUM 1

local maximum

IntentAlgorithms

Type of Intent algorithm.

NameNumberDescription
OndewoIntentExactContextDetector 0

By enabling this, a specific intent is triggered if the context and the intent name in the user says is matched. This can be used for directly triggering 'quick reply' button clicks confidence is always '1.0'.

OndewoIntentExactMatch 1

exact matching' of user input to user says is used to detect the intent. Confidence is always '1.0' if an 'exact match' is found.

OndewoIntentNamedExactMatch 2

the entity synonym in the user says text is replaced by the entity and 'exact matching' of user says text is performed. Confidence is always '1.0'.

OndewoIntentSimilarityMatch 3

the algorithm computes the similarity of the user input to all user says of all intents.

OndewoIntentNamedSimilarityMatch 4

the entity synonyms in the user says are replaced by their Entity. Text similarity algorithms are then used to detect the intent.

OndewoIntentBertClassifier 7

new language representation model called BERT, which stands for Bidirectional Encoder Representations from Transformers.BERT is designed to pre-train deep bidirectional representations by jointly conditioning on both left and right context in all layers. As a result, the pre-trained BERT representations can be fine-tuned for multi-class intent detection. For details see https://arxiv.org/abs/1810.04805

OndewoIntentMetaClassifier 8

Meta classifier that combines multiple intent classification algorithms to improve accuracy

IntentExitDetector 10

Maximum number of repeated fallbacks before this algorithm exists the conversation and resets contexts

OndewoIntentRankingMatch 11

Algorithm to improve the interplay of the other algorithms

OndewoWeightedEnsemble 13

Ensemble calculation of used algorithms

OndewoIntentExitDetector 14

Maximum number of repeated fallbacks before this algorithm exists the conversation and resets contexts

OndewoIntentParameterMatch 15

Matches the intent based on the parameter constellation and the current user context

Mode

Type of mode

NameNumberDescription
UNSPECIFIED 0

default mode, described in agent config

EXCLUSIVE 1

skip algorithms listed in algorithms field,

INCLUSIVE 2

run ONLY algorithms listed in algorithms field

ondewo/nlu/ccai_project.proto

Top

Services

CcaiProjects

Service to manage Call Center AI (CCAI service) Projects.

Service Methods

GetCcaiProject

rpc GetCcaiProject (GetCcaiProjectRequest) returns (CcaiProject)
Retrieves information about a specific CCAI service project.

CreateCcaiProject

rpc CreateCcaiProject (CreateCcaiProjectRequest) returns (CreateCcaiProjectResponse)
Creates a new CCAI service project based on the provided request.

DeleteCcaiProject

rpc DeleteCcaiProject (DeleteCcaiProjectRequest) returns (DeleteCcaiProjectResponse)
Deletes a CCAI service project identified by the provided request.

ListCcaiProjects

rpc ListCcaiProjects (ListCcaiProjectsRequest) returns (ListCcaiProjectsResponse)
Lists all CCAI service projects based on the provided request.

UpdateCcaiProject

rpc UpdateCcaiProject (UpdateCcaiProjectRequest) returns (UpdateCcaiProjectResponse)
Updates the information of an existing CCAI service project.

GetCcaiService

rpc GetCcaiService (GetCcaiServiceRequest) returns (CcaiService)
Retrieves information about a specific CCAI service.
Messages

CcaiProject

Message representing a CCAI service project

FieldTypeLabelDescription
name string

Resource name of the CCAI service project

display_name string

Required. The display name of this ccai project.

owner_name string

Optional. Resource name of the user who is the owner of the project.

ccai_services_map CcaiProject.CcaiServicesMapEntry repeated

Map of two letter language codes to lists of CcaiServiceList Two-letter language codes following ISO 639-1 (see https://en.wikipedia.org/wiki/ISO_639-1)

ccai_project_status CcaiProjectStatus

The status of the ccai project.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in the form of a valid UUID.

modified_by string

User id in the form of a valid UUID.

nlu_project_name string

Required. Associated NLU agent Format:

projects/<project_uuid>/agent

CcaiProject.CcaiServicesMapEntry

FieldTypeLabelDescription
key string

value CcaiServiceList

CcaiProjectSorting

This protobuf message defines the sorting order for CCAI service (VOIP Telephone System Integration) projects.

FieldTypeLabelDescription
sorting_field CcaiProjectSorting.CcaiProjectSortingField optional

sorting field for ccai projects sorting

sorting_mode SortingMode optional

Sorting mode

CcaiService

Definition of a Call Center AI (CCAI service) Service.

FieldTypeLabelDescription
name string

Resource name of the service. Must be unique.

display_name string

Display name for better identification.

language_code string

Language code representing the service language Format (e.g., "en" for English, "de" for German).

grpc_host string

gRPC host for communication with the specified port.

grpc_port int32

Port for gRPC communication.

webgrpc_host string

Web gRPC host for web-based communication with the specified port.

webgrpc_port int32

Port for web gRPC communication.

grpc_cert string

Path to the gRPC certificate for secure communication.

host string

Additional host for communication, if needed.

port int32

Port for additional communication.

port2 int32

Another additional port for communication if required.

http_basic_auth_token string

Http basic auth token

account_name string

Account name for authentication.

account_password string

Password for the specified account for authentication.

api_key string

API key for accessing the service, if applicable.

ccai_service_type CcaiServiceType

Type of CCAI service service (e.g., TEXT_TO_SPEECH, SPEECH_TO_TEXT).

ccai_project_name string

Resource name of the ccai_project the ccai_service belongs to

ccai_service_config google.protobuf.Struct

Detailed configuration of the CcaiService

created_at google.protobuf.Timestamp

Creation date and time of the service. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time of the service. Read-only field.

created_by string

User ID of the creator in the form of a valid UUID. Read-only field.

modified_by string

User ID of the last modifier in the form of a valid UUID. Read-only field.

headers google.protobuf.Struct optional

Optional. The headers of the request message

ccai_service_provider CcaiServiceProvider optional

Provider of the ccai service

service_hierarchy string optional

Index indicating the hierarchical position of a service within the service hierarchy. The index follows a tree-like structure, where each level of depth is separated by a "_". For example:

  • "1" represents a top-level service
  • "1_1" represents a sub-service under "1"
  • "1_1_1" represents a sub-service under "1.1"
This structure allows for easy representation and organization of services in nested workflows. If CcaiService have the same service_hierarchy they are executed in parallel. For example:
  • "1" Service A
  • "1_1" Service B
  • "1_1" Service C
Service B and C will be executed in parallel and the Service A receives both results of service B and C. The variable for the return value of a service is {{OUTPUT_SERVICE_service_hierarchy}}. So in the example above the outputs of the services are {{OUTPUT_SERVICE_1}}, {{OUTPUT_SERVICE_1_1}}, and {{OUTPUT_SERVICE_1_2}}.

CcaiServiceFilter

Filter which services should be included in the returned CcaiProject

FieldTypeLabelDescription
language_codes string repeated

Language codes of the projects for which services are filtered.

ccai_service_types CcaiServiceType repeated

Type of CCAI service service

ccai_service_providers CcaiServiceProvider repeated

Type of CCAI service providers

CcaiServiceList

Message representing a list of CCAI service services

FieldTypeLabelDescription
ccai_services CcaiService repeated

CCAI service services

CreateCcaiProjectRequest

Request to create a Call Center AI (CCAI service) project.

FieldTypeLabelDescription
ccai_project CcaiProject

The CCAI service project to be created.

nlu_project_name string

Required. The nlu agent project of this CcaiProject. Format:

projects/<project_uuid>/agent

CreateCcaiProjectResponse

Response after attempting to create a Call Center AI (CCAI service) project.

FieldTypeLabelDescription
ccai_project CcaiProject

The created CCAI service project.

error_message string

Error message if the creation is unsuccessful.

DeleteCcaiProjectRequest

Request to delete a CCAI service project

If a deployed CCAI service project was deleted then it was undeployed beforehand automatically

FieldTypeLabelDescription
name string

CCAI service project name with which to perform the call of the form

projects/<project_uuid>/project

nlu_project_name string

Required. The nlu agent project of this CcaiProject. Format:

projects/<project_uuid>/agent

DeleteCcaiProjectResponse

Response to delete a CCAI service project

If a deployed CCAI service project was deleted then it was undeployed beforehand automatically

FieldTypeLabelDescription
name string

CCAI service project name with which to perform the call of the form

projects/<project_uuid>/project

error_message string

error message if there are any.

nlu_project_name string

Required. The nlu agent project of this CcaiProject. Format:

projects/<project_uuid>/agent

GetCcaiProjectRequest

Request to retrieve a CCAI service project

FieldTypeLabelDescription
name string

CCAI service project name with which to perform the call of the form

projects/<project_uuid>/project

ccai_project_view CcaiProjectView optional

Optional. Specify the view of the returned CcaiProject (full view by default)

ccai_service_filter CcaiServiceFilter optional

Filter which services should be included in the returned CcaiProject

nlu_project_name string

Required. The nlu agent project of this CcaiProject. Format:

projects/<project_uuid>/agent

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

GetCcaiServiceRequest

Request to retrieve a CCAI service project

FieldTypeLabelDescription
name string

CCAI service project name with which to perform the call of the form

projects/<project_uuid>/ccai/services/<service_uuid>

nlu_project_name string

Required. The nlu agent project of this CcaiProject. Format:

projects/<project_uuid>/agent

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListCcaiProjectsRequest

Request to get the list of agents

FieldTypeLabelDescription
ccai_project_view CcaiProjectView

Optional. Specify the view of the returned CcaiProject (full view by default)

ccai_service_filter CcaiServiceFilter optional

Filter which services should be included in the CcaiProject

ccai_project_sorting CcaiProjectSorting optional

Optional. Field to define the sorting of the list of CCAI service projects in the response. If not specified, the default behavior is to have no sorting.

page_token string optional

Optional. The next_page_token value returned from a previous list request. Example: "current_index-1--page_size-20" The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

nlu_project_name string

Required. The nlu agent project of this CcaiProject. Format:

projects/<project_uuid>/agent

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListCcaiProjectsResponse

This is a protobuf message definition for the response of getting a list of CCAI service projects.

FieldTypeLabelDescription
ccai_projects CcaiProject repeated

The list of CCAI service projects returned in the response. Use the 'repeated' keyword to indicate that this field can contain multiple instances of CcaiProject.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

UpdateCcaiProjectRequest

Request to updated CCAI service project

FieldTypeLabelDescription
ccai_project CcaiProject

The CcaiProject that should be updated

ccai_service_filter CcaiServiceFilter optional

Filter which services should be updated in the CcaiProject

update_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields get updated.

nlu_project_name string

Required. The nlu agent project of this CcaiProject. Format:

projects/<project_uuid>/agent

UpdateCcaiProjectResponse

Request to updated CCAI service project

FieldTypeLabelDescription
name string

CCAI service project name with which to perform the call of the form

projects/<project_uuid>/project

error_message string

error message if there are any.

Enums

CcaiProjectSorting.CcaiProjectSortingField

Enum to specify the sorting field for CCAI service projects.

NameNumberDescription
NO_CCAI_PROJECT_SORTING 0

No sorting

SORT_CCAI_PROJECT_BY_NAME 1

Sort by project name such as

projects/<project_uuid>/project

SORT_CCAI_PROJECT_BY_DISPLAY_NAME 2

Sort by display name

SORT_CCAI_PROJECT_BY_CREATION_DATE 3

Sort by creation date

SORT_CCAI_PROJECT_BY_LAST_MODIFIED 4

Sort by last modified date

CcaiProjectStatus

Status of a Call Center AI (CCAI service) Project.

NameNumberDescription
CCAI_PROJECT_STATUS_UNSPECIFIED 0

No status specified

CCAI_PROJECT_STATUS_UNDEPLOYED 1

Project successfully created and undeployed

CCAI_PROJECT_STATUS_UPDATING 2

Project configuration is updating

CCAI_PROJECT_STATUS_DEPLOYING 3

Project is deploying

CCAI_PROJECT_STATUS_DEPLOYED 4

Project is deployed

CCAI_PROJECT_STATUS_UNDEPLOYING 5

Project is un-deploying

CCAI_PROJECT_STATUS_DELETING 6

Project is currently deleting

CCAI_PROJECT_STATUS_DELETED 7

Project is deleted

CcaiProjectView

CcaiProjectView defines what the CcaiProject message contains

NameNumberDescription
CCAI_PROJECT_VIEW_UNSPECIFIED 0

Unspecified CCAI_PROJECT view: the view is defined by the call:

CCAI_PROJECT_VIEW_FULL 1

Full CCAI_PROJECT view: populate all the fields of the CCAI_PROJECT message including configs.

CCAI_PROJECT_VIEW_SHALLOW 2

Shallow CCAI_PROJECT view: populates all the fields except configs.

CCAI_PROJECT_VIEW_MINIMUM 3

Minimum view including only CCAI_PROJECT UUID and CCAI_PROJECT display name

CcaiServiceProvider

NameNumberDescription
NO_CCAI_SERVICE_PROVIDER 0

No specified provider or placeholder

CCAI_SERVICE_PROVIDER_ONDEWO 1

ONDEWO provider for CCAI service services ONDEWO

CCAI_SERVICE_PROVIDER_GOOGLE_GEMINI 2

Google as the CCAI service provider, utilizing Google's conversational AI capabilities Google Gemini

CCAI_SERVICE_PROVIDER_MICROSOFT_AZURE_OPENAI 3

Microsoft Azure as the CCAI service provider, using Microsoft's Azure cognitive services Azure OpenAI

CCAI_SERVICE_PROVIDER_MICROSOFT_AUTOGEN 4

Microsoft AutoGen as the CCAI service provider AutoGen

CCAI_SERVICE_PROVIDER_OLLAMA 5

Ollama as the CCAI service provider, typically associated with specific OLLAMA AI tools Ollama

CCAI_SERVICE_PROVIDER_OPENAI 6

OpenAI as the CCAI service provider, commonly used for models such as GPT OpenAI

CCAI_SERVICE_PROVIDER_ANTHROPIC 7

Anthropic as the CCAI service provider, used with AI models from Anthropic Anthropic

CCAI_SERVICE_PROVIDER_HUGGINGFACE 8

Hugging Face as the CCAI service provider, often used for open-source NLP models Hugging Face

CCAI_SERVICE_PROVIDER_IBM 9

IBM as the CCAI service provider, such as IBM Watson for conversational AI IBM Watson

CCAI_SERVICE_PROVIDER_HAYSTACK 10

Haystack as the CCAI service provider, e.g., for question answering and conversations Haystack

CCAI_SERVICE_PROVIDER_LANGCHAIN 11

LangChain as the CCAI service provider LangChain

CCAI_SERVICE_PROVIDER_AMAZON 12

Amazon AWS as the CCAI service provider, using Amazon's AI/ML services AWS AI Services

CCAI_SERVICE_PROVIDER_MISTRAL 13

Mistral as the CCAI service provider, using Mistral's services Mistral

CCAI_SERVICE_PROVIDER_DUCKDUCKGO 14

DuckDuckGo Websearch API DuckDuckGo API

CCAI_SERVICE_PROVIDER_GOOGLE_PSE 15

Google PSE Websearch API Google Programmable Search Engine

CCAI_SERVICE_PROVIDER_JINA 16

Jina Websearch API Jina AI

CCAI_SERVICE_PROVIDER_TAVILY 17

Tavily Websearch API Tavily API

CCAI_SERVICE_PROVIDER_ELASTICSEARCH 18

ElasticSearch vector database service ElasticSearch

CCAI_SERVICE_PROVIDER_MILVUS 19

Milvus vector database service Milvus

CCAI_SERVICE_PROVIDER_QDRANT 20

Qdrant vector database service Qdrant

CCAI_SERVICE_PROVIDER_CHROMA 21

Chroma vector database service ChromaDB

CCAI_SERVICE_PROVIDER_GOOGLE 22

Google CCAI service provider Google Cloud AI

CCAI_SERVICE_PROVIDER_MICROSOFT 23

Microsoft CCAI service provider Microsoft AI

CCAI_SERVICE_PROVIDER_DEEPGRAM 24

Deepgram as the CCAI service provider for speech processing Deepgram

CCAI_SERVICE_PROVIDER_ELEVENLABS 25

ElevenLabs as the CCAI service provider for voice synthesis ElevenLabs

CCAI_SERVICE_PROVIDER_HUGGINGFACE_TGI 26

Hugging Face Text Generation Inference (TGI) as the CCAI service provider Text Generation Inference

CCAI_SERVICE_PROVIDER_HUGGINGFACE_TGE 27

Hugging Face Text Embedding Inference (TGE) as the CCAI service provider Text Embeddings Inference

CCAI_SERVICE_PROVIDER_HUGGINGFACE_SMOLAGENTS 28

Hugging Face SmolAgents as the CCAI service provider SmolAgents

CCAI_SERVICE_PROVIDER_GOOGLE_AGENT_DEVELOPMENT_KIT 29

Google Agent Development Kit (ADK) as the CCAI service provider Google Agent Development Kit (ADK)

CCAI_SERVICE_PROVIDER_MODEL_CONTEXT_PROTOCOL 30

Model Context Protocol as the CCAI service provider, enabling integration with services following the Model Context Protocol standard. MCP

CCAI_SERVICE_PROVIDER_OPENSEARCH 31

Opensearch as the CCAI service provider, enabling integration with Opensearch vector database and search services Opensearch

CCAI_SERVICE_PROVIDER_GROK 32

Grok as the CCAI service provider, commonly used for models such as Grok-1 Grok

CCAI_SERVICE_PROVIDER_POSTGRES 33

PostgreSQL as the CCAI service provider, enabling integration with PostgreSQL databases PostgreSQL

CCAI_SERVICE_PROVIDER_MICROSOFT_AGENT_FRAMEWORK 34

Microsoft Agent Framework as the CCAI service provider Microsoft Agent Framework

CcaiServiceType

Defines the types of CCAI (Call Center AI) services available in the system.

Each service type represents a specific capability or module within the ONDEWO platform

that enables comprehensive call center and customer interaction management. Services can be

composed in workflows and are identified by their type, language code, and provider configuration.

NameNumberDescription
CCAI_SERVICE_TYPE_UNSPECIFIED 0

No service type specified or unknown type

CCAI_SERVICE_TYPE_ONDEWO_AIM 1

ONDEWO Agent Interaction Manager (AIM) Orchestrates multi-channel agent interactions, conversation routing, and workforce management. Handles inbound/outbound call distribution, chat routing, and agent state management.

CCAI_SERVICE_TYPE_ONDEWO_BPI 2

ONDEWO Business Process Intelligence (BPI) Analyzes call center processes, identifies optimization opportunities, and monitors compliance. Enables workflow automation, process mining, and performance benchmarking.

CCAI_SERVICE_TYPE_ONDEWO_CSI 3

ONDEWO Customer Service Intelligence (CSI) Provides customer service analytics, sentiment analysis, and interaction quality scoring. Generates insights from call recordings, transcripts, and customer feedback.

CCAI_SERVICE_TYPE_ONDEWO_NLU 4

ONDEWO Natural Language Understanding (NLU) Core natural language processing service for intent recognition, entity extraction, and dialogue management. Essential for conversational AI and automated customer interactions.

CCAI_SERVICE_TYPE_ONDEWO_S2T 5

ONDEWO Speech-to-Text (S2T) Converts audio speech to written text with high accuracy and multi-language support. Integrates with voice channels for real-time transcription during calls.

CCAI_SERVICE_TYPE_ONDEWO_SIP 6

ONDEWO Session Initiation Protocol (SIP) Manages VoIP signaling, call establishment, call control, and telephony infrastructure. Handles SIP trunk integration, PBX connectivity, and call routing logic.

CCAI_SERVICE_TYPE_ONDEWO_T2S 7

ONDEWO Text-to-Speech (T2S) Converts written text to natural-sounding audio speech with multiple voice options. Enables voice-based responses, IVR prompts, and notification delivery.

CCAI_SERVICE_TYPE_ONDEWO_VTSI 8

ONDEWO VOIP Telephone System Integration (VTSI) Provides virtual telephony infrastructure for testing, simulation, and call management. Enables stress testing, scenario simulation, and quality assurance for voice applications.

CCAI_SERVICE_TYPE_ONDEWO_VTSI_RABBITMQ 9

ONDEWO VOIP Telephone System Integration (VTSI) with RabbitMQ Extended VTSI service with RabbitMQ message queue integration for asynchronous processing. Enables decoupled, scalable call handling and event streaming.

CCAI_SERVICE_TYPE_ONDEWO_NLU_QA 10

ONDEWO NLU Question Answering (QA) Provides intelligent question-answering capabilities for knowledge base queries. Enables automated FAQ handling and self-service customer support.

CCAI_SERVICE_TYPE_ONDEWO_NLU_WEBHOOK 11

ONDEWO NLU Webhook Enables webhook-based event integration for NLU events and external notifications. Allows real-time integration with third-party systems and custom workflows.

CCAI_SERVICE_TYPE_ONDEWO_SURVEY 12

ONDEWO Survey Manages survey campaigns, customer feedback collection, and satisfaction measurements. Supports post-call surveys and voice-based survey delivery.

CCAI_SERVICE_TYPE_ONDEWO_NLU_LLM 13

ONDEWO NLU Large Language Model (LLM) Integrates large language models for advanced NLP tasks and generative AI capabilities. Enables contextual responses, content generation, and semantic understanding.

CCAI_SERVICE_TYPE_ONDEWO_NLU_WEBSEARCH 14

ONDEWO NLU Web Search Performs real-time internet search queries and retrieves current information. Enables agents to access live data during customer interactions.

CCAI_SERVICE_TYPE_ONDEWO_AIM_WEBCHAT 15

ONDEWO Agent Interaction Manager (AIM) WebChat Enables live chat interactions via web browsers for customer support. Manages web-based messaging channels with agent assignment and routing.

CCAI_SERVICE_TYPE_ONDEWO_AIM_WEBPHONE 16

ONDEWO Agent Interaction Manager (AIM) WebPhone Enables VoIP phone interactions directly through web browsers without additional software. Supports WebRTC-based calling for modern browser environments.

CCAI_SERVICE_TYPE_ONDEWO_NLU_VECTORSTORE 17

ONDEWO NLU Vector Store Manages vector embeddings and semantic search capabilities for knowledge retrieval. Enables similarity matching and context-aware information lookup.

CCAI_SERVICE_TYPE_ONDEWO_NLU_LLM_AGENT 18

ONDEWO NLU LLM Agent Autonomous agent powered by large language models with tool-calling capabilities. Enables complex, multi-step tasks and dynamic decision-making in customer interactions.

CCAI_SERVICE_TYPE_ONDEWO_NLU_LLM_MCP 19

ONDEWO NLU LLM Model Context Protocol (MCP) Integrates large language models with the Model Context Protocol standard for tool usage. Enables standardized integration with external tools and data sources.

CCAI_SERVICE_TYPE_ONDEWO_NLU_LLM_RAG 20

ONDEWO NLU LLM Retrieval-Augmented Generation (RAG) Enhances large language model responses with document and knowledge base retrieval. Enables grounded, factual responses backed by organizational knowledge.

CCAI_SERVICE_TYPE_ONDEWO_ANALYTICS 21

ONDEWO Analytics Provides comprehensive analytics and metrics for call center operations and KPI tracking. Enables real-time dashboards, historical analysis, and predictive insights.

CCAI_SERVICE_TYPE_ONDEWO_ANALYTICS_DASHBOARD 22

ONDEWO Analytics Dashboard Visual dashboard for displaying analytics, KPIs, and performance metrics. Provides interactive reports for supervisors, managers, and executives.

CCAI_SERVICE_TYPE_ONDEWO_VTSI_OUTBOUND_CAMPAIGN 23

ONDEWO VOIP Telephone System Integration (VTSI) Outbound Calling Handles outbound call campaigns and call management. Enables sales outreach, follow-ups, and proactive customer communication.

CCAI_SERVICE_TYPE_ONDEWO_VTSI_INBOUND_CAMPAIGN 24

ONDEWO VOIP Telephone System Integration (VTSI) Inbound Campaign Manages inbound call campaigns and call routing for marketing or support purposes. Enables targeted call handling and customer engagement strategies.

ondewo/nlu/common.proto

Top

Messages

AddNotificationsRequest

Message for adding notifications in a batch.

FieldTypeLabelDescription
notifications Notification repeated

List of notifications to be added.

AddNotificationsResponse

Message containing the response to adding notifications.

FieldTypeLabelDescription
notifications Notification repeated

List of notifications that have been added.

Comment

Comment message

FieldTypeLabelDescription
name string

resource name of the comment

text string

text of the comment

user_id string

User id as resource name. Format:

projects/<project_uuid>/agent/users/<user_uuid>

comment_about_name string

name of the resource for which the comment is about. Format:

projects/<project_uuid>/agent/<resource_type>/<resource_uuid>/.../

parent_comment_name string

The resource name of the parent comment. A parent comment is a reply to a certain comment. Format:

projects/<project_uuid>/agent/<resource_type>/<resource_uuid>/.../

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

KeyValuePair

Key-Value pair message, where the value can be one of various types (int, float, double, string, etc.).

FieldTypeLabelDescription
key string

The key of the key-value pair.

int_value int32

The integer value (if applicable).

float_value float

The float value (if applicable).

double_value double

The double value (if applicable).

string_value string

The string value (if applicable).

created_at google.protobuf.Timestamp

The timestamp value (if applicable).

ListNotificationsRequest

Message for listing notifications based on certain criteria.

FieldTypeLabelDescription
notification_filter NotificationFilter

Optional filter to narrow the response down to specific notifications.

page_token string

Optional. Token for pagination, obtained from a previous list request. The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

field_mask google.protobuf.FieldMask

Optional. Mask to control which fields will be filled with data.
Example: path=["notification.user_names"]

ListNotificationsResponse

Message containing the response to a list request for notifications.

FieldTypeLabelDescription
notifications Notification repeated

List of notifications that meet the specified criteria.

LogEntry

A generic log entry structure.

FieldTypeLabelDescription
name string

Resource name of the log entry. Format:

projects/<project_uuid>/agent/logs/<log_uuid>

log_entry_sequence_index int32

Sequence index within the run.

display_name string

Name of the log.

log_entry_timestamp google.protobuf.Timestamp

Timestamp of the log.

log_entry_receive_timestamp google.protobuf.Timestamp

Output only. Timestamp when the log was received.

log_entry_severity LogSeverity

Severity of the log.

log_entry_phase string

Execution phase (e.g. "discovery", "extraction").

log_entry_operation_name string

Name of the operation.

log_entry_details google.protobuf.Struct

Raw details in Struct format.

log_entry_context google.protobuf.Struct

Domain-specific metadata in Struct format.

Notification

Notification message

FieldTypeLabelDescription
name string

resource name of the notification

user_name string

User id as resource name. Format:

projects/<project_uuid>/agent/users/<user_uuid>

title string

User id as resource name. Format:

projects/<project_uuid>/agent/users/<user_uuid>

description_short string

A short notification text is displayed directly with max. 50 chars which is a truncated version of the long message

description_long string

A long notification text

notification_flagged_status NotificationFlaggedStatus

Has a notification been flagged by a specific user

notification_flagged_timestamp google.protobuf.Timestamp

When the user marked the notification as read

notification_read_status NotificationReadStatus

Has a notification been read by a specific user

notification_read_timestamp google.protobuf.Timestamp

When the user marked the notification as read, i.e. read the notification

notification_origin NotificationOrigin

The origin of a notification. A Notification origin can be from a product (service), e.g. ondewo-nlu, ondewo-s2t, ondewo-t2s, etc.

origin_name string

The name of resource of where the notification originated

origin_language string

language of the origin resource e.g. language of the nlu agent or language of the speech-to-text service

notification_type NotificationType

The type of notification

notification_visibility NotificationVisibility

The visibility level of the notification

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

NotificationFilter

Message for filtering notifications based on various criteria.

FieldTypeLabelDescription
language_codes string repeated

Language codes of the projects for which notifications are filtered.

notification_origins NotificationOrigin repeated

Origins of the notifications to filter.

notification_visibilities NotificationVisibility repeated

Visibilities of the notifications to filter.

notification_flagged_status NotificationFlaggedStatus repeated

Flagged status of the notifications to filter.

notification_read_status NotificationReadStatus repeated

Read status of the notifications to filter.

earliest google.protobuf.Timestamp

Filter notifications with a time range starting from the specified earliest time.

latest google.protobuf.Timestamp

Filter notifications with a time range ending at the specified latest time.

user_names string repeated

Resource names of users to filter notifications for.

origin_names string repeated

Resource names of the origin of the notification to filter notifications.

SetNotificationsFlaggedStatusRequest

Message for setting the flagged status of notifications.

FieldTypeLabelDescription
notification_names string repeated

Names of notifications to set the flagged status for.

flagged bool repeated

Flagged status to set for the specified notifications.

SetNotificationsReadStatusRequest

Message for setting the read status of notifications.

FieldTypeLabelDescription
notification_names string repeated

Names of notifications to set the read status for.

flagged bool repeated

Read status to set for the specified notifications.

StatResponse

statistic response

FieldTypeLabelDescription
value uint32

Response wrapper for the "Get<Stat>" endpoints

Enums

LogSeverity

Log levels for various system operations based on Loguru log levels.

NameNumberDescription
LOG_SEVERITY_UNSPECIFIED 0

Unspecified log level.

LOG_SEVERITY_TRACE 1

Trace level - lowest level, most detailed.

LOG_SEVERITY_DEBUG 2

Debug level - detailed information for troubleshooting.

LOG_SEVERITY_INFO 3

Info level - general operational messages.

LOG_SEVERITY_SUCCESS 4

Success level - successful completion of an operation.

LOG_SEVERITY_WARNING 5

Warning level - potential issues that don't stop execution.

LOG_SEVERITY_ERROR 6

Error level - serious issues that might affect results.

LOG_SEVERITY_CRITICAL 7

Critical level - critical failures that stop the process.

NotificationFlaggedStatus

Enumerates the possible flagged statuses for a notification.

NameNumberDescription
NOTIFICATION_FLAGGED_STATUS_UNSPECIFIED 0

Unspecified flagged status

NOTIFICATION_FLAGGED_STATUS_FLAGGED 1

Notification is flagged

NOTIFICATION_FLAGGED_STATUS_UNFLAGGED 2

Notification is unflagged

NotificationOrigin

Enumerates the possible origins for a notification.

NameNumberDescription
NOTIFICATION_ORIGIN_UNSPECIFIED 0

unspecified

NOTIFICATION_ORIGIN_ONDEWO_AIM 1

ondewo-aim service

NOTIFICATION_ORIGIN_ONDEWO_BPI 2

ondewo-bpi service

NOTIFICATION_ORIGIN_ONDEWO_CSI 3

ondewo-csi service

NOTIFICATION_ORIGIN_ONDEWO_NLU 4

ondewo-nlu service

NOTIFICATION_ORIGIN_ONDEWO_S2T 5

ondewo-s2t service

NOTIFICATION_ORIGIN_ONDEWO_SIP 6

ondewo-sip service

NOTIFICATION_ORIGIN_ONDEWO_T2S 7

ondewo-t2s service

NOTIFICATION_ORIGIN_ONDEWO_VTSI 8

ondewo-vtsi service

NOTIFICATION_ORIGIN_ONDEWO_VTSI_RABBITMQ 9

ondewo-vtsi-rabbitmq service

NotificationReadStatus

Enumerates the possible read statuses for a notification.

NameNumberDescription
NOTIFICATION_READ_STATUS_UNSPECIFIED 0

Unspecified read status

NOTIFICATION_READ_STATUS_READ 1

Notification is marked as read

NOTIFICATION_READ_STATUS_UNREAD 2

Notification is marked as unread

NotificationType

Enumerates the possible types for a notification.

NameNumberDescription
NOTIFICATION_TYPE_UNSPECIFIED 0

Unspecified notification type

NOTIFICATION_TYPE_DEBUG 1

Debug notification type

NOTIFICATION_TYPE_WARNING 2

Warning notification type

NOTIFICATION_TYPE_INFO 3

Informational notification type

NOTIFICATION_TYPE_ERROR 4

Error notification type

NOTIFICATION_TYPE_NEWS 5

News notification type

NotificationVisibility

Enum for notification type

NameNumberDescription
NOTIFICATION_VISIBILITY_UNSPECIFIED 0

unspecified

NOTIFICATION_VISIBILITY_USER 1

only user sees the notification - usually a notification of the user interface

NOTIFICATION_VISIBILITY_PROJECT 2

all members of a project see this notification

NOTIFICATION_VISIBILITY_PROJECT_OWNER 3

all admins of a project see this notification

NOTIFICATION_VISIBILITY_PROJECT_ADMIN 4

all admins of a project see this notification

NOTIFICATION_VISIBILITY_PROJECT_DEVELOPER 5

all admins of a project see this notification

NOTIFICATION_VISIBILITY_PROJECT_USER 6

all users of a project see this notification

NOTIFICATION_VISIBILITY_PROJECT_EXECUTOR 7

all users of a project see this notification

NOTIFICATION_VISIBILITY_PROJECT_INACTIVE 8

all users of a project see this notification

NOTIFICATION_VISIBILITY_SERVER_ADMIN 9

all admins of the server

NOTIFICATION_VISIBILITY_SERVER_MANAGER 10

all admins of the server

NOTIFICATION_VISIBILITY_SERVER_USER 11

all admins of the server

NOTIFICATION_VISIBILITY_SERVER_INACTIVE 12

all admins of the server

SortingMode

Sorting mode

NameNumberDescription
ASCENDING 0

ascending sorting

DESCENDING 1

descending sorting

ondewo/nlu/context.proto

Top

Services

Contexts

A context represents additional information included with user input or with an intent returned by the Dialogflow API. Contexts are helpful for differentiating user input which may be vague or have a different meaning depending on additional details from your application such as user setting and preferences, previous user input, where the user is in your application, geographic location, and so on.

You can include contexts as input parameters of a DetectIntent (or StreamingDetectIntent) request, or as output contexts included in the returned intent.

Contexts expire when an intent is matched, after the number of DetectIntent requests specified by the lifespan_count parameter, or after 10 minutes if no intents are matched for a DetectIntent request.

For more information about contexts, see the Dialogflow documentation.

Service Methods

ListContexts

rpc ListContexts (ListContextsRequest) returns (ListContextsResponse)
Returns the list of all contexts in the specified session.

GetContext

rpc GetContext (GetContextRequest) returns (Context)
Retrieves the specified context.

CreateContext

rpc CreateContext (CreateContextRequest) returns (Context)
Creates a context.

UpdateContext

rpc UpdateContext (UpdateContextRequest) returns (Context)
Updates the specified context.

DeleteContext

rpc DeleteContext (DeleteContextRequest) returns (.google.protobuf.Empty)
Deletes the specified context.

DeleteAllContexts

rpc DeleteAllContexts (DeleteAllContextsRequest) returns (.google.protobuf.Empty)
Deletes all active contexts in the specified session.

Methods with HTTP bindings

Method Name Method Pattern Body
ListContexts GET /v2/{parent=projects/*/agent/sessions/*}/contexts
GetContext GET /v2/{name=projects/*/agent/sessions/*/contexts/*}
CreateContext POST /v2/{parent=projects/*/agent/sessions/*}/contexts context
UpdateContext PATCH /v2/{context.name=projects/*/agent/sessions/*/contexts/*} context
DeleteContext DELETE /v2/{name=projects/*/agent/sessions/*/contexts/*}
DeleteAllContexts DELETE /v2/{parent=projects/*/agent/sessions/*}/contexts
Messages

Context

Represents a context.

FieldTypeLabelDescription
name string

Required. The display name of the context (must be unique per session). Note: we are deviating from the dialogflow format projects/<project_uuid>/agent/sessions/<session_uuid>/contexts/<context_uuid>.

  • DetectIntent only returns
    • the short display name in the "name" field in query_result.output_contexts
    • only expects the short display name in the "name" field in query_parameters.contexts
  • Also inside the persisted session object only the short display name is used.
    • SessionStep.contexts only contains the short display name
    • SessionReviewStep.contexts only contains the short display name

lifespan_count int32

Optional. The number of conversational query requests after which the context expires. If set to 0 (the default) the context expires immediately. Contexts expire automatically after 10 minutes even if there are no matching queries.

parameters Context.ParametersEntry repeated

Optional. The collection of parameters associated with this context. Refer to this doc for syntax. Keys are the display names of context parameters.

lifespan_time float

Optional. The time span in seconds after which the context expires. By default it does not expire.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

Context.Parameter

Represents a parameter associated with a context

FieldTypeLabelDescription
name string

The name of the context parameter.

display_name string

The display name of the context parameter.

value string

The value(s) of the context parameter.

value_original string

The original value(s) of the context parameter.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

Context.ParametersEntry

FieldTypeLabelDescription
key string

value Context.Parameter

CreateContextRequest

The request message for Contexts.CreateContext.

FieldTypeLabelDescription
session_id string

Required. The session to create a context for. Format:

projects/<project_uuid>/agent/sessions/<session_uuid>

context Context

Required. The context to create.

DeleteAllContextsRequest

The request message for Contexts.DeleteAllContexts.

FieldTypeLabelDescription
session_id string

Required. The name of the session to delete all contexts from. Format:

projects/<project_uuid>/agent/sessions/<session_uuid>

DeleteContextRequest

The request message for Contexts.DeleteContext.

FieldTypeLabelDescription
name string

Required. The name of the context to delete. Format: projects/<project_uuid>/agent/sessions/<session_uuid>/contexts/<context_uuid>.

GetContextRequest

The request message for Contexts.GetContext.

FieldTypeLabelDescription
name string

Required. The name of the context. Format: projects/<project_uuid>/agent/sessions/<session_uuid>/contexts/<context_uuid>.

ListContextsRequest

The request message for Contexts.ListContexts.

FieldTypeLabelDescription
session_id string

Required. The session to list all contexts from. Format:

projects/<project_uuid>/agent/sessions/<session_uuid>

page_token string

Optional. The next_page_token value returned from a previous list request. The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

ListContextsResponse

The response message for Contexts.ListContexts.

FieldTypeLabelDescription
contexts Context repeated

The list of contexts. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

UpdateContextRequest

The request message for Contexts.UpdateContext.

FieldTypeLabelDescription
context Context

Required. The context to update.

update_mask google.protobuf.FieldMask

Optional. The mask to control which fields get updated.

ondewo/nlu/entity_type.proto

Top

Services

EntityTypes

Entities are extracted from user input and represent parameters that are meaningful to your application. For example, a date range, a proper name such as a geographic location or landmark, and so on. Entities represent actionable data for your application.

When you define an entity, you can also include synonyms that all map to that entity. For example, "soft drink", "soda", "pop", and so on.

There are three types of entities:

For more information about entity types, see the Dialogflow documentation.

Service Methods

ListEntityTypes

rpc ListEntityTypes (ListEntityTypesRequest) returns (ListEntityTypesResponse)
Returns the list of all entity types in the specified agent.

GetEntityType

rpc GetEntityType (GetEntityTypeRequest) returns (EntityType)
Retrieves the specified entity type.

CreateEntityType

rpc CreateEntityType (CreateEntityTypeRequest) returns (EntityType)
Creates an entity type in the specified agent.

UpdateEntityType

rpc UpdateEntityType (UpdateEntityTypeRequest) returns (EntityType)
Updates the specified entity type.

DeleteEntityType

rpc DeleteEntityType (DeleteEntityTypeRequest) returns (.google.protobuf.Empty)
Deletes the specified entity type.

BatchUpdateEntityTypes

rpc BatchUpdateEntityTypes (BatchUpdateEntityTypesRequest) returns (Operation)
Updates/Creates multiple entity types in the specified agent. Operation <response: BatchUpdateEntityTypesResponse, metadata: google.protobuf.Struct>

BatchDeleteEntityTypes

rpc BatchDeleteEntityTypes (BatchDeleteEntityTypesRequest) returns (Operation)
Deletes entity types in the specified agent. Operation <response: google.protobuf.Empty, metadata: google.protobuf.Struct>

GetEntity

rpc GetEntity (GetEntityRequest) returns (EntityType.Entity)
Retrieves the specified entity .

CreateEntity

rpc CreateEntity (CreateEntityRequest) returns (EntityType.Entity)
Creates an entity in the specified agent.

UpdateEntity

rpc UpdateEntity (UpdateEntityRequest) returns (EntityType.Entity)
Updates the specified entity .

DeleteEntity

rpc DeleteEntity (DeleteEntityRequest) returns (DeleteEntityStatus)
Deletes the specified entity .

BatchCreateEntities

rpc BatchCreateEntities (BatchCreateEntitiesRequest) returns (BatchEntitiesResponse)
Creates an entity value in an entity type.

BatchUpdateEntities

rpc BatchUpdateEntities (BatchUpdateEntitiesRequest) returns (BatchEntitiesResponse)
Updates a specific entity value.

BatchGetEntities

rpc BatchGetEntities (BatchGetEntitiesRequest) returns (BatchEntitiesResponse)
Gets a specific entity value.

BatchDeleteEntities

rpc BatchDeleteEntities (BatchDeleteEntitiesRequest) returns (BatchDeleteEntitiesResponse)
Deletes the specified entity value.

ListEntities

rpc ListEntities (ListEntitiesRequest) returns (ListEntitiesResponse)
List entities of an entity type

Methods with HTTP bindings

Method Name Method Pattern Body
ListEntityTypes GET /v2/{parent=projects/*/agent}/entityTypes
GetEntityType GET /v2/{name=projects/*/agent/entityTypes/*}
CreateEntityType POST /v2/{parent=projects/*/agent}/entityTypes *
UpdateEntityType PATCH /v2/{entity_type.name=projects/*/agent/entityTypes/*} *
DeleteEntityType DELETE /v2/{name=projects/*/agent/entityTypes/*}
BatchUpdateEntityTypes POST /v2/{parent=projects/*/agent}/entityTypes:batchUpdate *
BatchDeleteEntityTypes POST /v2/{parent=projects/*/agent}/entityTypes:batchDelete *
GetEntity GET /v2/{name=projects/*/agent/entityTypes/*/entities/*}
CreateEntity POST /v2/{parent=projects/*/agent}/entityTypes/*/entities/ *
UpdateEntity PATCH /v2/{entity_.name=projects/*/agent/entityTypes/*/entities/*} *
DeleteEntity DELETE /v2/{name=projects/*/agent/entityTypes/*/entities/*}
Messages

BatchCreateEntitiesRequest

This message is a request to create a batch entities

FieldTypeLabelDescription
create_entity_requests CreateEntityRequest repeated

The create entity requests in a batch

BatchDeleteEntitiesRequest

This message is a request to delete a batch of entities

FieldTypeLabelDescription
names string repeated

The unique identifiers of the entities. Format: projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>/entities/<entity_uuid>.

BatchDeleteEntitiesResponse

This message is a response of deletion of a batch of entities

FieldTypeLabelDescription
delete_statuses DeleteEntityStatus repeated

status of an entity deletion

has_errors bool

error messages

BatchDeleteEntityTypesRequest

The request message for EntityTypes.BatchDeleteEntityTypes.

FieldTypeLabelDescription
parent string

Required. The name of the agent to delete all entities types for. Format: projects/<project_uuid>/agent.

entity_type_names string repeated

Required. The names entity types to delete. All names must point to the same agent as `parent`.

BatchEntitiesResponse

This message is a response of batch entities

FieldTypeLabelDescription
entity_statuses EntityStatus repeated

A list of entity statuses

has_errors bool

indicates if statuses of some of the training phrases have errors

BatchGetEntitiesRequest

This message is a request to get a batch of entities

FieldTypeLabelDescription
names string repeated

The unique identifiers of the entities. Format: projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>/entities/<entity_uuid>.

BatchUpdateEntitiesRequest

This message is a request to update a batch of entities

FieldTypeLabelDescription
entities EntityType.Entity repeated

The entities to update

BatchUpdateEntityTypesRequest

The request message for EntityTypes.BatchUpdateEntityTypes.

FieldTypeLabelDescription
parent string

Required. The name of the agent to update or create entity types in. Format:

projects/<project_uuid>/agent

entity_type_batch_uri string

The URI to a Google Cloud Storage file containing entity types to update or create. The file format can either be a serialized proto (of EntityBatch type) or a JSON object. Note: The URI must start with "gs://".

entity_type_batch_inline EntityTypeBatch

The collection of entity type to update or create.

language_code string

Optional. The language of entity synonyms defined in entity_types. If not specified, the agent's default language is used. More than a dozen languages are supported. Note: languages must be enabled in the agent, before they can be used.

update_mask google.protobuf.FieldMask

Optional. The mask to control which fields get updated.

BatchUpdateEntityTypesResponse

The response message for EntityTypes.BatchUpdateEntityTypes.

FieldTypeLabelDescription
entity_types EntityType repeated

The collection of updated or created entity types.

CreateEntityRequest

FieldTypeLabelDescription
entity_type_name string

Required. Name of the entity type in which to create the entity value. Format: projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>/entities/<entity_uuid>.

entity EntityType.Entity

The entity value to create

CreateEntityTypeRequest

The request message for EntityTypes.CreateEntityType.

FieldTypeLabelDescription
parent string

Required. The agent to create a entity type for. Format:

projects/<project_uuid>/agent

entity_type EntityType

Required. The entity type to create.

language_code string

Optional. The language of entity synonyms defined in entity_type. If not specified, the agent's default language is used. More than a dozen languages are supported. Note: languages must be enabled in the agent, before they can be used.

entity_type_view EntityTypeView

Optional. The resource view to apply to the returned Entity Type

DeleteEntityRequest

This message is a request to delete a batch of entities

FieldTypeLabelDescription
name string

The unique identifiers of the entities. Format: projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>/entities/<entity_uuid>.

DeleteEntityStatus

This message contains the status of an entity deletion

FieldTypeLabelDescription
successfully_deleted google.protobuf.Empty

error_message string

DeleteEntityTypeRequest

The request message for EntityTypes.DeleteEntityType.

FieldTypeLabelDescription
name string

Required. The name of the entity type to delete. Format:

projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>

EntityStatus

This message is for the entity status

FieldTypeLabelDescription
entity EntityType.Entity

The entity

error_message string

Error message

EntityType

Represents an entity type.

Entity types serve as a tool for extracting parameter values from natural

language queries.

FieldTypeLabelDescription
name string

Required for all methods except create (create populates the name automatically. The unique identifier of the entity type. Format: projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>.

display_name string

Required. The name of the entity type.

kind EntityType.Kind

Required. Indicates the kind of entity type.

auto_expansion_mode EntityType.AutoExpansionMode

Optional. Indicates whether the entity type can be automatically expanded.

entities EntityType.Entity repeated

Optional. The collection of entities associated with the entity type.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

entity_count int32

Read-Only field. Total count of entity values of the entity type

status EntityType.EntityTypeStatus

Indicates whether the entity type is active or not

synonym_count int32

Read-Only field. Total count of entity synonyms of the entity type

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

EntityType.Entity

Represents an entity value within an entity type

FieldTypeLabelDescription
value string

Required. For KIND_MAP entity types: A canonical name to be used in place of synonyms. For KIND_LIST entity types: A string that can contain references to other entity types (with or without aliases). Values can also be described as regexes with postprocessing options such as:


 * regex('//1') => references the first group match of the regex defined as a synonym
 * regex('//2') => references the second group match of the regex defined as a synonym
 * regex('//1') => references the first group match of the regex defined as a synonym
Values can also be described as regexes with one or more postprocessing options such as one postprocessing option to remove all whitespaces regex('<#RW#>\\1') or by a combination of several postprocessing options such as remove all whitespaces and lower casing regex('<#RW#><#LC#>\\1'). All processing options are:

 * regex('<#TW>//1') => matches 1st group and trims duplicated whitespaces to one single space
 * regex('<#RW>//1') => matches 1st group and removes all whitespaces
 * regex('<#UC>//1') => matches 1st group and converts to upper case
 * regex('<#LC>//1') => matches 1st group and converts to lower case
 * regex('<#CC>//1') => matches 1st group and converts to camelCase
 * regex('<#SC>//1') => matches 1st group and converts to snake_case

synonyms string repeated

Required. A collection of synonyms. For KIND_LIST entity types this must contain exactly one synonym equal to value. Synonyms can be regex expressions, i.e. regular expressions, that are python compatible. See here for supported regex: https://docs.python.org/3/library/re.html Examples are:


 * regex('[a-zA-Z]+') => just letters
 * regex('\d{1,5}') => just numbers
 * regex('^[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$') => mix of numbers, letters and dot
 * regex('(?i)(^|\s)(0\s{0,3}') => with matching groups and case insensitivity

name string

The unique identifier of the entity. Format: projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>/entities/<entity_uuid>.

display_name string

The name of the entity.

synonym_count int32

Optional. Total count of entity synonyms

language_code string

Required. The language to list entity synonyms for.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

EntityTypeBatch

This message is a wrapper around a collection of entity types.

FieldTypeLabelDescription
entity_types EntityType repeated

A collection of entity types.

EntityTypeSorting

This message contains Entity type sorting

FieldTypeLabelDescription
sorting_field EntityTypeSorting.EntityTypeSortingField

sorting_mode SortingMode

EntityValueSorting

This message contains entity value sorting

FieldTypeLabelDescription
sorting_field EntityValueSorting.EntityValueSortingField

sorting_mode SortingMode

GetEntityRequest

This message is a request to get a an entity

FieldTypeLabelDescription
name string

The unique identifiers of the entities. Format: projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>/entities/<entity_uuid>.

GetEntityTypeRequest

The request message for EntityTypes.GetEntityType.

FieldTypeLabelDescription
name string

Required. The name of the entity type. Format:

projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>

language_code string

Optional. The language to retrieve entity synonyms for. If not specified, the agent's default language is used. More than a dozen languages are supported. Note: languages must be enabled in the agent, before they can be used.

page_token string

The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

entity_type_view EntityTypeView

Optional. The resource view to apply to the returned Entity Type

ListEntitiesRequest

This message is a request to get a list of entities

FieldTypeLabelDescription
entity_type_name string

The unique identifier of the entity type. Format: projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>

language_code string

Optional. The language to list training phrases, parameters and rich messages for. If not specified, the agent's default language is used.

page_token string

Optional. The next_page_token value returned from a previous list request. The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

sort_by_field EntityValueSorting

Optional. Defines the sorting of the list. Default, no sorting.

search_by_pattern string

Optional. Defines a pattern to search for in the entity type "values" and "synonyms" Example:


     Pattern: "dark"
     Results:
             [Entity Value]          [Entity Synonyms]
             Red                     red, scarlett, dark red, ...
             Blue                    blue, indico, dark blue, sky blue, ...
             Dark                    obscure, black, opaque, ...

ListEntitiesResponse

This message is a response of listing entities

FieldTypeLabelDescription
entities EntityType.Entity repeated

The list of entities

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

ListEntityTypesRequest

The request message for EntityTypes.ListEntityTypes.

FieldTypeLabelDescription
parent string

Required. The agent to list all entity types from. Format:

projects/<project_uuid>/agent

language_code string

Optional. The language to list entity synonyms for. If not specified, the agent's default language is used. More than a dozen languages are supported. Note: languages must be enabled in the agent, before they can be used.

page_token string

Optional. The next_page_token value returned from a previous list request. The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

entity_type_view EntityTypeView

Optional. The resource view to apply to the returned entity type.

filter_by_category EntityTypeCategory

Optional. Applies a filter to the list. Default, no filter.

sort_by_field EntityTypeSorting

Optional. Defines the sorting of the list. Default, no sorting.

ListEntityTypesResponse

The response message for EntityTypes.ListEntityTypes.

FieldTypeLabelDescription
entity_types EntityType repeated

The list of agent entity types. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

UpdateEntityRequest

This message is a request to update an entity

FieldTypeLabelDescription
entity EntityType.Entity

The entity to update

UpdateEntityTypeRequest

The request message for EntityTypes.UpdateEntityType.

FieldTypeLabelDescription
entity_type EntityType

Required. The entity type to update. Format:

projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>

language_code string

Optional. The language of entity synonyms defined in entity_type. If not specified, the agent's default language is used. More than a dozen languages are supported. Note: languages must be enabled in the agent, before they can be used.

update_mask google.protobuf.FieldMask

Optional. The mask to control which fields get updated.

entity_type_view EntityTypeView

Optional. The resource view to apply to the returned Entity Type

Enums

EntityType.AutoExpansionMode

Represents different entity type expansion modes. Automated expansion

allows an agent to recognize values that have not been explicitly listed in

the entity (for example, new kinds of shopping list items).

NameNumberDescription
AUTO_EXPANSION_MODE_UNSPECIFIED 0

Auto expansion disabled for the entity.

AUTO_EXPANSION_MODE_DEFAULT 1

Allows an agent to recognize values that have not been explicitly listed in the entity.

EntityType.EntityTypeStatus

NameNumberDescription
ACTIVE 0

Entity type is active

INACTIVE 1

Entity type is inactive

EntityType.Kind

Represents kinds of entities.

NameNumberDescription
KIND_UNSPECIFIED 0

Not specified. This value should be never used.

KIND_MAP 1

Map entity types allow mapping of a group of synonyms to a canonical value.

KIND_LIST 2

List entity types contain a set of entries that do not map to canonical values. However, list entity types can contain references to other entity types (with or without aliases).

EntityTypeCategory

Represents the category of entity types to filter by in the "List Entity Types" request

NameNumberDescription
ALL_ENTITY_TYPES 0

represent all entity types

DEFAULT_ENTITY_TYPES 1

represent the default entity types

USER_DEFINED_ENTITY_TYPES 2

represent the user defined (custom) entity types

EntityTypeSorting.EntityTypeSortingField

Structure of Entity type sorting field

NameNumberDescription
NO_ENTITY_TYPE_SORTING 0

No sorting applied

SORT_ENTITY_TYPE_BY_NAME 1

Sort by entity type name

SORT_ENTITY_TYPE_BY_CREATION_DATE 2

Sort by creation date

SORT_ENTITY_TYPE_BY_LAST_UPDATED 3

Sort by last updated date

SORT_ENTITY_TYPE_BY_ENTITY_VALUE_COUNT 4

Sort by entity value count

SORT_ENTITY_TYPE_BY_SYNONYM_COUNT 5

Sort by synonym count

EntityTypeView

Represents the options for views of an entity type.

An entity type can be a sizable object. Therefore, we provide a resource view that

does not return all values and synonyms besides the full view that is set by default.

NameNumberDescription
ENTITY_TYPE_VIEW_UNSPECIFIED 0

Same as ENTITY_TYPE_VIEW_FULL

ENTITY_TYPE_VIEW_FULL 1

All fields are populated.

ENTITY_TYPE_VIEW_PARTIAL 2

The amount of entity values and synonyms is limited

ENTITY_TYPE_VIEW_SHALLOW 3

No entity synonyms are returned, only entity values

ENTITY_TYPE_VIEW_MINIMUM 4

Minimum view including only entity type UUID and entity type display name

EntityValueSorting.EntityValueSortingField

Structure of Entity value sorting field

NameNumberDescription
NO_ENTITY_VALUE_SORTING 0

Default behaviour: Sorts by value

SORT_ENTITY_VALUE_BY_DISPLAY_NAME 1

Sort by display name

SORT_ENTITY_VALUE_BY_VALUE 2

Sort by value

SORT_ENTITY_VALUE_BY_SYNONYM_COUNT 3

Sort by synonym count

ondewo/nlu/intent.proto

Top

Services

Intents

An intent represents a mapping between input from a user and an action to be taken by your application. When you pass user input to the DetectIntent (or StreamingDetectIntent) method, the Dialogflow API analyzes the input and searches for a matching intent. If no match is found, the Dialogflow API returns a fallback intent (is_fallback = true).

You can provide additional information for the Dialogflow API to use to match user input to an intent by adding the following to your intent.

For more information about intents, see the Dialogflow documentation.

Service Methods

ListIntents

rpc ListIntents (ListIntentsRequest) returns (ListIntentsResponse)
Returns the list of all intents in the specified agent.

GetIntent

rpc GetIntent (GetIntentRequest) returns (Intent)
Retrieves the specified intent.

CreateIntent

rpc CreateIntent (CreateIntentRequest) returns (Intent)
Creates an intent in the specified agent.

UpdateIntent

rpc UpdateIntent (UpdateIntentRequest) returns (Intent)
Updates the specified intent.

DeleteIntent

rpc DeleteIntent (DeleteIntentRequest) returns (.google.protobuf.Empty)
Deletes the specified intent.

BatchUpdateIntents

rpc BatchUpdateIntents (BatchUpdateIntentsRequest) returns (BatchUpdateIntentsResponse)
Updates/Creates multiple intents in the specified agent. Operation <response: BatchUpdateIntentsResponse>

BatchDeleteIntents

rpc BatchDeleteIntents (BatchDeleteIntentsRequest) returns (Operation)
Deletes intents in the specified agent.
Operation <response: google.protobuf.Empty>

TagIntent

rpc TagIntent (IntentTagRequest) returns (.google.protobuf.Empty)
Tags a specific intent with tag(s)

DeleteIntentTag

rpc DeleteIntentTag (IntentTagRequest) returns (.google.protobuf.Empty)
Deletes tag(s) for a specific intent

GetIntentTags

rpc GetIntentTags (GetIntentTagsRequest) returns (GetIntentTagsResponse)
Gets all the tags for a specific intent

GetAllIntentTags

rpc GetAllIntentTags (GetAllIntentTagsRequest) returns (GetIntentTagsResponse)
Gets all the tags for all the intents

BatchCreateTrainingPhrases

rpc BatchCreateTrainingPhrases (BatchCreateTrainingPhrasesRequest) returns (BatchTrainingPhrasesStatusResponse)
Creates batch of training phrases

BatchGetTrainingPhrases

rpc BatchGetTrainingPhrases (BatchGetTrainingPhrasesRequest) returns (BatchTrainingPhrasesStatusResponse)
Retrieve a training phrases batch of the specified names.

BatchUpdateTrainingPhrases

rpc BatchUpdateTrainingPhrases (BatchUpdateTrainingPhrasesRequest) returns (BatchTrainingPhrasesStatusResponse)
Updates batch of training phrases

BatchDeleteTrainingPhrases

rpc BatchDeleteTrainingPhrases (BatchDeleteTrainingPhrasesRequest) returns (BatchDeleteTrainingPhrasesResponse)
Delete a training phrases batch of the specified names.

ListTrainingPhrases

rpc ListTrainingPhrases (ListTrainingPhrasesRequest) returns (ListTrainingPhrasesResponse)
List training phrases (of a specific intent).

BatchCreateResponseMessages

rpc BatchCreateResponseMessages (BatchCreateResponseMessagesRequest) returns (BatchResponseMessagesStatusResponse)
Creates batch of intent messages

BatchGetResponseMessages

rpc BatchGetResponseMessages (BatchGetResponseMessagesRequest) returns (BatchResponseMessagesStatusResponse)
Retrieve a intent messages batch of the specified names.

BatchUpdateResponseMessages

rpc BatchUpdateResponseMessages (BatchUpdateResponseMessagesRequest) returns (BatchResponseMessagesStatusResponse)
Updates batch of intent messages

BatchDeleteResponseMessages

rpc BatchDeleteResponseMessages (BatchDeleteResponseMessagesRequest) returns (BatchDeleteResponseMessagesResponse)
Delete a intent messages batch of the specified names.

ListResponseMessages

rpc ListResponseMessages (ListResponseMessagesRequest) returns (ListResponseMessagesResponse)
List messages (of a specific intent).

BatchCreateParameters

rpc BatchCreateParameters (BatchCreateParametersRequest) returns (BatchParametersStatusResponse)
Creates batch of intent messages

BatchGetParameters

rpc BatchGetParameters (BatchGetParametersRequest) returns (BatchParametersStatusResponse)
Retrieve a intent messages batch of the specified names.

BatchUpdateParameters

rpc BatchUpdateParameters (BatchUpdateParametersRequest) returns (BatchParametersStatusResponse)
Updates batch of intent messages

BatchDeleteParameters

rpc BatchDeleteParameters (BatchDeleteParametersRequest) returns (BatchDeleteParametersResponse)
Delete a intent messages batch of the specified names.

ListParameters

rpc ListParameters (ListParametersRequest) returns (ListParametersResponse)
List messages (of a specific intent).

ListTrainingPhrasesofIntentsWithEnrichment

rpc ListTrainingPhrasesofIntentsWithEnrichment (ListTrainingPhrasesofIntentsWithEnrichmentRequest) returns (ListTrainingPhrasesofIntentsWithEnrichmentResponse)
List Training phrases (of a specific intent).

Methods with HTTP bindings

Method Name Method Pattern Body
ListIntents GET /v2/{parent=projects/*/agent}/intents
GetIntent GET /v2/{name=projects/*/agent/intents/*}
CreateIntent POST /v2/{parent=projects/*/agent}/intents *
UpdateIntent PATCH /v2/{intent.name=projects/*/agent/intents/*} *
DeleteIntent DELETE /v2/{name=projects/*/agent/intents/*}
BatchUpdateIntents POST /v2/{parent=projects/*/agent}/intents:batchUpdate *
BatchDeleteIntents POST /v2/{parent=projects/*/agent}/intents:batchDelete *
TagIntent POST /v2/{parent=projects/*/agent}/intents:tagIntent *
DeleteIntentTag POST /v2/{parent=projects/*/agent}/intents:deleteIntentTag *
Messages

BatchCreateParametersRequest

Request to create a batch of parameters in the specified intent

FieldTypeLabelDescription
parameter_requests BatchCreateParametersRequest.CreateParameterRequest repeated

List of parameters to create

BatchCreateParametersRequest.CreateParameterRequest

Request to create a single parameter

FieldTypeLabelDescription
intent_name string

Required. The name of the intent for which to create a training phrase for.

parameter Intent.Parameter

Required. The response message.

BatchCreateResponseMessagesRequest

Request to create a list of new response messages and adds it to an intent

FieldTypeLabelDescription
response_message_requests BatchCreateResponseMessagesRequest.CreateResponseMessageRequest repeated

BatchCreateResponseMessagesRequest.CreateResponseMessageRequest

Request to create a single response message

FieldTypeLabelDescription
intent_name string

Required. The name of the intent for which to create a response message for.

response_message Intent.Message

Required. The response message.

BatchCreateTrainingPhrasesRequest

This message is a request of a creation of a batch of training phrases

FieldTypeLabelDescription
training_phrase_requests BatchCreateTrainingPhrasesRequest.CreateTrainingPhraseRequest repeated

BatchCreateTrainingPhrasesRequest.CreateTrainingPhraseRequest

Request to create a single training phrase

FieldTypeLabelDescription
intent_name string

Required. The name of the intent for which to create a training phrase for.

training_phrase Intent.TrainingPhrase

Required. The training phrase to create.

BatchDeleteIntentsRequest

The request message for Intents.BatchDeleteIntents.

FieldTypeLabelDescription
parent string

Required. The name of the agent to delete all entities types for. Format: projects/<project_uuid>/agent.

intents Intent repeated

Required. The collection of intents to delete. Only intent name must be filled in.

BatchDeleteParametersRequest

Request to delete parameters specified by their names.

FieldTypeLabelDescription
names string repeated

Required. The names of the response messages. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>/parameters/<parameter_uuid

BatchDeleteParametersResponse

This message contains response of deleted parameters

FieldTypeLabelDescription
delete_statuses BatchDeleteParametersResponse.DeleteParameterStatus repeated

has_errors bool

BatchDeleteParametersResponse.DeleteParameterStatus

Status of a parameter deletion operation

FieldTypeLabelDescription
successfully_deleted google.protobuf.Empty

error_message string

BatchDeleteResponseMessagesRequest

Request to delete response messages specified by their names

FieldTypeLabelDescription
names string repeated

Required. The names of the response messages. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>/responseMessages/<message_uuid>

BatchDeleteResponseMessagesResponse

Response containing list with deleted response messages

FieldTypeLabelDescription
delete_statuses BatchDeleteResponseMessagesResponse.DeleteResponseMessageStatus repeated

has_errors bool

BatchDeleteResponseMessagesResponse.DeleteResponseMessageStatus

Status of a response message deletion operation

FieldTypeLabelDescription
successfully_deleted google.protobuf.Empty

error_message string

BatchDeleteTrainingPhrasesRequest

This message is a request to delete a batch of training phrases

FieldTypeLabelDescription
names string repeated

Required. The names of the training phrases. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>/trainingPhrases/<training_phrase_uuid>

BatchDeleteTrainingPhrasesResponse

This message is a response of deleting a batch of training phrases

FieldTypeLabelDescription
delete_statuses BatchDeleteTrainingPhrasesResponse.DeleteTrainingPhraseStatus repeated

has_errors bool

BatchDeleteTrainingPhrasesResponse.DeleteTrainingPhraseStatus

Status of a training phrase deletion operation

FieldTypeLabelDescription
successfully_deleted google.protobuf.Empty

error_message string

BatchGetParametersRequest

Request to get batch of parameters in a specified intent

FieldTypeLabelDescription
names string repeated

Required. The names of the response messages. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>/parameters/<parameter_uuid>

BatchGetResponseMessagesRequest

Request to retrieve a response messages

FieldTypeLabelDescription
names string repeated

Required. The names of the response messages. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>/responseMessages/<message_uuid>

BatchGetTrainingPhrasesRequest

This message is a request to get a batch training phrases

FieldTypeLabelDescription
names string repeated

Required. The names of the training phrases. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>/trainingPhrases/<training_phrase_uuid>

BatchParametersStatusResponse

Response containing a batch of parameters in the specified intent

FieldTypeLabelDescription
parameter_statuses BatchParametersStatusResponse.ParameterStatus repeated

has_errors bool

indicates if statuses of some of the parameters have errors

BatchParametersStatusResponse.ParameterStatus

Status of a parameter operation

FieldTypeLabelDescription
parameter Intent.Parameter

error_message string

BatchResponseMessagesStatusResponse

This message is a response of a batch responses of message status

FieldTypeLabelDescription
response_message_statuses BatchResponseMessagesStatusResponse.ResponseMessageStatus repeated

has_errors bool

indicates if statuses of some of the response messages have errors

BatchResponseMessagesStatusResponse.ResponseMessageStatus

Status of a response message operation

FieldTypeLabelDescription
response_message Intent.Message

error_message string

BatchTrainingPhrasesStatusResponse

This message is a response of the status of a batch of training phrases

FieldTypeLabelDescription
training_phrase_statuses TrainingPhraseStatus repeated

A list of training phrase statuses

has_errors bool

indicates if statuses of some of the training phrases have errors

BatchUpdateIntentsRequest

The request message for Intents.BatchUpdateIntents.

FieldTypeLabelDescription
parent string

Required. The name of the agent to update or create intents in. Format:

projects/<project_uuid>/agent

intent_batch_uri string

The URI to a Google Cloud Storage file containing intents to update or create. The file format can either be a serialized proto (of IntentBatch type) or JSON object. Note: The URI must start with "gs://".

intent_batch_inline IntentBatch

The collection of intents to update or create.

language_code string

Optional. The language of training phrases, parameters and rich messages defined in intents. If not specified, the agent's default language is used. More than a dozen languages are supported. Note: languages must be enabled in the agent, before they can be used.

update_mask google.protobuf.FieldMask

Optional. The mask to control which fields get updated.

intent_view IntentView

Optional. The resource view to apply to the returned intent.

BatchUpdateIntentsResponse

The response message for Intents.BatchUpdateIntents.

FieldTypeLabelDescription
intents Intent repeated

The collection of updated or created intents.

BatchUpdateParametersRequest

Request to update parameters and adds them to an intent

FieldTypeLabelDescription
parameters Intent.Parameter repeated

The response messages to update

BatchUpdateResponseMessagesRequest

Request to update a response message in the specified intent

FieldTypeLabelDescription
response_messages Intent.Message repeated

The response messages to update

BatchUpdateTrainingPhrasesRequest

This message is a request to update a batch of training phrases

FieldTypeLabelDescription
training_phrases Intent.TrainingPhrase repeated

A list of training phrases

CreateIntentRequest

The request message for Intents.CreateIntent.

FieldTypeLabelDescription
parent string

Required. The agent to create a intent for. Format:

projects/<project_uuid>/agent

intent Intent

Required. The intent to create.

language_code string

Optional. The language of training phrases, parameters and rich messages defined in intent. If not specified, the agent's default language is used. More than a dozen languages are supported. Note: languages must be enabled in the agent, before they can be used.

intent_view IntentView

Optional. The resource view to apply to the returned intent.

DeleteIntentRequest

The request message for Intents.DeleteIntent.

FieldTypeLabelDescription
name string

Required. The name of the intent to delete. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

GetAllIntentTagsRequest

This message is a request to get all intent tags

FieldTypeLabelDescription
parent string

Required. The name of the agent to delete all entities types for. Format: projects/<project_uuid>/agent.

GetIntentRequest

The request message for Intents.GetIntent.

FieldTypeLabelDescription
name string

Required. The name of the intent. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

language_code string

Optional. The language to retrieve training phrases, parameters and rich messages for. If not specified, the agent's default language is used. More than a dozen languages are supported. Note: languages must be enabled in the agent, before they can be used.

intent_view IntentView

Optional. The resource view to apply to the returned intent.

page_token string

The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

GetIntentTagsRequest

This message is a request to get intent tags

FieldTypeLabelDescription
intent_name string

The path of the intent. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

GetIntentTagsResponse

This message is a response of getting intent tags

FieldTypeLabelDescription
intent_tags string repeated

All the distinct intent tags sorted

Intent

Represents an intent.

Intents convert a number of user expressions or patterns into an action. An action is an extraction of a user command or sentence semantics.

FieldTypeLabelDescription
name string

Required for all methods except create (create populates the name automatically. The unique identifier of this intent. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

display_name string

Required. The name of this intent.

webhook_state Intent.WebhookState

Required. Indicates whether webhooks are enabled for the intent.

priority int32

Optional. The priority of this intent. Higher numbers represent higher priorities. Zero or negative numbers mean that the intent is disabled.

is_fallback bool

Optional. Indicates whether this is a fallback intent.

ml_disabled bool

Optional. Indicates whether Machine Learning is disabled for the intent. Note: If ml_disabled setting is set to true, then this intent is not taken into account during inference in ML ONLY match mode. Also, auto-markup in the UI is turned off.

input_context_names string repeated

Optional. The list of context names required for this intent to be triggered. Format:

projects/<project_uuid>/agent/sessions/-/contexts/<context_uuid>

events string repeated

Optional. The collection of event names that trigger the intent. If the collection of input contexts is not empty, all of the contexts must be present in the active user session for an event to trigger this intent.

training_phrases Intent.TrainingPhrase repeated

Optional. The collection of examples/templates that the agent is trained on.

action string

Optional. The name of the action associated with the intent.

output_contexts Context repeated

Optional. The collection of contexts that are activated when the intent is matched. Context messages in this collection should not set the parameters field. Setting the lifespan_count to 0 will reset the context when the intent is matched. Format:

projects/<project_uuid>/agent/sessions/-/contexts/<context_uuid>

reset_contexts bool

Optional. Indicates whether to delete all contexts in the current session when this intent is matched.

parameters Intent.Parameter repeated

Optional. The collection of parameters associated with the intent.

messages Intent.Message repeated

Optional. The collection of rich messages corresponding to the Response field in the Dialogflow console.

default_response_platforms Intent.Message.Platform repeated

Optional. The list of platforms for which the first response will be taken from among the messages assigned to the DEFAULT_PLATFORM.

root_followup_intent_name string

The unique identifier of the root intent in the chain of followup intents. It identifies the correct followup intents chain for this intent. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

parent_followup_intent_name string

The unique identifier of the parent intent in the chain of followup intents. It identifies the parent followup intent. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

followup_intent_info Intent.FollowupIntentInfo repeated

Optional. Collection of information about all followup intents that have name of this intent as a root_name.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

domain_name string

Optional. Domain to which the intent belongs

is_start_of_deviation bool

Optional. Indicates whether the intent starts a deviation in conversation flow

is_end_of_deviation bool

Optional. Indicates whether the intent ends a deviation in conversation flow

training_phrase_count int32

Optional. Total count of training phrases associated to the intent.

status Intent.IntentStatus

Indicates whether the intent is active or not

start_date google.protobuf.Timestamp

Optional. Provides information that can be used in custom scripts

end_date google.protobuf.Timestamp

Optional. Provides information that can be used in custom scripts

tags string repeated

Optional. Adds arbitrary "categories" for which one could filter the intents

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

Intent.FollowupIntentInfo

Represents a single followup intent in the chain.

FieldTypeLabelDescription
followup_intent_name string

The unique identifier of the followup intent. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

parent_followup_intent_name string

The unique identifier of the followup intent parent. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

Intent.Message

Corresponds to the Response field in the Dialogflow console.

FieldTypeLabelDescription
name string

Required. The name of the return message. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>/responseMessages/<message_uuid>

language_code string

Required. The language of the return message.

text Intent.Message.Text

The text response.

image Intent.Message.Image

The image response.

quick_replies Intent.Message.QuickReplies

The quick replies response.

card Intent.Message.Card

The card response.

payload google.protobuf.Struct

Returns a response containing a custom, platform-specific payload. See the Intent.Message.Platform type for a description of the structure that may be required for your platform.

simple_responses Intent.Message.SimpleResponses

The voice and text-only responses for Actions on Google.

basic_card Intent.Message.BasicCard

The basic card response for Actions on Google.

suggestions Intent.Message.Suggestions

The suggestion chips for Actions on Google.

link_out_suggestion Intent.Message.LinkOutSuggestion

The link out suggestion chip for Actions on Google.

list_select Intent.Message.ListSelect

The list card response for Actions on Google.

carousel_select Intent.Message.CarouselSelect

The carousel card response for Actions on Google.

html_text Intent.Message.HTMLText

The HTML text response

video Intent.Message.Video

The Video response

audio Intent.Message.Audio

The Audio response

platform Intent.Message.Platform

Optional. The platform that this message is intended for.

is_prompt bool

Read-only. States if a returned message is a prompt or not.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

Intent.Message.Audio

The Audio response message.

FieldTypeLabelDescription
uri string

Optional. The public URI to an audio file.

accessibility_text string

Optional. A text description of the audio to be used for accessibility, e.g., screen readers.

Intent.Message.BasicCard

The basic card message. Useful for displaying information.

FieldTypeLabelDescription
title string

Optional. The title of the card.

subtitle string

Optional. The subtitle of the card.

formatted_text string

Required, unless image is present. The body text of the card.

image Intent.Message.Image

Optional. The image for the card.

buttons Intent.Message.BasicCard.Button repeated

Optional. The collection of card buttons.

Intent.Message.BasicCard.Button

The button object that appears at the bottom of a card.

FieldTypeLabelDescription
title string

Required. The title of the button.

open_uri_action Intent.Message.BasicCard.Button.OpenUriAction

Required. Action to take when a user taps on the button.

Intent.Message.BasicCard.Button.OpenUriAction

Opens the given URI.

FieldTypeLabelDescription
uri string

Required. The HTTP or HTTPS scheme URI.

Intent.Message.Card

The card response message.

FieldTypeLabelDescription
title string

Optional. The title of the card.

subtitle string

Optional. The subtitle of the card.

image_uri string

Optional. The public URI to an image file for the card.

buttons Intent.Message.Card.Button repeated

Optional. The collection of card buttons.

Intent.Message.Card.Button

Optional. Contains information about a button.

FieldTypeLabelDescription
text string

Note: One of the following is required: Optional. The text to show on the button.

postback string

Optional. The text to send back to the Dialogflow API or a URI to open.

Intent.Message.CarouselSelect

The card for presenting a carousel of options to select from.

FieldTypeLabelDescription
items Intent.Message.CarouselSelect.Item repeated

Required. Carousel items.

Intent.Message.CarouselSelect.Item

An item in the carousel.

FieldTypeLabelDescription
info Intent.Message.SelectItemInfo

Required. Additional info about the option item.

title string

Required. Title of the carousel item.

description string

Optional. The body text of the card.

image Intent.Message.Image

Optional. The image to display.

Intent.Message.HTMLText

This message contains HTML text

FieldTypeLabelDescription
text string repeated

Collection of the agent's responses in HTML format

Intent.Message.Image

The image response message.

FieldTypeLabelDescription
image_uri string

Optional. The public URI to an image file.

accessibility_text string

Optional. A text description of the image to be used for accessibility, e.g., screen readers.

Intent.Message.LinkOutSuggestion

The suggestion chip message that allows the user to jump out to the app or website associated with this agent.

FieldTypeLabelDescription
destination_name string

Required. The name of the app or site this chip is linking to.

uri string

Required. The URI of the app or site to open when the user taps the suggestion chip.

Intent.Message.ListSelect

The card for presenting a list of options to select from.

FieldTypeLabelDescription
title string

Optional. The overall title of the list.

items Intent.Message.ListSelect.Item repeated

Required. List items.

Intent.Message.ListSelect.Item

An item in the list.

FieldTypeLabelDescription
info Intent.Message.SelectItemInfo

Required. Additional information about this option.

title string

Required. The title of the list item.

description string

Optional. The main text describing the item.

image Intent.Message.Image

Optional. The image to display.

Intent.Message.QuickReplies

The quick replies response message.

FieldTypeLabelDescription
title string

Optional. The title of the collection of quick replies.

quick_replies string repeated

Optional. The collection of quick replies.

Intent.Message.SelectItemInfo

Additional info about the select item for when it is triggered in a dialog.

FieldTypeLabelDescription
key string

Required. A unique key that will be sent back to the agent if this response is given.

synonyms string repeated

Optional. A list of synonyms that can also be used to trigger this item in dialog.

Intent.Message.SimpleResponse

The simple response message containing speech or text.

FieldTypeLabelDescription
text_to_speech string

One of text_to_speech or ssml must be provided. The plain text of the speech output. Mutually exclusive with ssml.

ssml string

One of text_to_speech or ssml must be provided. Structured spoken response to the user in the SSML format. Mutually exclusive with text_to_speech.

display_text string

Optional. The text to display.

Intent.Message.SimpleResponses

The collection of simple response candidates. This message in QueryResult.fulfillment_messages and WebhookResponse.fulfillment_messages should contain only one SimpleResponse.

FieldTypeLabelDescription
simple_responses Intent.Message.SimpleResponse repeated

Required. The list of simple responses.

Intent.Message.Suggestion

The suggestion chip message that the user can tap to quickly post a reply to the conversation.

FieldTypeLabelDescription
title string

Required. The text shown the in the suggestion chip.

Intent.Message.Suggestions

The collection of suggestions.

FieldTypeLabelDescription
suggestions Intent.Message.Suggestion repeated

Required. The list of suggested replies.

Intent.Message.Text

The text response message.

FieldTypeLabelDescription
text string repeated

Optional. The collection of the agent's responses.

Intent.Message.Video

The Video response message.

FieldTypeLabelDescription
uri string

Optional. The public URI to a video file.

accessibility_text string

Optional. A text description of the video to be used for accessibility, e.g., screen readers.

Intent.Parameter

Represents intent parameters.

FieldTypeLabelDescription
name string

The unique identifier of this parameter. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>/parameters/<parameter_uuid>

display_name string

Required. The name of the parameter.

value string

Optional. The definition of the parameter value. It can be:

  • a constant string,
  • a parameter value defined as $parameter_name,
  • an original parameter value defined as $parameter_name.original,
  • a parameter value from some context defined as #context_name.parameter_name.

default_value string

Optional. The default value to use when the value yields an empty result. Default values can be extracted from contexts by using the following syntax: #context_name.parameter_name.

entity_type_name string

Optional. The unique identifier of the entity type in format projects/<project_uuid>/agent/entityTypes/<entity_type_uuid> that describes values of the parameter. If the parameter is required, this must be provided.

entity_type_display_name string

Optional. The name of the entity type that describes values of the parameter. If the parameter is required, this must be provided.

mandatory bool

Optional. Indicates whether the parameter is required. That is, whether the intent cannot be completed without collecting the parameter value.

prompts Intent.Parameter.Prompt repeated

Optional. The collection of prompts that the agent can present to the user in order to collect value for the parameter.

is_list bool

Optional. Indicates whether the parameter represents a list of values.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

Intent.Parameter.Prompt

Represents the prompts in the parameters.

FieldTypeLabelDescription
name string

The unique identifier of this prompt. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>/parameters/<parameter_uuid>/prompts/<prompt_uuid>

text string

Required. Text of the prompt

language_code string

The language of the prompts. If not specified, the default language code will be used.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

Intent.TrainingPhrase

Represents an example or template that the agent is trained on.

FieldTypeLabelDescription
name string

Required. The unique identifier of this training phrase. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>/trainingPhrases/<training_phrase_uuid>

type Intent.TrainingPhrase.Type

Required. The type of the training phrase.

text string

Required. The text of the training phrase.

entities Intent.TrainingPhrase.Entity repeated

Optional. The collection of annotated entities in the training phrase.

times_added_count int32

Optional. Indicates how many times this example or template was added to the intent. Each time a developer adds an existing sample by editing an intent or training, this counter is increased.

language_code string

Optional. The language of the training phrase.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

Intent.TrainingPhrase.Entity

Represents an entity annotation in a training phrase. The entity can be annotated on the level of

entity type only or both entity type and entity value.

FieldTypeLabelDescription
entity_type_name string

Required. The unique entity type identifier in format projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>.

entity_type_display_name string

Optional. The entity type name.

entity_value_name string

Optional. The unique entity value identifier in format projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>/entities/<entity_uuid>. The entity value must belong to the entity type defined in entity_type_name.

entity_value_display_name string

Optional. The entity value name.

start int32

Required. Defines a character position, where the entity starts in the training phrase text (0-indexed).

end int32

Required. Defines a character position + 1, where the entity ends in the training phrase. Example: "Meet you tomorrow" -> Entity(entity_type_display_name="sys.date", start=9, end=17)

parameter_name string

Optional. The unique parameter identifier in format projects/<project_uuid>/agent/intents/<intent_uuid>/parameters/<parameter_uuid> for the value extracted from the annotated part of the example. The parameter must be one of the parameters defined in the top-level intent message. Can be unset if the parameter is created in the same create/update intent request as the annotation.

parameter_display_name string

Optional. The parameter name.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

IntentBatch

This message is a wrapper around a collection of intents.

FieldTypeLabelDescription
intents Intent repeated

A collection of intents.

IntentSorting

This message contains sorting of an intent

FieldTypeLabelDescription
sorting_field IntentSorting.IntentSortingField

sorting_mode SortingMode

IntentTagRequest

This message is a request to get an intent tag

FieldTypeLabelDescription
intent_name string

The path of the intent. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

tags string repeated

Intent tags for this intent to operate on

ListIntentsRequest

The request message for Intents.ListIntents.

FieldTypeLabelDescription
parent string

Required. The agent to list all intents from. Format:

projects/<project_uuid>/agent

language_code string

Optional. The language to list training phrases, parameters and rich messages for. If not specified, the agent's default language is used. More than a dozen languages are supported. Note: languages must be enabled in the agent before they can be used.

intent_view IntentView

Optional. The resource view to apply to the returned intent.

page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

filter_by_category IntentCategory

Optional. Applies a filter to the list. Default, no filter.

sort_by_field IntentSorting

Optional. Defines the sorting of the list. Default, no sorting.

filter_by_tags string repeated

Optional. Applies a filter to the list by tags. Default, no filter.

ListIntentsResponse

The response message for Intents.ListIntents.

FieldTypeLabelDescription
intents Intent repeated

The list of agent intents. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

ListParametersRequest

The request message for TrainingPhraseRequest

FieldTypeLabelDescription
intent_name string

Required. The agent to list all intents from. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

language_code string

Optional. The language code used to filter out prompts.

page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

ListParametersResponse

The response message for ListTrainingPhrase

FieldTypeLabelDescription
parameters Intent.Parameter repeated

The list of parameters. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

Token to retrieve the next page of results, or empty if there are no more results in the list. Format: current_index-<CURRENT_INDEX>--page_size-<PAGE_SIZE>--sub_field-<SUB_FIELD> where <CURRENT_INDEX> and <PAGE_SIZE> are of type int, <SUB_FIELD> is of type str (example: parameters)

ListResponseMessagesRequest

The request message for ResponseMessageRequest

FieldTypeLabelDescription
intent_name string

Required. The agent to list all intents from. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

language_code string

Optional. The language to list response messages, parameters and rich messages for. If not specified, the agent's default language is used.

page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

ListResponseMessagesResponse

The response message for ListResponseMessage

FieldTypeLabelDescription
response_messages Intent.Message repeated

The list of response messages. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

Token to retrieve the next page of results, or empty if there are no more results in the list. Format: current_index-<CURRENT_INDEX>--page_size-<PAGE_SIZE>--sub_field-<SUB_FIELD> where <CURRENT_INDEX> and <PAGE_SIZE> are of type int, <SUB_FIELD> is of type str (example: messages)

ListTrainingPhrasesRequest

The request message for TrainingPhraseRequest

FieldTypeLabelDescription
intent_name string

Required. The agent to list all intents from. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

language_code string

Optional. The language to list training phrases, parameters and rich messages for. If not specified, the agent's default language is used.

page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

ListTrainingPhrasesResponse

The response message for ListTrainingPhrase

FieldTypeLabelDescription
training_phrases Intent.TrainingPhrase repeated

The list of training phrases. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

Token to retrieve the next page of results, or empty if there are no more results in the list. Format: current_index-<CURRENT_INDEX>--page_size-<PAGE_SIZE>--sub_field-<SUB_FIELD> where <CURRENT_INDEX> and <PAGE_SIZE> are of type int, <SUB_FIELD> is of type str (example: training_phrases)

ListTrainingPhrasesofIntentsWithEnrichmentRequest

The request message for TrainingPhraseRequest

FieldTypeLabelDescription
parent string

Required. The name of the agent to delete all entities types for. Format: projects/<project_uuid>/agent.

language_code string

Optional. The language code used to filter out prompts.

intent_ids string repeated

Optional. List of intent uuids to filter by. Only training phrases that have this intent uuid will be returned If not passed, returns all

page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

ListTrainingPhrasesofIntentsWithEnrichmentResponse

This message contains a list of training phrases filtered by intent ids, language code and parent passed through the request

FieldTypeLabelDescription
training_phrases string repeated

List of user_says values. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

Optional. The next_page_token value returned from a previous list request. Format: current_index-<CURRENT_INDEX>--page_size-<PAGE_SIZE>--sub_field-<SUB_FIELD> where <CURRENT_INDEX> and <PAGE_SIZE> are of type int, <SUB_FIELD> is of type str (example: parameters)

TrainingPhraseStatus

This message containing the training phrases status

FieldTypeLabelDescription
training_phrase Intent.TrainingPhrase

error_message string

UpdateIntentRequest

The request message for Intents.UpdateIntent.

FieldTypeLabelDescription
intent Intent

Required. The intent to update. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

language_code string

Optional. The language of training phrases, parameters and rich messages defined in intent. If not specified, the agent's default language is used. More than a dozen languages are supported. Note: languages must be enabled in the agent, before they can be used.

update_mask google.protobuf.FieldMask

Optional. The mask to control which fields get updated.

intent_view IntentView

Optional. The resource view to apply to the returned intent.

Enums

Intent.IntentStatus

Structure of status of an Intent

NameNumberDescription
ACTIVE 0

Intent is active

INACTIVE 1

Intent is inactive

Intent.Message.Platform

Represents different platforms that a rich message can be intended for.

NameNumberDescription
PLATFORM_UNSPECIFIED 0

Not specified.

FACEBOOK 1

Facebook.

SLACK 2

Slack.

TELEGRAM 3

Telegram.

KIK 4

Kik.

SKYPE 5

Skype.

LINE 6

Line.

VIBER 7

Viber.

ACTIONS_ON_GOOGLE 8

Actions on Google. When using Actions on Google, you can choose one of the specific Intent.Message types that mention support for Actions on Google, or you can use the advanced Intent.Message.payload field. The payload field provides access to AoG features not available in the specific message types. If using the Intent.Message.payload field, it should have a structure similar to the JSON message shown here. For more information, see Actions on Google Webhook Format

{
  "expectUserResponse": true,
  "isSsml": false,
  "noInputPrompts": [],
  "richResponse": {
    "items": [
      {
        "simpleResponse": {
          "displayText": "hi",
          "textToSpeech": "hello"
        }
      }
    ],
    "suggestions": [
      {
        "title": "Say this"
      },
      {
        "title": "or this"
      }
    ]
  },
  "systemIntent": {
    "data": {
      "@type": "type.googleapis.com/google.actions.v2.OptionValueSpec",
      "listSelect": {
        "items": [
          {
            "optionInfo": {
              "key": "key1",
              "synonyms": [
                "key one"
              ]
            },
            "title": "must not be empty, but unique"
          },
          {
            "optionInfo": {
              "key": "key2",
              "synonyms": [
                "key two"
              ]
            },
            "title": "must not be empty, but unique"
          }
        ]
      }
    },
    "intent": "actions.intent.OPTION"
  }
}

PLACEHOLDER_1 9

Placeholder platform 1

PLACEHOLDER_2 10

Placeholder platform 2

PLACEHOLDER_3 11

Placeholder platform 3

PLACEHOLDER_4 12

Placeholder platform 4

PLACEHOLDER_5 13

Placeholder platform 5

PLACEHOLDER_6 14

Placeholder platform 6

PLACEHOLDER_7 15

Placeholder platform 7

PLACEHOLDER_8 16

Placeholder platform 8

PLACEHOLDER_9 17

Placeholder platform 9

PLACEHOLDER_10 18

Placeholder platform 10

PLACEHOLDER_11 19

Placeholder platform 11

PLACEHOLDER_12 20

Placeholder platform 12

PLACEHOLDER_13 21

Placeholder platform 13

PLACEHOLDER_14 22

Placeholder platform 14

PLACEHOLDER_15 23

Placeholder platform 15

PLACEHOLDER_16 24

Placeholder platform 16

PLACEHOLDER_17 25

Placeholder platform 17

PLACEHOLDER_18 26

Placeholder platform 18

PLACEHOLDER_19 27

Placeholder platform 19

PLACEHOLDER_20 28

Placeholder platform 20

Intent.TrainingPhrase.Type

Represents different types of training phrases.

NameNumberDescription
TYPE_UNSPECIFIED 0

Not specified. This value should never be used.

EXAMPLE 1

Examples do not contain @-prefixed entity type names, but example parts can be annotated with entity types.

TEMPLATE 2

Templates are not annotated with entity types, but they can contain @-prefixed entity type names as substrings.

Intent.WebhookState

Represents the different states that webhooks can be in.

NameNumberDescription
WEBHOOK_STATE_UNSPECIFIED 0

Webhook is disabled in the agent and in the intent.

WEBHOOK_STATE_ENABLED 1

Webhook is enabled in the agent and in the intent.

WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING 2

Webhook is enabled in the agent and in the intent. Also, each slot filling prompt is forwarded to the webhook.

IntentCategory

Represents the type of intents to filter by in the "List Intents" request

NameNumberDescription
ALL_INTENTS 0

represent all intents

DEFAULT_INTENTS 1

represent the default intents

USER_DEFINED_INTENTS 2

represent the user defined (custom) intents

DATE_EXPIRED_INTENTS 3

represents the intents that had its end_date elapsed

DATE_ACTIVE_INTENTS 4

represents the intents that its start_date began but had not yet expired

DATE_UPCOMING_INTENTS 5

represent the intents that are still expecting its start_date to begin

IntentSorting.IntentSortingField

Structure of intent sorting field

NameNumberDescription
NO_INTENT_SORTING 0

No sorting applied

SORT_INTENT_BY_NAME 1

Sort by intent name

SORT_INTENT_BY_CREATION_DATE 2

Sort by creation date

SORT_INTENT_BY_LAST_UPDATED 3

Sort by last updated date

SORT_INTENT_BY_USERSAYS_COUNT 4

Sort by training phrase (user says) count

SORT_INTENT_BY_START_DATE 5

Sort by start date

SORT_INTENT_BY_END_DATE 6

Sort by end date

IntentView

Represents the options for views of an intent.

An intent can be a sizable object. Therefore, we provide a resource view that

does not return training phrases in the response by default.

NameNumberDescription
INTENT_VIEW_UNSPECIFIED 0

Same as INTENT_VIEW_FULL

INTENT_VIEW_FULL 1

All fields are populated.

INTENT_VIEW_PARTIAL 2

The only nested structures populated are Contexts and Training phrases. The Training phrases field is populated with only a few entries and no annotations.

INTENT_VIEW_SHALLOW 3

All nested structures are not populated (no training phrases, nor contexts, nor parameters, ...)

INTENT_VIEW_MINIMUM 4

Minimum view including only intent UUID and intent display name

ondewo/nlu/llm_evaluation.proto

Top

Services

LlmEvaluations

LangSmith-style evaluation surface: datasets, examples, experiments, evaluator

runs, feedback (LLM-as-judge / human / heuristic / custom code / pairwise) and

pairwise comparisons.

Service Methods

LlmEvaluationCreateDataset

rpc LlmEvaluationCreateDataset (CreateLlmEvaluationDatasetRequest) returns (LlmEvaluationDataset)
Create a new evaluation dataset.

LlmEvaluationGetDataset

rpc LlmEvaluationGetDataset (GetLlmEvaluationDatasetRequest) returns (LlmEvaluationDataset)
Get an evaluation dataset by resource name.

LlmEvaluationListDatasets

rpc LlmEvaluationListDatasets (ListLlmEvaluationDatasetsRequest) returns (ListLlmEvaluationDatasetsResponse)
List evaluation datasets in the project, optionally filtered + paginated.

LlmEvaluationUpdateDataset

rpc LlmEvaluationUpdateDataset (UpdateLlmEvaluationDatasetRequest) returns (LlmEvaluationDataset)
Update metadata of an existing evaluation dataset (examples managed via Add/Update/Delete RPCs).

LlmEvaluationDeleteDataset

rpc LlmEvaluationDeleteDataset (DeleteLlmEvaluationDatasetRequest) returns (.google.protobuf.Empty)
Delete an evaluation dataset and all owned examples.

LlmEvaluationAddExample

rpc LlmEvaluationAddExample (AddLlmEvaluationExampleRequest) returns (LlmEvaluationExample)
Add a single example to an existing dataset.

LlmEvaluationAddExamples

rpc LlmEvaluationAddExamples (AddLlmEvaluationExamplesRequest) returns (AddLlmEvaluationExamplesResponse)
Add multiple examples to an existing dataset in one call.

LlmEvaluationGetExample

rpc LlmEvaluationGetExample (GetLlmEvaluationExampleRequest) returns (LlmEvaluationExample)
Get a single evaluation example by resource name.

LlmEvaluationListExamples

rpc LlmEvaluationListExamples (ListLlmEvaluationExamplesRequest) returns (ListLlmEvaluationExamplesResponse)
List examples in a dataset, optionally filtered + paginated.

LlmEvaluationUpdateExample

rpc LlmEvaluationUpdateExample (UpdateLlmEvaluationExampleRequest) returns (LlmEvaluationExample)
Update fields of an existing evaluation example.

LlmEvaluationDeleteExample

rpc LlmEvaluationDeleteExample (DeleteLlmEvaluationExampleRequest) returns (.google.protobuf.Empty)
Delete an evaluation example.

LlmEvaluationRunExperiment

rpc LlmEvaluationRunExperiment (RunLlmEvaluationExperimentRequest) returns (Operation)
Run a fresh experiment over a dataset. Long-running operation: the returned Operation resolves to the completed LlmEvaluationExperiment once all evaluators have produced feedback.

LlmEvaluationGetExperiment

rpc LlmEvaluationGetExperiment (GetLlmEvaluationExperimentRequest) returns (LlmEvaluationExperiment)
Retrieve a previously-run experiment by resource name.

LlmEvaluationListExperiments

rpc LlmEvaluationListExperiments (ListLlmEvaluationExperimentsRequest) returns (ListLlmEvaluationExperimentsResponse)
List experiments in a project, optionally filtered + paginated.

LlmEvaluationUpdateExperiment

rpc LlmEvaluationUpdateExperiment (UpdateLlmEvaluationExperimentRequest) returns (LlmEvaluationExperiment)
Update metadata of an experiment (e.g. baseline pointer, display_name). Evaluator runs and feedback are immutable; use LlmEvaluationSubmitFeedback / LlmEvaluationDeleteFeedback for downstream annotations.

LlmEvaluationDeleteExperiment

rpc LlmEvaluationDeleteExperiment (DeleteLlmEvaluationExperimentRequest) returns (.google.protobuf.Empty)
Delete an experiment and all owned evaluator runs + feedbacks.

LlmEvaluationCancelExperiment

rpc LlmEvaluationCancelExperiment (CancelLlmEvaluationExperimentRequest) returns (LlmEvaluationExperiment)
Cancel a still-running experiment. No-op if already finished.

LlmEvaluationCompareExperiments

rpc LlmEvaluationCompareExperiments (CompareLlmEvaluationExperimentsRequest) returns (LlmEvaluationComparison)
Compare two-or-more experiments and emit a pairwise comparison report.

LlmEvaluationSubmitFeedback

rpc LlmEvaluationSubmitFeedback (SubmitLlmEvaluationFeedbackRequest) returns (LlmEvaluationFeedback)
Submit a single feedback record (used by human reviewers / external evaluators).

LlmEvaluationListFeedback

rpc LlmEvaluationListFeedback (ListLlmEvaluationFeedbackRequest) returns (ListLlmEvaluationFeedbackResponse)
List feedback records, optionally filtered + paginated.

LlmEvaluationDeleteFeedback

rpc LlmEvaluationDeleteFeedback (DeleteLlmEvaluationFeedbackRequest) returns (.google.protobuf.Empty)
Delete a single feedback record.
Messages

AddLlmEvaluationExampleRequest

Request to append a single example to an existing dataset.

FieldTypeLabelDescription
llm_evaluation_dataset_name string

Resource name of the dataset to extend. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>.

llm_evaluation_example LlmEvaluationExample

Example payload to append.

parent string

Project owning the dataset. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required, must match the dataset's).

AddLlmEvaluationExamplesRequest

Request to append multiple examples to an existing dataset.

FieldTypeLabelDescription
llm_evaluation_dataset_name string

Resource name of the dataset to extend. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>.

llm_evaluation_examples LlmEvaluationExample repeated

Examples to append.

parent string

Project owning the dataset. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required, must match the dataset's).

AddLlmEvaluationExamplesResponse

Response for AddExamples.

FieldTypeLabelDescription
llm_evaluation_examples LlmEvaluationExample repeated

Example records created.

CancelLlmEvaluationExperimentRequest

Request to cancel a running experiment.

FieldTypeLabelDescription
name string

Resource name of the experiment to cancel. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

parent string

Project owning the experiment. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required).

CompareLlmEvaluationExperimentsRequest

Request to compare two-or-more experiments.

FieldTypeLabelDescription
llm_evaluation_experiment_names string repeated

Resource names of the experiments to compare (two-or-more). Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

llm_evaluation_baseline_experiment_name string

Optional. Resource name of the baseline experiment used for delta computation. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

parent string

Project owning the experiments. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required, all experiments must share the same).

CreateLlmEvaluationDatasetRequest

Request to create a new evaluation dataset.

FieldTypeLabelDescription
parent string

Project owning the dataset. Format: projects/<project_uuid>/agent.

display_name string

Required. Human-readable display name (unique within the (project, language_code) tuple).

description string

Free-form description.

llm_evaluation_examples LlmEvaluationExample repeated

Optional initial set of examples.

tags string repeated

Free-form tags for grouping / filtering.

language_code string

BCP-47 language code the dataset is authored for. Required — the same dataset name may coexist across different languages.

DeleteLlmEvaluationDatasetRequest

Request to delete a dataset and all owned examples.

FieldTypeLabelDescription
name string

Resource name of the dataset to delete. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>.

parent string

Project owning the dataset. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required).

DeleteLlmEvaluationExampleRequest

Request to delete an example.

FieldTypeLabelDescription
name string

Resource name of the example to delete. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>/examples/<example_uuid>.

parent string

Project owning the example. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required).

DeleteLlmEvaluationExperimentRequest

Request to delete an experiment.

FieldTypeLabelDescription
name string

Resource name of the experiment to delete. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

parent string

Project owning the experiment. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required).

DeleteLlmEvaluationFeedbackRequest

Request to delete a single feedback record.

FieldTypeLabelDescription
name string

Resource name of the feedback record to delete. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>/evaluatorRuns/<evaluator_run_uuid>/feedbacks/<feedback_uuid>.

parent string

Project owning the feedback. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required).

GetLlmEvaluationDatasetRequest

Request to get a single evaluation dataset.

FieldTypeLabelDescription
name string

Resource name of the dataset to fetch. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>.

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data. Example: paths=["name", "llm_evaluation_examples"]

parent string

Project owning the dataset. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required).

GetLlmEvaluationExampleRequest

Request to get a single example.

FieldTypeLabelDescription
name string

Resource name of the example to fetch. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>/examples/<example_uuid>.

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data. Example: paths=["name", "inputs", "expected_outputs"]

parent string

Project owning the example. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required).

GetLlmEvaluationExperimentRequest

Request to fetch a previously-run experiment.

FieldTypeLabelDescription
name string

Resource name of the experiment to fetch. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data. Example: paths=["display_name", "status", "llm_evaluation_evaluator_runs"]

parent string

Project owning the experiment. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required).

ListLlmEvaluationDatasetsRequest

Request to list evaluation datasets within a project.

FieldTypeLabelDescription
parent string

Project owning the datasets. Format: projects/<project_uuid>/agent.

page_token string

Optional. Page token for pagination. Retrieves a large result set in smaller, more manageable portions. The token encodes the current index and the page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - First page, page size 20.
  • "current_index-1--page_size-20" - Second page, page size 20.
Index starts at 0.

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data. Example: paths=["llm_evaluation_datasets.display_name", "llm_evaluation_datasets.tags"]

language_code string

BCP-47 language-code scope (required).

llm_evaluation_dataset_filter LlmEvaluationDatasetFilter

Optional. Filter conditions to narrow the returned datasets.

ListLlmEvaluationDatasetsResponse

Response for ListDatasets.

FieldTypeLabelDescription
llm_evaluation_datasets LlmEvaluationDataset repeated

Datasets matching the request.

next_page_token string

Pagination token for the next page (empty if this is the last page).

ListLlmEvaluationExamplesRequest

Request to list examples in a dataset.

FieldTypeLabelDescription
llm_evaluation_dataset_name string

Resource name of the dataset to enumerate examples from. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>.

page_token string

Optional. Page token for pagination. Retrieves a large result set in smaller, more manageable portions. The token encodes the current index and the page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - First page, page size 20.
  • "current_index-1--page_size-20" - Second page, page size 20.
Index starts at 0.

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data. Example: paths=["llm_evaluation_examples.display_name", "llm_evaluation_examples.inputs"]

parent string

Project owning the dataset. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required).

llm_evaluation_example_filter LlmEvaluationExampleFilter

Optional. Filter conditions to narrow the returned examples.

ListLlmEvaluationExamplesResponse

Response for ListExamples.

FieldTypeLabelDescription
llm_evaluation_examples LlmEvaluationExample repeated

Examples in the dataset matching the request.

next_page_token string

Pagination token for the next page (empty if this is the last page).

ListLlmEvaluationExperimentsRequest

Request to list experiments in a project, optionally narrowed by filter.

FieldTypeLabelDescription
parent string

Project owning the experiments. Format: projects/<project_uuid>/agent.

page_token string

Optional. Page token for pagination. Retrieves a large result set in smaller, more manageable portions. The token encodes the current index and the page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - First page, page size 20.
  • "current_index-1--page_size-20" - Second page, page size 20.
Index starts at 0.

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data. Example: paths=["llm_evaluation_experiments.display_name", "llm_evaluation_experiments.status"]

language_code string

BCP-47 language-code scope (required).

llm_evaluation_experiment_filter LlmEvaluationExperimentFilter

Optional. Filter conditions to narrow the returned experiments.

ListLlmEvaluationExperimentsResponse

Response for ListExperiments.

FieldTypeLabelDescription
llm_evaluation_experiments LlmEvaluationExperiment repeated

Experiments matching the request.

next_page_token string

Pagination token for the next page (empty if this is the last page).

ListLlmEvaluationFeedbackRequest

Request to list feedback records, optionally narrowed by filter.

FieldTypeLabelDescription
page_token string

Optional. Page token for pagination. Retrieves a large result set in smaller, more manageable portions. The token encodes the current index and the page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - First page, page size 20.
  • "current_index-1--page_size-20" - Second page, page size 20.
Index starts at 0.

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data. Example: paths=["llm_evaluation_feedbacks.score", "llm_evaluation_feedbacks.categorical_value"]

parent string

Project owning the feedback records. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required).

llm_evaluation_feedback_filter LlmEvaluationFeedbackFilter

Optional. Filter conditions to narrow the returned feedback records.

ListLlmEvaluationFeedbackResponse

Response for ListFeedback.

FieldTypeLabelDescription
llm_evaluation_feedbacks LlmEvaluationFeedback repeated

Feedback records matching the request.

next_page_token string

Pagination token for the next page (empty if this is the last page).

LlmEvaluationComparison

Pairwise comparison report across multiple experiments.

FieldTypeLabelDescription
name string

The unique resource name of the comparison. Read-only; populated by the server. Format: projects/<project_uuid>/agent/llmEvaluationComparisons/<comparison_uuid>.

display_name string

Human-readable display name.

llm_evaluation_experiment_names string repeated

Resource names of the experiments being compared (two-or-more). Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

llm_evaluation_baseline_experiment_name string

Optional. Resource name of the baseline experiment used for delta computation. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

llm_evaluation_pairwise_results LlmEvaluationPairwiseResult repeated

One entry per example.

aggregate google.protobuf.Struct

Aggregate stats: win-rate, mean-delta, ...

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

LlmEvaluationDataset

A dataset is a named collection of evaluation examples plus optional metadata.

FieldTypeLabelDescription
name string

The unique resource name of the dataset. Read-only; populated by the server. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>.

display_name string

Required. Human-readable display name (unique within the (project, language_code) tuple).

description string

Free-form description.

llm_evaluation_examples LlmEvaluationExample repeated

Examples contained in this dataset. May be returned empty by List endpoints; use ListExamples for paginated retrieval.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

created_by string

User id in form of a valid UUID.

tags string repeated

Free-form tags for grouping / filtering.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

modified_by string

User id in form of a valid UUID.

parent string

Project owning the dataset. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language code (e.g. "en", "de", "en-US") identifying which language the dataset was authored for. Datasets are scoped per (project, language_code) — the same dataset name may exist independently per language.

LlmEvaluationDatasetFilter

Filter conditions for ListDatasets. All fields are optional; multiple fields

set at the same time are combined via logical AND.

FieldTypeLabelDescription
display_name string

Optional. Match only datasets whose display name contains this substring (case-insensitive).

tags string repeated

Optional. Match only datasets carrying every tag in this list.

LlmEvaluationEvaluatorRun

Result of running one evaluator against one example.

FieldTypeLabelDescription
name string

The unique resource name of the evaluator run. Read-only; populated by the server. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>/evaluatorRuns/<evaluator_run_uuid>.

display_name string

Human-readable display name.

llm_evaluation_example_name string

Resource name of the example the evaluator was run against. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>/examples/<example_uuid>.

llm_telemetry_run_id string

Ties this evaluator run back to the LlmTelemetry produced when running the target.

llm_evaluation_evaluator_type LlmEvaluationEvaluatorType

Family of evaluator implementations.

evaluator_name string

Logical name of the evaluator (e.g. "faithfulness", "exact_match").

llm_evaluation_feedbacks LlmEvaluationFeedback repeated

One or more feedback records produced by the evaluator.

llm_evaluation_experiment_name string

Resource name of the owning experiment. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

started_at google.protobuf.Timestamp

Wall-clock start of the evaluator run.

finished_at google.protobuf.Timestamp

Wall-clock end of the evaluator run.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

LlmEvaluationExample

A single example in an evaluation dataset.

FieldTypeLabelDescription
name string

The unique resource name of the example. Read-only; populated by the server. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>/examples/<example_uuid>.

display_name string

Human-readable display name.

description string

Free-form description.

inputs google.protobuf.Struct

Structured inputs payload — agent inputs, prompt vars, retrieval context, ...

expected_outputs google.protobuf.Struct

Structured expected outputs — gold answer, expected tool sequence, ...

metadata google.protobuf.Struct

Free-form metadata.

llm_evaluation_dataset_name string

Resource name of the owning dataset. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

created_by string

User id in form of a valid UUID.

parent string

Project owning the example (denormalized from parent dataset for cheap per-project filtering). Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language code (denormalized from parent dataset for cheap filtering).

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

modified_by string

User id in form of a valid UUID.

LlmEvaluationExampleFilter

Filter conditions for ListExamples. All fields are optional; multiple fields

set at the same time are combined via logical AND.

FieldTypeLabelDescription
display_name string

Optional. Match only examples whose display name contains this substring (case-insensitive).

LlmEvaluationExperiment

A single experiment run over a dataset.

FieldTypeLabelDescription
name string

The unique resource name of the experiment. Read-only; populated by the server. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

llm_evaluation_dataset_name string

Resource name of the source dataset. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>.

display_name string

Required. Human-readable display name.

description string

Free-form description.

git_sha string

Pin the experiment to a source-tree revision for reproducibility.

prompt_version string

Logical version identifier of the prompt under test.

model_name string

Concrete model identifier exercised by the experiment.

config google.protobuf.Struct

Arbitrary configuration captured at run time.

llm_evaluation_evaluator_runs LlmEvaluationEvaluatorRun repeated

One entry per evaluator x example combination.

started_at google.protobuf.Timestamp

Wall-clock start of the experiment run.

finished_at google.protobuf.Timestamp

Wall-clock end of the experiment run.

duration_in_s double

Convenience duration (finished_at - started_at).

n_examples int32

Number of dataset examples consumed.

n_passed int32

Number of evaluator runs that produced a passing score.

n_failed int32

Number of evaluator runs that produced a failing score.

llm_evaluation_baseline_experiment_name string

Optional. Resource name of a baseline experiment for regression detection. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

parent string

Project owning the experiment. Format: projects/<project_uuid>/agent.

llm_evaluation_experiment_status LlmEvaluationExperimentStatus

Current lifecycle status of the experiment (pending / running / succeeded / failed / cancelled).

created_by string

User id in form of a valid UUID.

language_code string

BCP-47 language code (denormalized from parent dataset). Experiments are scoped per (project, language_code); experiment name uniqueness is enforced per (project, language_code) tuple.

ccai_service_names string repeated

CcaiService name(s) whose LLM connection details defined the model(s) evaluated in this run (echoed from RunLlmEvaluationExperimentRequest for audit / reproducibility).

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

modified_by string

User id in form of a valid UUID.

LlmEvaluationExperimentFilter

Filter conditions for ListExperiments. All fields are optional; multiple

fields set at the same time are combined via logical AND.

FieldTypeLabelDescription
display_name string

Optional. Match only experiments whose display name contains this substring (case-insensitive).

llm_evaluation_experiment_status LlmEvaluationExperimentStatus

Optional. Match only experiments with this lifecycle status.

llm_evaluation_dataset_name string

Optional. Match only experiments tied to this dataset (resource name). Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>.

model_name string

Optional. Match only experiments exercising this concrete model identifier.

LlmEvaluationFeedback

A single feedback record (score + optional categorical + comment + raw payload).

FieldTypeLabelDescription
name string

The unique resource name of the feedback record. Read-only; populated by the server. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>/evaluatorRuns/<evaluator_run_uuid>/feedbacks/<feedback_uuid>.

display_name string

Human-readable display name.

criterion string

Free-form criterion label: "correctness", "faithfulness", "hallucination", "context_precision", "tool_trajectory", "format", "groundedness", "tone", "exact_match", "embedding_distance", "bleu", "rouge", "regression", ...

score double

Numeric score (0.0-1.0 by convention). Defaults to 0.0 (proto3 has no field presence on this scalar, so an unset score and a genuine 0.0 are indistinguishable); for purely categorical feedback, rely on categorical_value rather than this field.

categorical_value string

Categorical value when applicable ("pass" | "fail" | "yes" | "no" | tier).

comment string

Human-readable comment / rationale.

annotator_user_id string

Human reviewer id or "evaluator:<name>".

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

raw google.protobuf.Struct

Verbatim evaluator JSON output kept for forensic replay.

llm_evaluation_evaluator_run_name string

Resource name of the owning evaluator run (may be empty for top-level experiment-scoped feedback submitted via SubmitFeedback). Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>/evaluatorRuns/<evaluator_run_uuid>.

llm_evaluation_experiment_name string

Resource name of the owning experiment. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

llm_evaluation_example_name string

Resource name of the example the feedback targets. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>/examples/<example_uuid>.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

LlmEvaluationFeedbackFilter

Filter conditions for ListFeedback. All fields are optional; multiple fields

set at the same time are combined via logical AND.

FieldTypeLabelDescription
llm_evaluation_experiment_name string

Optional. Match only feedback attached to this experiment (resource name). Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

llm_evaluation_example_name string

Optional. Match only feedback targeting this example (resource name). Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>/examples/<example_uuid>.

llm_evaluation_evaluator_run_name string

Optional. Match only feedback produced by this evaluator run (resource name). Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>/evaluatorRuns/<evaluator_run_uuid>.

criterion string

Optional. Match only feedback with this criterion label (e.g. "correctness", "faithfulness").

categorical_value string

Optional. Match only feedback with this categorical value ("pass" | "fail" | "yes" | "no" | tier).

LlmEvaluationPairwiseResult

Per-example pairwise comparison entry.

FieldTypeLabelDescription
llm_evaluation_example_name string

Resource name of the example being compared. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>/examples/<example_uuid>.

llm_evaluation_winner_experiment_name string

Resource name of the winning experiment. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

score_delta double

Score delta against the baseline (positive means winner improved).

reason string

Free-form reason / rationale.

RunLlmEvaluationExperimentRequest

Request to run a fresh experiment.

FieldTypeLabelDescription
parent string

Project owning the experiment. Format: projects/<project_uuid>/agent.

llm_evaluation_dataset_name string

Resource name of the dataset to evaluate against. Format: projects/<project_uuid>/agent/llmEvaluationDatasets/<dataset_uuid>.

display_name string

Required. Human-readable display name.

git_sha string

Source-tree revision pin for reproducibility.

prompt_version string

Logical prompt version identifier.

model_name string

Concrete model identifier under test.

config google.protobuf.Struct

Arbitrary run-time configuration.

llm_evaluation_evaluator_names string repeated

Logical names of evaluators to run (resolved server-side to evaluator implementations).

llm_evaluation_baseline_experiment_name string

Optional. Resource name of a baseline experiment for regression detection. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

language_code string

BCP-47 language code the experiment runs against. Required — selects which language-scoped dataset is loaded.

ccai_service_names string repeated

Logical names of the CcaiService(s) that carry the LLM connection details (host/port/model/ auth) of the model(s) under evaluation, resolved server-side — mirroring the IntentRagflowClassifier / IntentAgent ccai_service_names pattern. Each named service defines one LLM to evaluate; supplying several evaluates and compares multiple LLMs in a single run. Takes precedence over the free-form model_name label.

SubmitLlmEvaluationFeedbackRequest

Request to submit a single feedback record.

FieldTypeLabelDescription
llm_evaluation_experiment_name string

Resource name of the experiment the feedback applies to. Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>.

llm_evaluation_evaluator_run_name string

Optional. Resource name of the evaluator run the feedback attaches to. Empty for top-level experiment-scoped feedback (e.g. human review at experiment granularity). Format: projects/<project_uuid>/agent/llmEvaluationExperiments/<experiment_uuid>/evaluatorRuns/<evaluator_run_uuid>.

llm_evaluation_feedback LlmEvaluationFeedback

Feedback payload.

parent string

Project owning the experiment. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required).

UpdateLlmEvaluationDatasetRequest

Request to update an existing dataset.

FieldTypeLabelDescription
llm_evaluation_dataset LlmEvaluationDataset

Dataset payload (only fields covered by update_mask are applied).

update_mask google.protobuf.FieldMask

Mask of fields to update on the dataset record.

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data on the returned dataset.

parent string

Project owning the dataset. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required).

UpdateLlmEvaluationExampleRequest

Request to update an existing example.

FieldTypeLabelDescription
llm_evaluation_example LlmEvaluationExample

Example payload (only fields covered by update_mask are applied).

update_mask google.protobuf.FieldMask

Mask of fields to update on the example record.

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data on the returned example.

parent string

Project owning the example. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required).

UpdateLlmEvaluationExperimentRequest

Request to update an experiment's metadata.

FieldTypeLabelDescription
llm_evaluation_experiment LlmEvaluationExperiment

Experiment payload (only fields covered by update_mask are applied).

update_mask google.protobuf.FieldMask

Mask of fields to update on the experiment record. Evaluator runs and feedback are immutable and ignored here.

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data on the returned experiment.

parent string

Project owning the experiment. Format: projects/<project_uuid>/agent.

language_code string

BCP-47 language-code scope (required).

Enums

LlmEvaluationEvaluatorType

Family of evaluator implementations.

NameNumberDescription
LLM_EVALUATION_EVALUATOR_TYPE_UNSPECIFIED 0

Default / unset.

LLM_EVALUATION_EVALUATOR_TYPE_LLM_AS_JUDGE 1

LLM acting as a judge (LangSmith-style).

LLM_EVALUATION_EVALUATOR_TYPE_HUMAN 2

Human reviewer.

LLM_EVALUATION_EVALUATOR_TYPE_HEURISTIC 3

Deterministic heuristic (regex, exact match, ...).

LLM_EVALUATION_EVALUATOR_TYPE_CUSTOM_CODE 4

Custom Python code provided by the user.

LLM_EVALUATION_EVALUATOR_TYPE_PAIRWISE 5

Pairwise comparison evaluator.

LlmEvaluationExperimentStatus

Lifecycle status of an experiment.

NameNumberDescription
LLM_EVALUATION_EXPERIMENT_STATUS_UNSPECIFIED 0

Default / unset.

LLM_EVALUATION_EXPERIMENT_STATUS_PENDING 1

Queued, not yet started.

LLM_EVALUATION_EXPERIMENT_STATUS_RUNNING 2

Currently running.

LLM_EVALUATION_EXPERIMENT_STATUS_SUCCEEDED 3

Finished successfully.

LLM_EVALUATION_EXPERIMENT_STATUS_FAILED 4

Finished with errors.

LLM_EVALUATION_EXPERIMENT_STATUS_CANCELLED 5

Cancelled by user request.

ondewo/nlu/operation_metadata.proto

Top

Messages

OperationMetadata

Represents the metadata of the long-running operation that can be a parent operation for sub-operations or

can be a sub-operation itself

FieldTypeLabelDescription
status OperationMetadata.Status

long-running operation status code

parent_operation_name string

optional parent operation name

sub_operation_names string repeated

list of the sub-operations' names of the operation

create_time google.protobuf.Timestamp

the time the operation was submitted.

start_time google.protobuf.Timestamp

the time operation processing started.

end_time google.protobuf.Timestamp

the time operation processing completed.

is_cancellation_requested bool

indicates whether a request to cancel this operation has been made.

cancel_command string

command executed at cancel operation

user_id_created string

id of the user who created the operation

user_id_cancelled string

id of the user who cancelled the operation

project_parent string

project parent name, e.g. "projects/pepper/agent"

operation_type OperationMetadata.OperationType

operation type

host_name string

name of the host where the operation was executed

num_reruns int32

number of times the operation was re-run

max_num_reruns int32

maximum number of re-runs in case the operation fails

description string

description, normally needed for sub operations when type is OPERATION_TYPE_UNSPECIFIED

log string repeated

The log output of an operation

log_limit int32

The log output of an operation limited to the last x log entries

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

Enums

OperationMetadata.OperationType

Type of operation.

It can be creating, importing, exporting, deleting, restoring, building cache, training or exporting benchmark an agent

NameNumberDescription
OPERATION_TYPE_UNSPECIFIED 0

unspecified operation type

CREATE_AGENT 1

create a new agent with specified configuration

IMPORT_AGENT 2

import agent from a zip file

EXPORT_AGENT 3

export agent to a zip file

DELETE_AGENT 4

delete agent

RESTORE_AGENT 5

restore agent

BUILD_AGENT_CACHE 6

build agent cache

TRAIN_AGENT 7

train agent

EXPORT_BENCHMARK_AGENT 8

export benchmark agent to a zip file

INDEX_AGENT 9

force loading agent data for full text search

RUN_RAG_CRAWLER 10

run a rag crawler

ADD_RAG_CRAWLER_RESULT_TO_DATASET 11

add a rag crawler result to a dataset

REMOVE_RAG_CRAWLER_RESULT_FROM_DATASET 12

remove a rag crawler result from a dataset

CHANGE_DATASET_EMBEDDING_MODEL 13

change the embedding model of dataset that already contains parsed documents

OperationMetadata.Status

Structure to set status of operation.

An operation may not be started if NOT_STARTED is set, in progress if IN_PROGRESS, finished if DONE, interrupted if CANCELED or failed if FAILED.

NameNumberDescription
STATUS_UNSPECIFIED 0

unspecified status code

NOT_STARTED 1

operation haven't started yet

IN_PROGRESS 2

operation currently in progress

DONE 3

operation has completed without any error

CANCELLED 4

operation has completed with cancellation by user

FAILED 5

operation has completed with errors

ondewo/nlu/operations.proto

Top

Services

Operations

Manages long-running operations with an API service.

When an API method normally takes long time to complete, it can be designed to return Operation to the client, and the client can use this interface to receive the real response asynchronously by polling the operation resource, or pass the operation resource to another API (such as Google Cloud Pub/Sub API) to receive the response. Any API service that returns long-running operations should implement the Operations interface so developers can have a consistent client experience.

Service Methods

ListOperations

rpc ListOperations (ListOperationsRequest) returns (ListOperationsResponse)
Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.
NOTE: the name binding below allows API services to override the binding to use different resource name schemes, such as users/*/operations.

GetOperation

rpc GetOperation (GetOperationRequest) returns (Operation)
Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.

DeleteOperation

rpc DeleteOperation (DeleteOperationRequest) returns (.google.protobuf.Empty)
Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED

CancelOperation

rpc CancelOperation (CancelOperationRequest) returns (.google.protobuf.Empty)
Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED. Clients can use Operations.GetOperation or other methods to verify whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to Code.CANCELLED.

Methods with HTTP bindings

Method Name Method Pattern Body
ListOperations GET /v1/{name=operations}
GetOperation GET /v1/{name=operations/**}
DeleteOperation DELETE /v1/{name=operations/**}
CancelOperation POST /v1/{name=operations/**}:cancel *
Messages

CancelOperationRequest

The request message for Operations.CancelOperation.

FieldTypeLabelDescription
name string

The name of the operation resource to be cancelled.

DeleteOperationRequest

The request message for Operations.DeleteOperation.

FieldTypeLabelDescription
name string

The name of the operation resource to be deleted.

GetOperationRequest

The request message for Operations.GetOperation.

FieldTypeLabelDescription
name string

The name of the operation resource.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListOperationsRequest

The request message for Operations.ListOperations.

FieldTypeLabelDescription
name string

The name of the operation collection.

filter string

The standard list filter.

page_size int32

The standard list page size.

page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

operation_filter OperationFilter

Optional. A filter to narrow the response down to operations of interest.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListOperationsResponse

The response message for Operations.ListOperations.

FieldTypeLabelDescription
operations Operation repeated

A list of operations that matches the specified filter in the request.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

Operation

This resource represents a long-running operation that is the result of a network API call.

FieldTypeLabelDescription
name string

The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.

metadata OperationMetadata

Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.

done bool

If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.

error google.rpc.Status

The error result of the operation in case of failure or cancellation.

response google.protobuf.Any

The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.

OperationFilter

This message contains an operation filter

FieldTypeLabelDescription
project_parents string repeated

An operationFilter can be used in some requests to return only operations matching certain filter conditions. All fields below are optional. Multiple fields specified at the same time are chained via OR. Match operations with any of the following project parents.

statuses OperationMetadata.Status repeated

Match operation which had any of the following operation statuses.

types OperationMetadata.OperationType repeated

Match operation which had any of the following operation types.

start_time google.protobuf.Timestamp

The time operation processing started.

end_time google.protobuf.Timestamp

The time operation processing completed.

user_ids string repeated

Match operation which had any of the following user_ids.

ondewo/nlu/project_role.proto

Top

Services

ProjectRoles

Project roles

Service Methods

CreateProjectRole

rpc CreateProjectRole (CreateProjectRoleRequest) returns (ProjectRole)
Creates a project role by creating the knowledge base master

GetProjectRole

rpc GetProjectRole (GetProjectRoleRequest) returns (ProjectRole)
Creates a project role by getting the knowledge base master

DeleteProjectRole

rpc DeleteProjectRole (DeleteProjectRoleRequest) returns (.google.protobuf.Empty)
Deletes project role

UpdateProjectRole

rpc UpdateProjectRole (UpdateProjectRoleRequest) returns (ProjectRole)
Updates project role

ListProjectRoles

rpc ListProjectRoles (ListProjectRolesRequest) returns (ListProjectRolesResponse)
List project roles

Methods with HTTP bindings

Method Name Method Pattern Body
CreateProjectRole POST /v2/{parent=projects/*/agent}/project_roles *
GetProjectRole GET /v2/{parent=projects/*/agent}/project_roles/{role_id=*}
DeleteProjectRole DELETE /v2/{parent=projects/*/agent}/project_roles/{role_id=*}
UpdateProjectRole PATCH /v2/{parent=projects/*/agent}/project_roles *
ListProjectRoles GET /v2/{parent=projects/*/agent}/project_roles
Messages

CreateProjectRoleRequest

This message is a request to create project role

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

role ProjectRole

If the role_id is not provided, an incremental value will be assigned The "name" and "role_type" are mandatory values The permissions all default to False if not provided specifically

project_role_view ProjectRoleView

Optional. specify the view of the created project role, PROJECT_ROLE_VIEW_FULL by default

DeleteProjectRoleRequest

This message is a request to delete project role

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

role_id uint32

role is identified by role id, if empty will throw an error in the backend

GetProjectRoleRequest

This message is a request to get project role

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

role_id uint32

role is identified by role id

role_name string

role can also be uniquely identified by its name

project_role_view ProjectRoleView

Optional. specify the view of the project role, PROJECT_ROLE_VIEW_FULL by default

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListProjectRolesRequest

This message is a request to list project role

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

project_role_view ProjectRoleView

Optional. specify the view of the project roles, PROJECT_ROLE_VIEW_FULL by default

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListProjectRolesResponse

This message is a response of listing project role

FieldTypeLabelDescription
project_roles ProjectRole repeated

The list of project roles. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

ProjectRole

Project Role messages

FieldTypeLabelDescription
role_id uint32

unique identifier of the role

name string

unique name of the role

permissions string repeated

defines the permissions for the given role (the strings can be gotten from the ListProjectPermissions)

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

UpdateProjectRoleRequest

This message is a request to update project role

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

role ProjectRole

role_id in the Role message should be given, if empty will throw an error in the backend other fields in the Role are optional. Only the fields to be updated should be provided

update_mask google.protobuf.FieldMask

Optional. The mask to control which fields get updated.

project_role_view ProjectRoleView

Optional. specify the view of the updated project role, PROJECT_ROLE_VIEW_FULL by default

Enums

DefaultProjectRole

Structure of project role

NameNumberDescription
PROJECT_UNSPECIFIED 0

These roles have permissions valid only on a specific project unspecified, default value depends on endpoint

PROJECT_USER 1

read-only access

PROJECT_EXECUTOR 2

permissions of PROJECT_USER + execution rights (detect intent, extract entities, train, etc)

PROJECT_DEVELOPER 3

permissions of PROJECT_EXECUTOR + CRUD rights

PROJECT_ADMIN 4

this role can do everything. The creator of a project is set automatically as PROJECT_ADMIN of it.

PROJECT_INACTIVE 5

This role can do nothing. Used to set a user as inactive inside a project

ProjectRoleView

Structure of project role view

NameNumberDescription
PROJECT_ROLE_VIEW_UNSPECIFIED 0

The view depends on the endpoint:

  • CreateProjectRole: FULL
  • GetProjectRole: FULL
  • UpdateProjectRole: FULL
  • ListProjectRoles: FULL

PROJECT_ROLE_VIEW_SHALLOW 1

only role ID and name fields are populated

PROJECT_ROLE_VIEW_FULL 2

all fields including permissions are populated

ondewo/nlu/project_statistics.proto

Top

Services

ProjectStatistics

Project Root Statistics

Service Methods

GetIntentCount

rpc GetIntentCount (GetIntentCountRequest) returns (StatResponse)
Returns the intent count within a project

GetEntityTypeCount

rpc GetEntityTypeCount (GetEntityTypeCountRequest) returns (StatResponse)
Returns the entity types count within a project

GetUserCount

rpc GetUserCount (GetProjectStatRequest) returns (StatResponse)
Returns the users count within a project

GetSessionCount

rpc GetSessionCount (GetProjectStatRequest) returns (StatResponse)
Returns the sessions count within a project

GetTrainingPhraseCount

rpc GetTrainingPhraseCount (GetProjectElementStatRequest) returns (StatResponse)
Returns the training phrases count within a project

GetResponseCount

rpc GetResponseCount (GetProjectElementStatRequest) returns (StatResponse)
Returns the responses count within a project

GetEntityValueCount

rpc GetEntityValueCount (GetProjectElementStatRequest) returns (StatResponse)
Returns the entity value count within a project

GetEntitySynonymCount

rpc GetEntitySynonymCount (GetProjectElementStatRequest) returns (StatResponse)
Returns the entity synonyms count within a project

Methods with HTTP bindings

Method Name Method Pattern Body
GetIntentCount GET /{parent=projects/*/agent}/intents:count
GetEntityTypeCount GET /{parent=projects/*/agent}/entityTypes:count
GetUserCount GET /{parent=projects/*/agent}/users:count
GetSessionCount GET /{parent=projects/*/agent}/sessions:count
GetTrainingPhraseCount GET /{name=projects/*/agent/intents/*}/trainingPhrases:count
GetResponseCount GET /{name=projects/*/agent/intents/*}/responses:count
GetEntityValueCount GET /{name=projects/*/agent/entityTypes/*}/entities:count
GetEntitySynonymCount GET /{name=projects/*/agent/entityTypes/*/entityValues/*}/entitySynonyms:count
Messages

GetEntityTypeCountRequest

Request to get entity type count

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

filter_by_category EntityTypeCategory

Optional. Applies a filter to the list to be counted. Default, no filter.

GetIntentCountRequest

Request to get the intent count

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

filter_by_category IntentCategory

Optional. Applies a filter to the list to be counted. Default, no filter.

GetProjectElementStatRequest

Request to get project element statistics

FieldTypeLabelDescription
name string

Required. The name/path of the concept to get the statistic from. Example:

  • projects/<project_uuid>/agent/intents/<intent_uuid>
  • projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>
  • projects/<project_uuid>/agent/entityTypes/<entity_type_uuid>/entityValues/<entity_value_uuid>

language_code string

Language code

GetProjectStatRequest

Request to get project statistics

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

ondewo/nlu/rag.proto

Top

File-level comment for ondewo/nlu/rag.proto.

This file contains a single service Rags. The Rags service provides RAG (Retrieval-Augmented Generation) and web crawler functionality.

All message fields that are marked as optional are not actually optional but marked as such to enable presence tracking so that it is possible to distinguish between null and default value fields. Without the optional keyword it would for instance not be possible to distinguish between an integer 0 and null.

Services

Rags

Provides RAG and web crawler endpoints.

Most of the RAG related endpoints largely mirror RAGFlow's HTTP API endpoints. For more information on RAGFlow refer to the official documentation

Service Methods

RagCreateDataset

rpc RagCreateDataset (RagCreateDatasetRequest) returns (RagDataset)
Create a new dataset (knowledge base).

RagUpdateDataset

rpc RagUpdateDataset (RagUpdateDatasetRequest) returns (RagDataset)
Update an existing dataset's configuration.

RagDeleteDatasets

rpc RagDeleteDatasets (RagDeleteRequest) returns (RagPartialSuccess)
Delete one or more datasets (batch operation).
If ids is null or empty, deletes all user's datasets.
Deletes all associated documents, files, and chunks.

RagListDatasets

rpc RagListDatasets (RagListDatasetsRequest) returns (RagDatasetList)
List datasets with pagination and filtering.
Returns datasets from all tenants the user has access to.

RagUploadDocument

rpc RagUploadDocument (stream RagUploadDocumentRequest) returns (RagDocument)
Uploads a document to a dataset and starts parsing it.
If the run field of the returned document is not RAG_DOCUMENT_STATUS_RUNNING this indicates a failure to start parsing the document.

RagUpdateDocument

rpc RagUpdateDocument (RagUpdateDocumentRequest) returns (RagDocument)
Update document metadata and configuration.
If the chunk method is changed, the document is automatically re-parsed.
If the run field of the returned document is not RAG_DOCUMENT_STATUS_RUNNING this indicates a failure to start parsing the document.

RagDownloadDocument

rpc RagDownloadDocument (RagDownloadDocumentRequest) returns (stream RagFileChunk)
Download the original document file.
Returns binary file stream from storage.
First chunk contains metadata, subsequent chunks only contain data.

RagListDocuments

rpc RagListDocuments (RagListDocumentsRequest) returns (RagDocumentList)
List documents in a dataset with pagination and filtering.
Supports time range filtering and keyword search.

RagDeleteDocuments

rpc RagDeleteDocuments (RagDeleteDocumentsRequest) returns (RagPartialSuccess)
Delete one or more documents from a dataset (batch operation).
If ids empty, deletes all documents. Removes chunks and storage files.

RagRetrieval

rpc RagRetrieval (RagRetrievalRequest) returns (RagRetrievalResponse)
Retrieve chunks using vector similarity search.
Supports reranking, metadata filtering, and knowledge graph retrieval.

RagParseDocuments

rpc RagParseDocuments (RagDocumentIdsRequest) returns (RagPartialSuccess)
Start parsing documents into chunks.
Queues documents for background processing.

RagStopParsing

rpc RagStopParsing (RagDocumentIdsRequest) returns (RagPartialSuccess)
Stop parsing documents.

RagCreateCrawler

rpc RagCreateCrawler (RagCreateCrawlerRequest) returns (RagCrawler)
Create a rag crawler for a dataset of an agent.

RagGetCrawler

rpc RagGetCrawler (RagGetCrawlerRequest) returns (RagCrawler)
Get a rag crawler by resource name.

RagListCrawlers

rpc RagListCrawlers (RagListCrawlersRequest) returns (RagListCrawlersResponse)
List rag crawlers of a dataset for the specified agent.

RagUpdateCrawler

rpc RagUpdateCrawler (RagUpdateCrawlerRequest) returns (RagCrawler)
Update a rag crawler (partial update of configuration fields).

RagDeleteCrawler

rpc RagDeleteCrawler (RagDeleteCrawlerRequest) returns (RagDeleteCrawlerResponse)
Delete a rag crawler of a dataset for the specified agent.

RagStartCrawler

rpc RagStartCrawler (RagStartCrawlerRequest) returns (Operation)
Run a crawler.

RagStopCrawler

rpc RagStopCrawler (RagStopCrawlerRequest) returns (RagStopCrawlerResponse)
Stop a pending or running crawler run.

RagGetCrawlerRun

rpc RagGetCrawlerRun (RagGetCrawlerRunRequest) returns (Operation)
Get a crawler run by resource name.

RagListCrawlerRuns

rpc RagListCrawlerRuns (RagListCrawlerRunsRequest) returns (RagListCrawlerRunsResponse)
List crawler runs for a crawler.

RagDeleteCrawlerRuns

rpc RagDeleteCrawlerRuns (RagDeleteCrawlerRunsRequest) returns (RagDeleteCrawlerRunsResponse)
Delete crawler runs by explicit run names and/or crawler names.

RagGetCrawlerResult

rpc RagGetCrawlerResult (RagGetCrawlerResultRequest) returns (RagCrawlerResult)
Get a single crawler result by crawler run resource name and URL.

RagGetCrawlerResults

rpc RagGetCrawlerResults (RagGetCrawlerResultsRequest) returns (RagGetCrawlerResultsResponse)
Get crawler results by crawler run resource name.

RagAddCrawlerResultsToDatasets

rpc RagAddCrawlerResultsToDatasets (RagAddCrawlerResultsToDatasetsRequest) returns (Operation)
Add rag crawler output to one or more datasets.

RagRemoveCrawlerResultsFromDatasets

rpc RagRemoveCrawlerResultsFromDatasets (RagRemoveCrawlerResultsFromDatasetsRequest) returns (Operation)
Remove previously imported crawler output from one or more datasets.

RagGetCrawlerAttachedDatasets

rpc RagGetCrawlerAttachedDatasets (RagGetCrawlerAttachedDatasetsRequest) returns (RagGetCrawlerAttachedDatasetsResponse)
Get datasets currently attached to a crawler.

RagDeleteCrawlers

rpc RagDeleteCrawlers (RagDeleteCrawlersRequest) returns (RagDeleteCrawlersResponse)
Delete multiple crawlers.

RagGetCrawlerRunLogs

rpc RagGetCrawlerRunLogs (RagGetCrawlerRunLogsRequest) returns (RagGetCrawlerRunLogsResponse)
Get crawler run logs.
Messages

RagAddCrawlerResultsToDatasetsRequest

Request message for adding crawler output to one or more datasets.

Either crawler_names or crawler_result_names (or both) must be provided.

FieldTypeLabelDescription
parent string

Required. The agent that owns the crawler. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

crawler_names string repeated

Optional. Resource names of crawlers whose results should be imported.
The specified crawlers must have at least one successful run. All of the results of the last completed run are uploaded to the datasets. Format:

projects/<project_uuid>/agent/crawlers/<crawler_uuid>

crawler_result_names string repeated

Optional. Resource names of crawler results to upload in addition to the results of the crawlers specified in crawler_names. Format:

projects/<project_uuid>/agent/crawler_results/<crawler_result_uuid>

dataset_ids string repeated

Required. IDs of the datasets to add the crawl results to.

RagChunk

Chunk of text extracted from a document.

Chunks are the basic retrieval units used for vector similarity search in RAG.

FieldTypeLabelDescription
id string

Chunk ID (computed as xxhash of content combined with document_id).

dataset_id string

Parent dataset ID.

document_id string

Parent document ID.

content string

Chunk text content (the actual text segment extracted from the document).

important_keywords string repeated

Important keywords extracted from or manually assigned to this chunk.

questions string repeated

Associated questions for Q&A chunks (used when chunk_method=qa).

image_id string

Associated image ID if this chunk references an image.

positions google.protobuf.ListValue repeated

Position information in the original document.
Each position is an array of 5 integers representing location data (format varies by document type).

create_time google.protobuf.Timestamp

Creation date and time.

document_keyword string

Document name used as a keyword for retrieval.

similarity float optional

Similarity score between 0.0 and 1.0 (only populated in retrieval responses).

RagCrawler

RagCrawler definition.

This object represents a reusable crawler profile that can be run multiple times.

It is modeled after Crawl4AI concepts:

The same crawler can be executed multiple times; each execution creates

a separate crawler run and result set.

FieldTypeLabelDescription
name string

Resource name of the RagCrawler Format:

projects/<project_uuid>/agent/crawlers/<crawler_uuid>
Automatically generated in backend if empty

display_name string optional

Optional. Human-readable crawler name shown in UIs/logs. Should be unique per agent to simplify operational troubleshooting.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

crawler_sources RagCrawlerSources optional

Optional. Crawl entry points. Configure crawl entry points: URL seeds and/or sitemap sources.

crawler_seed_url_filters RagCrawlerSeedUrlFilters optional

Optional. Seed URL filters. Filters are applied to the seed URLs before they are crawled.

crawler_auth RagCrawlerAuth optional

Optional. Login/auth setup used before crawl requests.

crawler_browser_config RagCrawlerBrowserConfig optional

Optional. Browser runtime setup (engine, viewport, cookies, proxy, headers). Roughly corresponds to Crawl4AI BrowserConfig. Use this when target sites require JS, custom headers, session cookies, or proxy routing.

crawler_config RagCrawlerConfig optional

Optional. Crawl execution behavior and extraction settings. Roughly corresponds to Crawl4AI CrawlerRunConfig.

retry_config RagCrawlerRetryConfig optional

Optional. Retry configuration for crawler runs.

RagCrawlerAuth

Authentication configuration.

Supports both browser/form login and HTTP auth patterns used by Crawl4AI pipelines when crawling protected content.

HTTP Auth is used on all pages of the sources, while html_auth is a separate authentication flow used in the beginning of the crawl to extract the cookies. This is done through a login screen. If HTTP Auth is set, this would ALSO be used on the HTML auth page.

FieldTypeLabelDescription
http_auth RagCrawlerHttpAuth optional

Optional. HTTP Basic auth settings.

html_auth RagCrawlerHtmlAuth optional

Optional. Form/HTML login selector and credential settings.

RagCrawlerBrowserConfig

Browser runtime configuration.

This block maps closely to Crawl4AI BrowserConfig and controls browser

process setup (engine, headless mode, viewport, context, proxy, cookies,

user-agent behavior, and launch arguments).

FieldTypeLabelDescription
crawler_headers google.protobuf.Struct repeated

Optional. HTTP headers sent on page/resource requests. Repeated entries allow duplicate header names and preserve order.

crawler_cookies RagCrawlerCookie repeated

Optional. Initial cookies.

crawler_user_agent string optional

Optional. User-Agent sent with requests.

RagCrawlerConcurrencyConfig

Concurrency and pacing controls for crawler runs.

FieldTypeLabelDescription
max_concurrent_requests int32 optional

Optional. Max number of concurrent in-flight requests/pages. Increase for throughput; reduce for fragile sites/rate limits.

slow_crawl bool optional

Optional. Enable slow crawl mode with fixed delays between requests to avoid rate limits.

RagCrawlerConfig

Crawl run behavior.

This block controls scheduling, traversal, extraction outputs, retries,

diagnostics capture, and deep crawling options for each crawler run.

FieldTypeLabelDescription
concurrency_config RagCrawlerConcurrencyConfig optional

Optional. Concurrency and pacing controls for crawler requests.

deep_crawler_config RagCrawlerDeepCrawlerConfig optional

Optional. Deep crawler behavior (enable + depth/pages/scoring/filter chain).

output_config RagCrawlerResultsConfig optional

Optional. Structured output configuration (format + metadata policy).

RagCrawlerContentResult

FieldTypeLabelDescription
metadata google.protobuf.Struct optional

Optional. Extracted page metadata. Includes only fields configured in RagCrawlerConfig.output_config.meta_data_extractors.

markdown string optional

Optional. Extracted markdown output.

RagCrawlerCookie

Cookie representation for initial browser session state.

FieldTypeLabelDescription
cookie_name string

Required. Cookie name.

cookie_value string

Required. Cookie value.

cookie_domain string optional

Optional. Cookie domain.

RagCrawlerDeepCrawlerConfig

Deep crawler options grouped under one config node.

FieldTypeLabelDescription
is_active bool optional

Optional. Enable deep crawler behavior (link following beyond seeds). Default false. If false, config is ignored.

crawl_strategy RagCrawlerCrawlStrategy optional

Optional. Crawl traversal strategy. BFS is often best for broad site coverage; DFS for deep section traversal. Default RAG_CRAWLER_CRAWL_STRATEGY_BFS.

max_depth int32 optional

Optional. Maximum link depth from seed URLs. 0 usually means only seed pages.

max_pages int32 optional

Optional. Hard cap on total processed pages for this run.

deep_crawler_filters RagCrawlerFilters optional

Optional. URL and domain restrictions.

RagCrawlerExecutionInfo

Consolidated diagnostics and HTTP execution metadata for a crawl result.

FieldTypeLabelDescription
ssl_certificate google.protobuf.Struct optional

Optional. SSL certificate details.

success bool optional

Optional. Crawl status flag.

error_message string optional

Optional. Error details if crawl failed.

RagCrawlerFilters

URL and domain restrictions.

Filters are evaluated during link discovery/scheduling and help avoid

crawling irrelevant, duplicate, or unsafe sections (auth/logout pages,

marketing subdomains, binary downloads, etc.).

These include domains to be excluded in the sources (e.g. through sitemaps or seed URLs)

and domains to be excluded in the deep crawl or extraction of pages to be crawled.

FieldTypeLabelDescription
allowed_domains string repeated

Optional. Domain allow-list (host-level gating).

disallowed_domains string repeated

Optional. Domain block-list.

allow_internal_links bool optional

Optional. Include internal links.

allow_external_links bool optional

Optional. Include external links.

allow_social_media_links bool optional

Optional. Include social media links.

allowed_regex string repeated

disallowed_regex string repeated

allowed_paths string repeated

disallowed_paths string repeated

RagCrawlerHtmlAuth

Form/HTML login configuration.

Selector types and selector strings identify login form fields in the page

DOM. Credentials are then filled before form submission.

FieldTypeLabelDescription
html_auth_base_url string optional

Optional. Base URL used for auth/login navigation.

html_auth_username_selector_type RagCrawlerSelectorType optional

Optional. Username field selector type.

html_auth_username_selector string optional

Optional. Username field selector value.

html_auth_username string optional

Optional. Username credential.

html_auth_password_selector_type RagCrawlerSelectorType optional

Optional. Password field selector type.

html_auth_password_selector string optional

Optional. Password field selector value.

html_auth_password string optional

Optional. Password credential.

authentication_execution_type RagCrawlerAuthenticationExecutionType optional

Optional. Authentication execution type

RagCrawlerHttpAuth

HTTP Basic authentication settings.

FieldTypeLabelDescription
http_auth_username string

HTTP Basic Authentication username.

http_auth_password string

HTTP Basic Authentication password.

RagCrawlerMetaDataExtractor

Metadata extractor configuration.

FieldTypeLabelDescription
type RagCrawlerMetaDataExtractorType optional

Optional. Regex pattern to match metadata field names.

value string optional

Optional. Value to extract (e.g. regex pattern, fixed value, CSS selector, XPath selector, ID selector).

key string optional

Optional. Metadata field name to extract (e.g. url, title, description, author, keywords, tags, created_date, modified_date, scraped_at).

RagCrawlerResult

Crawler result entity.

Each result corresponds to one crawled URL in a crawler run and includes

extracted content, metadata, diagnostics, and optional binary artifacts.

FieldTypeLabelDescription
name string

Resource name of the crawler result. Format:

projects/<project_uuid>/agent/crawler_results/<crawler_result_uuid>

crawler_name string

Resource name of the source crawler profile.

operation_name string

Resource name of the crawler run that produced this result.

source_url string

URL this content came from.

file_resource FileResource

Classified primary file resource built from source URL and detected MIME/type. If its a HTML page, it will be stored in the DocumentFileResource Bytes. See FileResource Documentation for all other file types.

last_crawled_date google.protobuf.Timestamp

Timestamp when this URL was last processed by crawler.

content_result RagCrawlerContentResult optional

Optional. Consolidated extracted content for this page.

page_last_updated_date google.protobuf.Timestamp optional

Optional. Timestamp when source page was last updated. Source precedence: HTTP Last-Modified header, then sitemap fallback.

RagCrawlerResultsConfig

Structured output configuration.

Use this block to define result payload shape and metadata behavior,

similar to Crawl4AI markdown/output-generation toggles.

FieldTypeLabelDescription
inject_frontmatter bool optional

Optional. Inject YAML frontmatter into markdown output. If the content is HTML based, it will automatically be converted to markdown. Optionally, you can inject YAML frontmatter into the markdown output. Default true.

meta_data_extractors RagCrawlerMetaDataExtractor repeated

Optional. Metadata extractors.

RagCrawlerRetryConfig

Timeout settings for crawler operations.

FieldTypeLabelDescription
page_load_timeout_seconds int32 optional

Optional. Page load/render timeout in seconds.

retry_max_attempts int32 optional

Optional. Maximum retry attempts per page source.

RagCrawlerSeedUrlFilters

FieldTypeLabelDescription
allowed_regex string repeated

Optional. Regex allow-list for full URLs.

disallowed_regex string repeated

Optional. Regex block-list for full URLs.

allowed_domains string repeated

Optional. Domain allow-list (host-level gating).

disallowed_domains string repeated

Optional. Domain block-list.

RagCrawlerSources

Crawl entry points.

Both inputs can be provided at the same time:

- Sitemaps are expanded into a crawl URL list (in discovery order)

- Seed URLs are appended afterwards (in the order provided)

FieldTypeLabelDescription
urls string repeated

Direct seed URLs to enqueue as starting points.

sitemaps string repeated

Sitemap URLs used for URL discovery. Typical values are /sitemap.xml or sitemap index files.

RagCreateCrawlerRequest

Request message for creating a crawler for a dataset of an agent.

FieldTypeLabelDescription
parent string

Required. The agent to create crawlers for. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

crawler RagCrawler

Required. Crawler definition to create. If crawler.name is empty, backend will generate it. Format:

projects/<project_uuid>/agent/crawlers/<crawler_uuid>

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which RagCrawler fields get returned.

RagCreateDatasetRequest

Request message for creating a new dataset.

FieldTypeLabelDescription
parent string

Required. The agent to create the dataset for. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

name string

Required. Unique name of the dataset to create. Must follow these requirements:

  • contain only characters from the basic multilingual Unicode plane
  • maximum 128 characters
  • case-insensitive

description string

Optional. Dataset description. Maximum 65,535 characters.

avatar string

Optional. Base64-encoded avatar image in the format "data:image/[png|jpeg];base64,<base64_string>". Maximum 65,535 characters.

chunk_method RagChunkMethod

Optional. Default chunking method for documents in this dataset.

parser_config RagParserConfig

Optional. Configuration settings for the dataset parser. The used fields vary depending on the selected chunk_method.

embedding_model_ccai_service_name string

Optional if dataset_default_embedding_ccai_service_name is set in the ONDEWO config, otherwise mandatory. CCAI service to use for embedding the documents in the dataset.

RagDataset

Dataset containing documents for RAG.

FieldTypeLabelDescription
id string

Dataset UUID.

avatar string

Base64-encoded avatar image.

name string

Dataset name.

description string

Dataset description.

document_count int32 optional

Number of documents in the dataset.

token_num int32 optional

Number of tokens in the dataset.

chunk_count int32 optional

Number of chunks of all documents in the dataset.

chunk_method RagChunkMethod

Default chunking method for documents in this dataset.

parser_config RagParserConfig

Document parser configuration (auto-generated based on chunk_method).

pagerank int32 optional

Pagerank.

parsing_status RagDatasetParsingStatus

Parsing status of all documents in the dataset. Might be empty if the system failed to get the parsing statistics.

create_time google.protobuf.Timestamp

Creation date and time.

update_time google.protobuf.Timestamp

Last update date and time.

embedding_model_ccai_service_name string

CCAI service name of the embedding model used by this dataset.

RagDatasetList

Response message for listing datasets.

FieldTypeLabelDescription
datasets RagDataset repeated

List of datasets.

total int32

Total number of datasets that match the given filters

next_page_token string

Page token string (following the format described in RagListDatasetsRequest) for retrieving the next results page

RagDatasetParsingStatus

Parsing status statistics of all documents in a dataset

FieldTypeLabelDescription
unstart int32

number of documents that have not started processing.

running int32

number of documents that are currently being processed.

cancel int32

number of documents for which parsing was cancelled.

done int32

number of documents that have successfully finished parsing.

fail int32

number of documents for which parsing has failed.

RagDeleteCrawlerRequest

Request message for deleting a crawler of a dataset for the specified agent.

FieldTypeLabelDescription
name string

Resource name of the RagCrawler Format:

projects/<project_uuid>/agent/crawlers/<crawler_uuid>

parent string

Required. The agent owning the crawler. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

RagDeleteCrawlerResponse

Response message for deleting a crawler of a dataset for the specified agent.

FieldTypeLabelDescription
name string

Resource name of the RagCrawler Format:

projects/<project_uuid>/agent/crawlers/<crawler_uuid>

error_message string

Error message if there are any.

RagDeleteCrawlerRunsRequest

Request message for deleting crawler runs.

Deletion candidates are the union of:

- explicit run names in crawler_run_names

- all runs belonging to crawlers listed in crawler_names

If both lists are empty, the call is a no-op.

FieldTypeLabelDescription
parent string

Required. The agent that owns the crawler runs. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

crawler_run_names string repeated

Optional. Explicit crawler run names to delete. Format:

projects/<project_uuid>/agent/crawler_runs/<crawler_run_uuid>

crawler_names string repeated

Optional. Crawler names whose runs should be deleted. Format:

projects/<project_uuid>/agent/crawlers/<crawler_uuid>

RagDeleteCrawlerRunsResponse

Response message for deleting crawler runs.

FieldTypeLabelDescription
deleted_count int32

Number of deleted crawler runs.

deleted_run_names string repeated

Resource names of deleted crawler runs.

RagDeleteCrawlersRequest

Request message for deleting multiple crawlers of a dataset for the specified agent.

FieldTypeLabelDescription
parent string

Required. The agent owning the crawlers. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

names string repeated

Optional. Crawler resource names to delete. Format:

projects/<project_uuid>/agent/crawlers/<crawler_uuid>

RagDeleteCrawlersResponse

Response message for deleting multiple crawlers of a dataset for the specified agent.

FieldTypeLabelDescription
delete_crawler_responses RagDeleteCrawlerResponse repeated

responses to delete crawlers

error_message string

error message if there are any

RagDeleteDocumentsRequest

Request message for deleting one or more documents of a single dataset.

FieldTypeLabelDescription
parent string

Required. The agent to delete datasets from. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

dataset_id string

Required. ID of dataset containing the documents to delete.

ids string repeated

Optional. IDs of documents to delete. Duplicate IDs are ignored.

delete_all bool

Optional. Delete all documents of the specified dataset if set to true

RagDeleteRequest

Request message for deleting one or more of a RAGFlow resource.

FieldTypeLabelDescription
parent string

Required. The agent to delete datasets from. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

ids string repeated

Optional. IDs of resources to delete. Duplicate IDs are ignored.

delete_all bool

Optional. Delete all resources if set to true

RagDocAgg

Aggregated document retrieval results containing how many chunks of the given document where retrieved

FieldTypeLabelDescription
doc_name string

Document name

doc_id string

Document ID

count int32

Number of retrieved chunks

RagDocument

Document uploaded to a dataset.

FieldTypeLabelDescription
id string

Document UUID.

thumbnail string

Base64-encoded thumbnail image in the format "data:image/[png|jpeg];base64,<base64_string>". Maximum 65,535 characters.

dataset_id string

Parent dataset ID.

chunk_method RagChunkMethod

Chunking method used for this document.

parser_config RagParserConfig

Parser configuration used for chunking this document.

type RagDocumentType

Broad file category

name string

Document filename.

size int64 optional

File size in bytes.

chunk_count int32 optional

Number of chunks extracted from this document (initially 0 until parsed).

token_count int32 optional

Number of tokens across all chunks in this document.

progress float optional

Processing progress as a decimal value between 0.0 (not started) and 1.0 (complete).

progress_msg string

Human-readable progress message describing current processing state.

process_begin_at google.protobuf.Timestamp

Processing start date and time.

process_duration float optional

Total processing duration in seconds.

meta_fields google.protobuf.Struct

Custom metadata fields specific to this document (arbitrary key-value pairs).

run RagDocumentStatus

Document processing status.

status string

Status indicating if document is enabled ("1"=enabled, "0"=disabled).

create_time google.protobuf.Timestamp

Creation date and time.

update_time google.protobuf.Timestamp

Last update date and time.

RagDocumentIdsRequest

Request message for any endpoints that need a list of document IDs as input, e.g. delete documents, parse documents, stop parsing documents.

FieldTypeLabelDescription
parent string

Required. The agent to delete documents from. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

dataset_id string

Required. Dataset ID of the dataset containing the documents in document_ids.

document_ids string repeated

Optional. Document IDs for the request.

RagDocumentList

Response message for listing documents.

FieldTypeLabelDescription
documents RagDocument repeated

List of documents for the current page.

total int32

Total number of documents matching the filter criteria (not limited by pagination).

next_page_token string

Page token string (following the format described in RagListDocumentsRequest) for retrieving the next results page

RagDownloadDocumentRequest

Request message for downloading the document file.

FieldTypeLabelDescription
parent string

Required. The agent to download the document from. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

dataset_id string

Required. Dataset ID containing the document.

document_id string

Required. Document ID to download.

RagFileChunk

File chunk for streaming downloads.

First chunk contains metadata, subsequent chunks only contain data.

FieldTypeLabelDescription
metadata RagFileMetadata

Required in first chunk, ignored in later chunks. File metadata.

data bytes

Optional. Chunk of file content.

RagFileMetadata

File metadata for streaming uploads/downloads.

FieldTypeLabelDescription
file_name string

Required. Filename. Maximum length 255.

content_type string

Optional. MIME type (e.g., "application/pdf", "image/png").

size int64

Optional. Minimum 0. File size in bytes (if known, 0 if unknown).

RagGetCrawlerAttachedDatasetsRequest

Request message for getting datasets attached to a crawler.

FieldTypeLabelDescription
parent string

Required. The agent owning the crawler. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

crawler_name string

Required. Resource name of the crawler. Format:

projects/<project_uuid>/agent/crawlers/<crawler_uuid>

page_size int32 optional

Optional. Maximum number of datasets to return. If unset or non-positive, backend default is used.

page_token string optional

Optional. Specifies which page to return. The page token is a string of the format

current_index-<idx>--page_size-<size>
  • <size> must be an integer ≥ 1. The maximum number of results to return.
  • <idx> must be an integer ≥ 0. The start index in the requested list, starting from which a maximum of <size> elements are returned.
Important note: The <idx> is the index in the requested sequence NOT the page number. E.g. if the requested list has 100 elements then current_index-5--page_size-15 returns the elements at index 5-19 and not the 5-th page of 15 elements. Both current_index-<idx> and page_size-<size> are optional and default to 0 and 10 respectively. The following are all valid page_tokens
  • (empty string/missing value) - index 0, page size 10
  • current_index-3 - index 3, page size 10
  • page_size-20 - index 0, page size 20
  • current_index-3--page_size-20 - index 3, page size 20

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which RagDataset fields get returned.

orderby string optional

Optional. Sort field (default: create_time).

sorting_mode SortingMode optional

Optional. Sort descending (default: SORTING_MODE_DESCENDING).

RagGetCrawlerAttachedDatasetsResponse

Response message for getting datasets attached to a crawler.

FieldTypeLabelDescription
datasets RagDataset repeated

Datasets attached to the crawler.

next_page_token string

Page token string (following the format described in RagGetCrawlerAttachedDatasetsRequest) for retrieving the next results page

RagGetCrawlerRequest

Request message for getting a crawler.

FieldTypeLabelDescription
name string

Required. Resource name of the RagCrawler. Format:

projects/<project_uuid>/agent/crawlers/<crawler_uuid>

parent string

Required. The agent owning the crawler. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which RagCrawler fields get returned.

RagGetCrawlerResultRequest

Request message for getting a single crawler result from a crawler run.

FieldTypeLabelDescription
parent string

Required. The agent that owns the crawler run. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

operation_name string

Required. Resource name of the crawler run. Format:

projects/<project_uuid>/agent/crawler_runs/<crawler_run_uuid>

url string

Required. Exact URL of the crawler result to retrieve.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which RagCrawlerResult fields get returned.

RagGetCrawlerResultsRequest

Request message for getting crawler results of a crawler run.

Results are returned in pages. Request the first page with an empty

page_token, then continue with each response next_page_token.

Example:

RagGetCrawlerResults(run_name, page_token="")

-> next_page_token="..."

RagGetCrawlerResults(run_name, page_token="...")

FieldTypeLabelDescription
parent string

Required. The agent that owns the crawler run. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

operation_name string

Required. Resource name of the crawler run. Format:

projects/<project_uuid>/agent/crawler_runs/<crawler_run_uuid>

page_token string optional

Optional. Specifies which page to return. The page token is a string of the format

current_index-<idx>--page_size-<size>
  • <size> must be an integer ≥ 1. The maximum number of results to return.
  • <idx> must be an integer ≥ 0. The start index in the requested list, starting from which a maximum of <size> elements are returned.
Important note: The <idx> is the index in the requested sequence NOT the page number. E.g. if the requested list has 100 elements then current_index-5--page_size-15 returns the elements at index 5-19 and not the 5-th page of 15 elements. Both current_index-<idx> and page_size-<size> are optional and default to 0 and 10 respectively. The following are all valid page_tokens
  • (empty string/missing value) - index 0, page size 10
  • current_index-3 - index 3, page size 10
  • page_size-20 - index 0, page size 20
  • current_index-3--page_size-20 - index 3, page size 20

url_query string optional

Optional. Filter by URL substring.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which RagCrawlerResult fields get returned.

orderby string optional

Optional. Sort field (default: last_crawled_date).

sorting_mode SortingMode optional

Optional. Sort descending.

RagGetCrawlerResultsResponse

Response message for getting crawler results.

FieldTypeLabelDescription
crawler_results RagCrawlerResult repeated

List of crawler results for the crawler run.

next_page_token string

Page token string (following the format described in RagGetCrawlerResultsRequest) for retrieving the next results page

total_size int32

Total number of crawler results available after applying request filters (for example url_query).

RagGetCrawlerRunLogsRequest

Request message for getting crawler run logs.

FieldTypeLabelDescription
parent string

Required. The agent that owns the crawler run. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

operation_name string

Required. Resource name of the crawler run. Format:

projects/<project_uuid>/agent/crawler_runs/<crawler_run_uuid>

page_token string optional

Optional. Specifies which page to return.

page_size int32 optional

Optional. Number of logs per page.

level_filters LogSeverity repeated

Optional. Filter by one or more log levels.

phase_filter string optional

Optional. Filter by specific phase (exact match).

search_query string optional

Optional. Search string for the message or details.

start_time google.protobuf.Timestamp optional

Optional. Filter logs generated after this time.

end_time google.protobuf.Timestamp optional

Optional. Filter logs generated before this time.

source_url_filter string optional

Optional. Filter by source URL (substring match).

orderby string optional

Optional. Sort field. Accept any field of LogEntry. Default: log_entry_timestamp.

sorting_mode SortingMode optional

Optional. Sort descending.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which LogEntry fields get returned.

RagGetCrawlerRunLogsResponse

Response message for getting crawler run logs.

FieldTypeLabelDescription
operation_name string

Resource name of the crawler run operation.

crawler_name string

Resource name of the crawler profile.

status OperationMetadata.Status

Operation status of the run.

entries LogEntry repeated

List of log entries for the requested page.

next_page_token string

Page token string for retrieving the next results page.

total_log_entries int32

Total number of log entries available after applying filters.

RagGetCrawlerRunRequest

Request message for getting a crawler run.

FieldTypeLabelDescription
parent string

Required. The agent that owns the crawler run. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

crawler_run_name string

Required. Resource name of the crawler run. Format:

projects/<project_uuid>/agent/crawler_runs/<crawler_run_uuid>

RagGraphRagConfig

GraphRAG configuration.

FieldTypeLabelDescription
use_graphrag bool optional

Optional. Default false.

entity_types string repeated

Optional. Default ["organization", "person", "geo", "event", "category"].

method RagGraphRagMethod optional

Optional. Default light.

community bool optional

Optional. Default false.

resolution bool optional

Optional. Default false.

RagListCrawlerRunsRequest

Request message for listing crawler runs.

FieldTypeLabelDescription
parent string

Required. The agent that owns the crawler runs. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

crawler_name string optional

Optional. Restrict to one crawler. Format:

projects/<project_uuid>/agent/crawlers/<crawler_uuid>

page_token string optional

Optional. Specifies which page to return. The page token is a string of the format

current_index-<idx>--page_size-<size>
  • <size> must be an integer ≥ 1. The maximum number of results to return.
  • <idx> must be an integer ≥ 0. The start index in the requested list, starting from which a maximum of <size> elements are returned.
Important note: The <idx> is the index in the requested sequence NOT the page number. E.g. if the requested list has 100 elements then current_index-5--page_size-15 returns the elements at index 5-19 and not the 5-th page of 15 elements. Both current_index-<idx> and page_size-<size> are optional and default to 0 and 10 respectively. The following are all valid page_tokens
  • (empty string/missing value) - index 0, page size 10
  • current_index-3 - index 3, page size 10
  • page_size-20 - index 0, page size 20
  • current_index-3--page_size-20 - index 3, page size 20

status OperationMetadata.Status optional

Optional. Filter by operation status.

orderby string optional

Optional. Sort field (default: created_at).

sorting_mode SortingMode optional

Optional. Sort descending.

RagListCrawlerRunsResponse

Response message for listing crawler runs.

FieldTypeLabelDescription
crawler_runs Operation repeated

List of crawler run operations.

next_page_token string

Page token string (following the format described in RagListCrawlerRunsRequest) for retrieving the next results page

RagListCrawlersRequest

Request message for listing crawlers of a dataset for the specified agent.

FieldTypeLabelDescription
parent string

Required. The agent to list crawlers for. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the agent of the dataset.

page_token string optional

Optional. Specifies which page to return. The page token is a string of the format

current_index-<idx>--page_size-<size>
  • <size> must be an integer ≥ 1. The maximum number of results to return.
  • <idx> must be an integer ≥ 0. The start index in the requested list, starting from which a maximum of <size> elements are returned.
Important note: The <idx> is the index in the requested sequence NOT the page number. E.g. if the requested list has 100 elements then current_index-5--page_size-15 returns the elements at index 5-19 and not the 5-th page of 15 elements. Both current_index-<idx> and page_size-<size> are optional and default to 0 and 10 respectively. The following are all valid page_tokens
  • (empty string/missing value) - index 0, page size 10
  • current_index-3 - index 3, page size 10
  • page_size-20 - index 0, page size 20
  • current_index-3--page_size-20 - index 3, page size 20

dataset_name string optional

Optional. Filter by dataset name.

crawler_name string optional

Optional. Filter by crawler name.

orderby string optional

Optional. Sort field (default: create_time).

sorting_mode SortingMode optional

Optional. Sort descending.

field_mask google.protobuf.FieldMask optional

Optional. The Mask to control which RagCrawler fields get returned for each crawler in the list response.

RagListCrawlersResponse

Response message for listing crawlers.

FieldTypeLabelDescription
crawlers RagCrawler repeated

List of crawlers.

next_page_token string

Page token string (following the format described in RagListCrawlersRequest) for retrieving the next results page

RagListDatasetsRequest

Request message for listing datasets with pagination and filtering.

FieldTypeLabelDescription
parent string

Required. The agent to list all datasets from. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

page_token string

Optional. Specifies which page to return. The page token is a string of the format

current_index-<idx>--page_size-<size>
  • <size> must be an integer ≥ 1. The maximum number of results to return.
  • <idx> must be an integer ≥ 0. The start index in the requested list, starting from which a maximum of <size> elements are returned.
Important note: The <idx> is the index in the requested sequence NOT the page number. E.g. if the requested list has 100 elements then current_index-5--page_size-15 returns the elements at index 5-19 and not the 5-th page of 15 elements.
Both current_index-<idx> and page_size-<size> are optional and default to 0 and 10 respectively. The following are all valid page_tokens
  • (empty string/missing value) - index 0, page size 10
  • current_index-3 - index 3, page size 10
  • page_size-20 - index 0, page size 20
  • current_index-3--page_size-20 - index 3, page size 20

id string

Optional. Filter by dataset ID.

name string

Optional. Filter by dataset name.

orderby string

Optional. Sort field. Can be one of

  • id
  • name
  • description
  • document_count
  • token_num
  • chunk_count
  • chunk_method
  • pagerank
  • create_time
  • update_time
(default: create_time).

desc bool optional

Deprecated. Optional. Sort descending (default: true).

sorting_mode SortingMode optional

Optional. Specify whether to sort ascending or descending (default: ascending).

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which RagDataset fields get returned.

Fields with deprecated option

Name Option
desc

true

RagListDocumentsRequest

Request message for listing documents in a dataset with pagination and filtering.

FieldTypeLabelDescription
parent string

Required. The agent to list documents from. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

dataset_id string

Required. Dataset ID to list documents from.

id string

Optional. Filter by specific document ID.

name string

Optional. Filter by document name (exact match).

page_token string

Optional. Specifies which page to return. The page token is a string of the format

current_index-<idx>--page_size-<size>
  • <size> must be an integer ≥ 1. The maximum number of results to return.
  • <idx> must be an integer ≥ 0. The start index in the requested list, starting from which a maximum of <size> elements are returned.
Important note: The <idx> is the index in the requested sequence NOT the page number. E.g. if the requested list has 100 elements then current_index-5--page_size-15 returns the elements at index 5-19 and not the 5-th page of 15 elements. Both current_index-<idx> and page_size-<size> are optional and default to 0 and 10 respectively. The following are all valid page_tokens
  • (empty string/missing value) - index 0, page size 10
  • current_index-3 - index 3, page size 10
  • page_size-20 - index 0, page size 20
  • current_index-3--page_size-20 - index 3, page size 20

orderby string

Optional. Sort field (default: "create_time"). Accept any field of RagDocument.

desc bool optional

Deprecated. Optional. Sort in descending order (default: true).

keywords string

Optional. Filter by document names containing keywords.

suffix string repeated

Optional. Suffixes to filter by (e.g. ["pdf", "png", "docx"]).

run_status RagDocumentStatus repeated

Optional. Document statuses to filter by.

create_time_from google.protobuf.Timestamp

Optional. Filter by creation time start.

create_time_to google.protobuf.Timestamp

Optional. Filter by creation time end.

metadata_condition RagMetadataConditions

Optional. Metadata filter condition to restrict results based on document metadata.

sorting_mode SortingMode optional

Optional. Specify whether to sort ascending or descending (default: ascending).

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which RagDocument fields get returned.

Fields with deprecated option

Name Option
desc

true

RagMetadataCondition

Condition to filter document metadata on.

String comparison is always case-insensitive.

FieldTypeLabelDescription
name string

Required. Metadata field name.

comparison_operator RagComparisonOperator

Required. Comparison operator.

value string

Required. Value to compare to.
Must always be a string, but can also be the string representation of a different type, e.g. string representation of a dict "{"key1": 3, "key2": "value"}".

RagMetadataConditions

List of document metadata conditions.

FieldTypeLabelDescription
logic RagLogic

Optional. Whether to apply the conditions with a logical and or logical or.

conditions RagMetadataCondition repeated

Optional. List of conditions.

RagParserConfig

Document parser configuration.

Used fields depend on the chunking method of the document.

FieldTypeLabelDescription
auto_keywords int32 optional

Optional. Minimum 0, maximum 32, default 0. See https://ragflow.io/docs/dev/autokeyword_autoquestion for details.

auto_questions int32 optional

Optional. Minimum 0, maximum 10, default 0. See https://ragflow.io/docs/dev/autokeyword_autoquestion for details.

chunk_token_num int32

Optional. Minimum 1, maximum 2048, default 512.

delimiter string

Optional. Default "\n".

html4excel bool optional

Optional. Convert Excel documents to HTML. Default false.

layout_recognize string

Optional. Default "DeepDOC".

tag_kb_ids string repeated

Optional. List of dataset IDs. See https://ragflow.io/docs/dev/use_tag_sets for details.

topn_tags int32

Optional. Minimum 1. Maximum 10. Default 1.

filename_embd_weight float optional

Optional. Minimum 0.0. Maximum 1.0. Default 0.1.

task_page_size int32

Optional. Minimum 1, default 12. Only applies to PDFs.

raptor RagRaptorConfig

Optional. RAPTOR-specific settings. Default { "use_raptor": false }.

graphrag RagGraphRagConfig

Optional. GRAPHRAG-specific settings. Default { "use_graphrag": false }.

RagPartialSuccess

On complete success: no fields set (empty message).

On partial success/failure: both fields set.

FieldTypeLabelDescription
success_count int32

Number of successful operations.

errors string repeated

Error messages for failed operations.

RagRaptorConfig

RAPTOR configuration. Refer to RAPTOR paper for more information about RAPTOR.

FieldTypeLabelDescription
use_raptor bool optional

Optional. Default false. Whether to use RAPTOR for this dataset.

prompt string

Optional. Prompt to use for RAPTOR. Default:
"Please summarize the following paragraphs. Be careful with the numbers, do not make things up. Paragraphs as following:\n {cluster_content}\nThe above is the content you need to summarize."

max_token int32

Optional. Minimum 1. Maximum 2048. Default 256.

threshold float optional

Optional. Minimum 0.0. Maximum 1.0. Default 0.1.

max_cluster int32

Optional. Minimum 1. Maximum 1024. Default 64.

random_seed int64 optional

Optional. Minimum 0. Default 0.

RagRemoveCrawlerResultsFromDatasetsRequest

Request message for removing previously imported crawler output from one or more datasets.

FieldTypeLabelDescription
parent string

Required. The agent that owns the crawler. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

crawler_name string

Required. Resource name of crawler whose results should be removed. Format:

projects/<project_uuid>/agent/crawlers/<crawler_uuid>

crawler_result_names string repeated

Required. Resource names of crawler results to remove. Format:

projects/<project_uuid>/agent/crawler_results/<crawler_result_uuid>

dataset_ids string repeated

Required. Dataset IDs from which the crawler outputs should be removed. Example:

crawler_names = ["projects/p/agent/crawlers/c1"]
crawler_result_names = ["projects/p/agent/crawler_results/r1", "projects/p/agent/crawler_results/r2"]
dataset_ids = ["dataset-a", "dataset-b"]

RagRetrievalRequest

Request message for retrieving chunks using vector similarity search.

Supports hybrid search combining vector similarity with keyword matching.

FieldTypeLabelDescription
parent string

Required. The agent to retrieve chunks for. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

dataset_ids string repeated

Required. Dataset IDs to search.

page_token string

Optional. Specifies which page to return. The page token is a string of the format

current_index-<idx>--page_size-<size>
  • <size> must be an integer ≥ 1. The maximum number of results to return.
  • <idx> must be an integer ≥ 0. The start index in the requested list, starting from which a maximum of <size> elements are returned.
Important note: The <idx> is the index in the requested sequence NOT the page number. E.g. if the requested list has 100 elements then current_index-5--page_size-15 returns the elements at index 5-19 and not the 5-th page of 15 elements. Both current_index-<idx> and page_size-<size> are optional and default to 0 and 10 respectively. The following are all valid page_tokens
  • (empty string/missing value) - index 0, page size 10
  • current_index-3 - index 3, page size 10
  • page_size-20 - index 0, page size 20
  • current_index-3--page_size-20 - index 3, page size 20

question string

Required. Query string to search for.

document_ids string repeated

Optional. Filter by specific document IDs within the datasets.

use_kg bool optional

Optional. Include knowledge graph retrieval to enhance results with graph relationships.

cross_languages string repeated

Optional. Cross-language translation codes to enable multilingual retrieval.
List elements can be any form of language name/code (parsed by LLM).

metadata_condition RagMetadataConditions

Optional. Metadata filter condition to restrict results based on document metadata.

similarity_threshold float optional

Optional. Minimum similarity score threshold between 0.0 and 1.0 (default: 0.2).

vector_similarity_weight float optional

Optional. Weight for vector similarity versus keyword matching between 0.0 and 1.0 (default: 0.3).
Higher values favor vector similarity, lower values favor keyword matching.

top_k int32

Optional. Minimum 1. Maximum number of chunks to retrieve before reranking (default: 1024).

highlight bool optional

Optional. Whether to highlight matched content in the returned chunks.

keyword bool optional

Optional. Extract additional keywords from the query to improve retrieval.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which RagChunk fields get returned.

rerank_model_ccai_service_name string optional

Optional. Rerank model used to refine the initial retrieval scores. If not provided, the default model is used (if one is set). If empty, the results are not reranked.

RagRetrievalResponse

Response message for chunk retrieval.

FieldTypeLabelDescription
chunks RagChunk repeated

Retrieved chunks with similarity scores populated (ordered by relevance).

doc_aggs RagDocAgg repeated

Statistics of the matched documents.

total int32

Total number of chunks matching the query (before pagination).

next_page_token string

Page token string (following the format described in RagRetrievalRequest) for retrieving the next results page

RagStartCrawlerRequest

Request message for running a crawler.

This starts a long-running operation and returns immediately.

Clients should poll operation status via RagGetCrawlerRun.

FieldTypeLabelDescription
parent string

Required. The agent that owns the crawler. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

crawler_name string

Required. Resource name of the crawler to run. Format:

projects/<project_uuid>/agent/crawlers/<crawler_uuid>

RagStopCrawlerRequest

Request message for stopping a crawler run.

FieldTypeLabelDescription
parent string

Required. The agent that owns the crawler run. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

name string

Required. Resource name of the crawler run. Format:

projects/<project_uuid>/agent/crawler_runs/<crawler_run_uuid>

RagStopCrawlerResponse

Result of stopping a crawler run

FieldTypeLabelDescription
name string

Resource name of the crawler run that was stopped. Format:

projects/<project_uuid>/agent/crawler_runs/<crawler_run_uuid>

error_message string

Error message if there are any; empty when the stop request was accepted successfully.

RagUpdateCrawlerRequest

Request message for updating a crawler (partial update).

FieldTypeLabelDescription
crawler RagCrawler

Required. The crawler to update. Only configuration fields can be updated. The name field must be set and must match an existing crawler. Timestamps and audit fields are auto-managed by the service.

parent string

Required. The agent owning the crawler. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

update_mask google.protobuf.FieldMask optional

Optional. FieldMask to specify which fields to update. If not provided, all configuration fields in crawler are updated.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which crawler fields get returned.

RagUpdateDatasetRequest

Request message for updating an existing dataset.

The same field constraints as for RagCreateDatasetRequest apply here.

FieldTypeLabelDescription
parent string

Required. The agent to update the dataset for. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

dataset_id string

Required. Dataset ID.

name string

Optional. New dataset name.

description string optional

Optional. New dataset description.

avatar string optional

Optional. New avatar image.

chunk_method RagChunkMethod

Optional. New chunk method.

parser_config RagParserConfig

Optional. New parser config (deep merged with existing).

pagerank int32 optional

Optional. Minimum 0. Maximum 100. PageRank value.

update_mask google.protobuf.FieldMask optional

Optional. FieldMask to specify which fields to update.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which RagDataset fields get returned.

embedding_model_ccai_service_name string

Optional. CCAI service to use for embedding the documents in the dataset.

RagUpdateDocumentRequest

Request message for updating an existing document's metadata and configuration.

FieldTypeLabelDescription
parent string

Required. The agent to update the document for. Format:

projects/<project_uuid>/agent

language_code string

Required. The language of the project to use.

dataset_id string

Required. Dataset ID containing the document.

document_id string

Required. Document ID to update.

name string

Optional. Maximum length 255. New document name (file extension must remain the same).

chunk_method RagChunkMethod

Optional. New chunking method (resets document to UNSTART status and deletes all existing chunks).

parser_config RagParserConfig

Optional. New parser configuration (deep merged with existing configuration).

enabled bool optional

Optional. Document enabled/disabled status.

meta_fields google.protobuf.Struct

Optional. Custom metadata fields for document-specific metadata (replaces existing metadata).

update_mask google.protobuf.FieldMask optional

Optional. FieldMask to specify which fields to update.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which RagDocument fields get returned.

RagUploadDocumentRequest

Request message for uploading a document to a dataset.

FieldTypeLabelDescription
parent string

Required in first chunk, ignored in later chunks. The agent to upload documents for. Format:

projects/<project_uuid>/agent

language_code string

Required in first chunk, ignored in later chunks. The language of the project to use.

dataset_id string

Required in first chunk, ignored in later chunks. Target dataset ID to upload documents to.

metadata RagFileMetadata

Required in first chunk, ignored in later chunks. File metadata.

data bytes

Optional. Chunk of file content.

Enums

RagChunkMethod

Chunking method for documents. See https://ragflow.io/docs/dev/configure_knowledge_base#select-chunking-method for details.

NameNumberDescription
RAG_CHUNK_METHOD_UNSPECIFIED 0

Unspecified. Defaults to RAG_CHUNK_METHOD_NAIVE

RAG_CHUNK_METHOD_NAIVE 1

General (default).

RAG_CHUNK_METHOD_BOOK 2

Book.

RAG_CHUNK_METHOD_EMAIL 3

Email.

RAG_CHUNK_METHOD_LAWS 4

Laws.

RAG_CHUNK_METHOD_MANUAL 5

Manual.

RAG_CHUNK_METHOD_ONE 6

One.

RAG_CHUNK_METHOD_PAPER 7

Paper.

RAG_CHUNK_METHOD_PICTURE 8

Picture.

RAG_CHUNK_METHOD_PRESENTATION 9

Presentation.

RAG_CHUNK_METHOD_QA 10

Q&A.

RAG_CHUNK_METHOD_TABLE 11

Table.

RAG_CHUNK_METHOD_TAG 12

Tag.

RagComparisonOperator

Valid metadata condition comparison operators

NameNumberDescription
RAG_COMPARISON_OPERATOR_UNSPECIFIED 0

Unspecified. Must never be used.

RAG_COMPARISON_OPERATOR_CONTAINS 1

String representation of metadata field contains value.
If metadata field is a list, checks if the string representation of any field contains value.

RAG_COMPARISON_OPERATOR_NOT_CONTAINS 2

String representation of metadata field does not contain value.
If metadata field is a list, checks if the string representation of no fields contains value.

RAG_COMPARISON_OPERATOR_IN 3

Checks with Python's in operator.
If metadata field is a list, all elements must satisfy the condition.

RAG_COMPARISON_OPERATOR_NOT_IN 4

Checks with Python's not in operator.
If metadata field is a list, all elements must satisfy the condition.

RAG_COMPARISON_OPERATOR_START_WITH 5

String representation of metadata field starts with value.
If metadata field is a list, checks if the joined string of the string representations of all list elements starts with the value.

RAG_COMPARISON_OPERATOR_END_WITH 6

String representation of metadata field ends with value.
If metadata field is a list, checks if the joined string of the string representations of all list elements ends with the value.

RAG_COMPARISON_OPERATOR_EMPTY 7

Is empty (Python falsy).

RAG_COMPARISON_OPERATOR_NOT_EMPTY 8

Is not empty (Python truthy).

RAG_COMPARISON_OPERATOR_EQ 9

Equals.

RAG_COMPARISON_OPERATOR_NEQ 10

Does not equal.

RAG_COMPARISON_OPERATOR_GT 11

Greater than.

RAG_COMPARISON_OPERATOR_LT 12

Less than.

RAG_COMPARISON_OPERATOR_GEQ 13

Greater than or equal.

RAG_COMPARISON_OPERATOR_LEQ 14

Less than or equal.

RagCrawlerAuthenticationExecutionType

NameNumberDescription
RAG_CRAWLER_AUTHENTICATION_EXECUTION_TYPE_UNSPECIFIED 0

Authentication execution type not specified.

RAG_CRAWLER_AUTHENTICATION_EXECUTION_TYPE_SERVER_SIDE 1

Authentication execution type is server side.

RAG_CRAWLER_AUTHENTICATION_EXECUTION_TYPE_CLIENT_SIDE 2

Authentication execution type is client side.

RagCrawlerCrawlStrategy

Crawl traversal strategy.

NameNumberDescription
RAG_CRAWLER_CRAWL_STRATEGY_UNSPECIFIED 0

Unspecified

RAG_CRAWLER_CRAWL_STRATEGY_BFS 1

Breadth-first traversal.

RAG_CRAWLER_CRAWL_STRATEGY_DFS 2

Depth-first traversal.

RAG_CRAWLER_CRAWL_STRATEGY_BEST_FIRST 3

Best-first traversal based on relevance scoring.

RagCrawlerMetaDataExtractorType

NameNumberDescription
RAG_CRAWLER_META_DATA_EXTRACTOR_TPYE_UNSPECIFIED 0

Unspecified.

RAG_CRAWLER_META_DATA_EXTRACTOR_TYPE_REGEX 1

Regex pattern.

RAG_CRAWLER_META_DATA_EXTRACTOR_TYPE_FIXED_VALUE 2

Fixed value.

RAG_CRAWLER_META_DATA_EXTRACTOR_TYPE_CSS_SELECTOR 3

CSS selector.

RAG_CRAWLER_META_DATA_EXTRACTOR_TYPE_XPATH_SELECTOR 4

XPath selector.

RAG_CRAWLER_META_DATA_EXTRACTOR_TYPE_ID_SELECTOR 5

ID selector.

RagCrawlerSelectorType

NameNumberDescription
RAG_CRAWLER_SELECTOR_TYPE_UNSPECIFIED 0

Unspecified.

RAG_CRAWLER_SELECTOR_TYPE_ID 1

ID selector.

RAG_CRAWLER_SELECTOR_TYPE_CSS_CLASS 2

CSS class selector.

RAG_CRAWLER_SELECTOR_TYPE_XPATH 3

XPath selector.

RagDocumentStatus

Document processing status.

NameNumberDescription
RAG_DOCUMENT_STATUS_UNSPECIFIED 0

Unspecified.

RAG_DOCUMENT_STATUS_UNSTART 1

Document has not started processing.

RAG_DOCUMENT_STATUS_RUNNING 2

Document is currently being processed.

RAG_DOCUMENT_STATUS_CANCEL 3

Document processing was cancelled.

RAG_DOCUMENT_STATUS_DONE 4

Document processing completed successfully.

RAG_DOCUMENT_STATUS_FAIL 5

Document processing failed.

RagDocumentType

Broad document category.

NameNumberDescription
RAG_DOCUMENT_TYPE_UNSPECIFIED 0

Unspecified.

RAG_DOCUMENT_TYPE_PDF 1

PDF

RAG_DOCUMENT_TYPE_DOC 2

general documents (e.g. text, slides, spreadsheets, code, ...)

RAG_DOCUMENT_TYPE_VISUAL 3

images and videos

RAG_DOCUMENT_TYPE_AURAL 4

audio

RAG_DOCUMENT_TYPE_VIRTUAL 5

empty virtual files

RAG_DOCUMENT_TYPE_FOLDER 6

folders

RAG_DOCUMENT_TYPE_OTHER 7

unrecognized document types

RagGraphRagMethod

Knowledge graph construction methods.

NameNumberDescription
RAG_GRAPH_RAG_METHOD_UNSPECIFIED 0

Unspecified. Defaults to RAG_GRAPH_RAG_METHOD_GENERAL

RAG_GRAPH_RAG_METHOD_LIGHT 1

Use prompts provided by LightRAG.

RAG_GRAPH_RAG_METHOD_GENERAL 2

Use prompts provided by GraphRAG.

RagLogic

Metadata conditions logical operators

NameNumberDescription
RAG_LOGIC_UNSPECIFIED 0

Unspecified. Must never be used.

RAG_LOGIC_AND 1

Return results that match all conditions.

RAG_LOGIC_OR 2

Return results that match any condition.

ondewo/nlu/server_statistics.proto

Top

Services

ServerStatistics

Server project statistics

Service Methods

GetProjectCount

rpc GetProjectCount (.google.protobuf.Empty) returns (StatResponse)
Returns the count of projects in the CAI server

GetUserProjectCount

rpc GetUserProjectCount (GetUserProjectCountRequest) returns (StatResponse)
Returns the count of projects of a user

GetUserCount

rpc GetUserCount (.google.protobuf.Empty) returns (StatResponse)
Returns the users count within a project

Methods with HTTP bindings

Method Name Method Pattern Body
GetProjectCount GET /projects:count
GetUserProjectCount GET /users/{user_identifier=*}/projects:count
GetUserCount GET /users:count
Messages

GetUserProjectCountRequest

Request to get user project count

FieldTypeLabelDescription
user_id string

Required. The ID of the User to count the projects from

ondewo/nlu/session.proto

Top

Services

Sessions

A session represents an interaction with a user. You retrieve user input and pass it to the DetectIntent (or StreamingDetectIntent) method to determine user intent and respond.

Service Methods

DetectIntent

rpc DetectIntent (DetectIntentRequest) returns (DetectIntentResponse)
Processes a natural language query and returns structured, actionable data as a result. This method is not idempotent, because it may cause contexts and session entity types to be updated, which in turn might affect results of future queries.

StreamingDetectIntent

rpc StreamingDetectIntent (stream StreamingDetectIntentRequest) returns (stream StreamingDetectIntentResponse)
Processes a natural language query in audio format in a streaming fashion and returns structured, actionable data as a result. This method is only available via the gRPC API (not REST).

ListSessions

rpc ListSessions (ListSessionsRequest) returns (ListSessionsResponse)
ListSessions: returns list of sessions from ondewo-kb; by default returns only session IDs

GetSession

rpc GetSession (GetSessionRequest) returns (Session)
GetSession: returns a session(=conversation) from ondewo-kb

CreateSession

rpc CreateSession (CreateSessionRequest) returns (Session)
CreateSession: creates and returns a session(=conversation) from ondewo-kb

CreateSessionStep

rpc CreateSessionStep (CreateSessionStepRequest) returns (SessionStep)
CreateSessionStep: creates a new session step for a session

GetSessionStep

rpc GetSessionStep (GetSessionStepRequest) returns (SessionStep)
GetSessionStep: gets an existing session step of a session

UpdateSessionStep

rpc UpdateSessionStep (UpdateSessionStepRequest) returns (SessionStep)
UpdateSessionStep: updates an existing session step in a session

DeleteSessionStep

rpc DeleteSessionStep (DeleteSessionStepRequest) returns (.google.protobuf.Empty)
DeleteSessionStep: deletes an existing session step from the session

DeleteSession

rpc DeleteSession (DeleteSessionRequest) returns (.google.protobuf.Empty)
DeleteSession: delete a session(=conversation) from ondewo-kb (for testing only)

ListSessionLabels

rpc ListSessionLabels (ListSessionLabelsRequest) returns (ListSessionLabelsResponse)
Returns the list of labels attached to a single session.

ListSessionLabelsOfAllSessions

rpc ListSessionLabelsOfAllSessions (ListSessionLabelsOfAllSessionsRequest) returns (ListSessionLabelsResponse)
Returns the distinct set of labels observed across all sessions of the agent, optionally narrowed by a SessionFilter.

ListLanguageCodesOfAllSessions

rpc ListLanguageCodesOfAllSessions (ListLanguageCodesOfAllSessionsRequest) returns (ListLanguageCodesResponse)
Returns the distinct set of language codes observed across all sessions of the agent, optionally narrowed by a SessionFilter.

ListMatchedIntentsOfAllSessions

rpc ListMatchedIntentsOfAllSessions (ListMatchedIntentsOfAllSessionsRequest) returns (ListMatchedIntentsResponse)
Returns the distinct set of intents matched across all sessions of the agent, optionally narrowed by a SessionFilter.

ListMatchedEntityTypesOfAllSessions

rpc ListMatchedEntityTypesOfAllSessions (ListMatchedEntityTypesOfAllSessionsRequest) returns (ListMatchedEntityTypesResponse)
Returns the distinct set of entity types recognised across all sessions of the agent, optionally narrowed by a SessionFilter.

ListUserIdsOfAllSessions

rpc ListUserIdsOfAllSessions (ListUserIdsOfAllSessionsRequest) returns (ListUserIdsResponse)
Returns the distinct set of user_id values observed across all sessions of the agent, optionally narrowed by a SessionFilter.

ListIdentifiedUserIdsOfAllSessions

rpc ListIdentifiedUserIdsOfAllSessions (ListIdentifiedUserIdsOfAllSessionsRequest) returns (ListIdentifiedUserIdsResponse)
Returns the distinct set of identified_user_id values observed across all sessions of the agent, optionally narrowed by a SessionFilter.

ListTagsOfAllSessions

rpc ListTagsOfAllSessions (ListTagsOfAllSessionsRequest) returns (ListTagsResponse)
Returns the distinct set of intent tags observed across all sessions of the agent, optionally narrowed by a SessionFilter.

ListInputContextsOfAllSessions

rpc ListInputContextsOfAllSessions (ListInputContextsOfAllSessionsRequest) returns (ListInputContextsResponse)
Returns the distinct set of input contexts observed across all sessions of the agent, optionally narrowed by a SessionFilter.

ListOutputContextsOfAllSessions

rpc ListOutputContextsOfAllSessions (ListOutputContextsOfAllSessionsRequest) returns (ListOutputContextsResponse)
Returns the distinct set of output contexts observed across all sessions of the agent, optionally narrowed by a SessionFilter.

ListPlatformsOfAllSessions

rpc ListPlatformsOfAllSessions (ListPlatformsOfAllSessionsRequest) returns (ListPlatformsResponse)
Returns the distinct set of Intent.Message.Platform values observed across all sessions of the agent, optionally narrowed by a SessionFilter.

ListAccountIdsOfAllSessions

rpc ListAccountIdsOfAllSessions (ListAccountIdsOfAllSessionsRequest) returns (ListAccountIdsResponse)
Returns the distinct set of account_id values observed across all sessions of the agent, optionally narrowed by a SessionFilter.

ListPropertyIdsOfAllSessions

rpc ListPropertyIdsOfAllSessions (ListPropertyIdsOfAllSessionsRequest) returns (ListPropertyIdsResponse)
Returns the distinct set of property_id values observed across all sessions of the agent, optionally narrowed by a SessionFilter.

ListDatastreamIdsOfAllSessions

rpc ListDatastreamIdsOfAllSessions (ListDatastreamIdsOfAllSessionsRequest) returns (ListDatastreamIdsResponse)
Returns the distinct set of datastream_id values observed across all sessions of the agent, optionally narrowed by a SessionFilter.

ListOriginIdsOfAllSessions

rpc ListOriginIdsOfAllSessions (ListOriginIdsOfAllSessionsRequest) returns (ListOriginIdsResponse)
Returns the distinct set of origin_id values observed across all sessions of the agent, optionally narrowed by a SessionFilter.

AddSessionLabels

rpc AddSessionLabels (AddSessionLabelsRequest) returns (Session)
Attaches the supplied labels to a session and returns the updated session.

DeleteSessionLabels

rpc DeleteSessionLabels (DeleteSessionLabelsRequest) returns (Session)
Removes the supplied labels from a session and returns the updated session.

AddSessionComment

rpc AddSessionComment (AddSessionCommentRequest) returns (Comment)
Appends a comment to a session and returns the persisted comment.

DeleteSessionComments

rpc DeleteSessionComments (DeleteSessionCommentsRequest) returns (Session)
Removes the comments named in the request from a session and returns the updated session.

UpdateSessionComments

rpc UpdateSessionComments (UpdateSessionCommentsRequest) returns (Session)
Updates an existing comment on a session and returns the updated session.

ListSessionComments

rpc ListSessionComments (ListSessionCommentsRequest) returns (ListSessionCommentsResponse)
Lists the comments attached to a session with pagination support.

ListSessionReviews

rpc ListSessionReviews (ListSessionReviewsRequest) returns (ListSessionReviewsResponse)
ListSessionReviews: returns list of session reviews from ondewo-kb; by default only returns session review IDs

GetSessionReview

rpc GetSessionReview (GetSessionReviewRequest) returns (SessionReview)
GetSessionReview: returns a session-review from ondewo-kb or computes the first review if none exists

GetLatestSessionReview

rpc GetLatestSessionReview (GetLatestSessionReviewRequest) returns (SessionReview)
GetLatestSessionReview: returns a session-review from ondewo-kb or computes the first review if none exists

CreateSessionReview

rpc CreateSessionReview (CreateSessionReviewRequest) returns (SessionReview)
CreateSessionReview: persist a session review in ondewo-kb as a side effect: also update training data in ondewo-cai

GetAudioFiles

rpc GetAudioFiles (GetAudioFilesRequest) returns (GetAudioFilesResponse)
RPC to get audio files based on specified criteria. Retrieves information about audio files associated with specific sessions. Returns a response containing details of the requested audio files.

AddAudioFiles

rpc AddAudioFiles (AddAudioFilesRequest) returns (AddAudioFilesResponse)
RPC to add audio files to a session. Adds new audio files to the specified session, providing details about each file. Returns a response containing information about the added audio files.

DeleteAudioFiles

rpc DeleteAudioFiles (DeleteAudioFilesRequest) returns (DeleteAudioFilesResponse)
RPC to delete specified audio files. Deletes audio files associated with specific sessions based on unique identifiers. Returns an empty response indicating the successful deletion of the specified audio files.

GetAudioFileOfSession

rpc GetAudioFileOfSession (GetAudioFileOfSessionRequest) returns (AudioFileResource)
RPC to get a consolidated audio file for a specific session. Retrieves a single audio file that combines all audio files associated with the specified session. Returns details of the consolidated audio file.

ListAudioFiles

rpc ListAudioFiles (ListAudioFilesRequest) returns (ListAudioFilesResponse)
RPC to get a list audio files for a specific session. Retrieves a single audio file that combines all audio files associated with the specified session.

Methods with HTTP bindings

Method Name Method Pattern Body
DetectIntent POST /v2/{session=projects/*/agent/sessions/*}:detectIntent *
ListSessions GET /v2/{parent=projects/*/agent}/sessions
GetSession GET /v2/{session_id=projects/*/agent/sessions/*}
CreateSession POST /v2/{parent=projects/*/agent}/sessions *
GetSessionStep POST /v2/{session_id=projects/*/agent/sessions/*}:getSessionStep *
UpdateSessionStep POST /v2/{session_id=projects/*/agent/sessions/*}:updateSessionStep *
DeleteSessionStep POST /v2/{session_id=projects/*/agent/sessions/*}:deleteSessionStep *
DeleteSession DELETE /v2/{session_id=projects/*/agent/sessions/*}
ListSessionLabels GET /v2/{session_id=projects/*/agent/sessions/*}/labels
ListSessionLabelsOfAllSessions GET /v2/{parent=projects/*/agent}/sessions/labels
ListLanguageCodesOfAllSessions GET /v2/{parent=projects/*/agent}/sessions/language_codes
ListMatchedIntentsOfAllSessions GET /v2/{parent=projects/*/agent}/sessions/matched_intents
ListMatchedEntityTypesOfAllSessions GET /v2/{parent=projects/*/agent}/sessions/matched_entity_types
ListUserIdsOfAllSessions GET /v2/{parent=projects/*/agent}/sessions/user_ids
ListIdentifiedUserIdsOfAllSessions GET /v2/{parent=projects/*/agent}/sessions/identified_user_ids
ListTagsOfAllSessions GET /v2/{parent=projects/*/agent}/sessions/tags
ListInputContextsOfAllSessions GET /v2/{parent=projects/*/agent}/sessions/input_contexts
ListOutputContextsOfAllSessions GET /v2/{parent=projects/*/agent}/sessions/output_contexts
ListPlatformsOfAllSessions GET /v2/{parent=projects/*/agent}/sessions/platforms
ListAccountIdsOfAllSessions GET /v2/{parent=projects/*/agent}/sessions/account_ids
ListPropertyIdsOfAllSessions GET /v2/{parent=projects/*/agent}/sessions/property_ids
ListDatastreamIdsOfAllSessions GET /v2/{parent=projects/*/agent}/sessions/datastream_ids
ListOriginIdsOfAllSessions GET /v2/{parent=projects/*/agent}/sessions/origin_ids
AddSessionLabels POST /v2/{session_id=projects/*/agent/sessions/*}/labels:add *
DeleteSessionLabels POST /v2/{session_id=projects/*/agent/sessions/*}/labels:delete *
AddSessionComment POST /v2/{session_id=projects/*/agent/sessions/*}/comments:add *
DeleteSessionComments POST /v2/{session_id=projects/*/agent/sessions/*}/comments:delete *
UpdateSessionComments POST /v2/{session_id=projects/*/agent/sessions/*}/comments:update *
ListSessionComments GET /v2/{session_id=projects/*/agent/sessions/*}/reviews
ListSessionReviews GET /v2/{session_id=projects/*/agent/sessions/*}/reviews
GetSessionReview GET /v2/{session_review_id=projects/*/agent/sessions/*/reviews/*}
GetLatestSessionReview GET /v2/{session_id=projects/*/agent/sessions/*}/reviews:getLatestSessionReview
CreateSessionReview POST /v2/{session_id=projects/*/agent/sessions/*}:createSessionReview *
Messages

AddAudioFilesRequest

This message is a request to add the audio files specified

FieldTypeLabelDescription
parent string

Required. The project of this agent. Format:

projects/<project_uuid>/agent

session_id string

The unique identifier of the session for which the audio files should be listed Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/<

audio_file_resources AudioFileResource repeated

AudioFileResources to be added

session_step_id string

The unique identifier of the session step for which the audio files should be listed Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/sessionsteps/<session_step_uuid>/<

AddAudioFilesResponse

This message is a request to add the audio files specified

FieldTypeLabelDescription
audio_file_resources AudioFileResource repeated

The unique identifier of the audio files for a specific session. Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/audios/<audio_uuid>

error_message string

error message if there are any.

AddSessionCommentRequest

This message is a request to add a comment to a session

FieldTypeLabelDescription
session_id string

The id of the session

comment Comment

The comment to add to the session

AddSessionLabelsRequest

This message is a request to add session labels

FieldTypeLabelDescription
session_id string

The id of the session

labels string repeated

The labels to add to the session

AudioFileResource

Represents an audio file resource attached to a session (input recording or generated TTS output).

FieldTypeLabelDescription
name string

The unique identifier of the audio file resource. Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/audios/<audio_uuid>

bytes bytes

Bytes of the audio file

language string

Language of the audio file

duration_in_s float

Duration in seconds and milliseconds of the audio file

sample_rate int32

sample rate of the audio

audio_file_resource_type AudioFileResourceType

File type of an audio resource

transcriptions S2tTranscription repeated

transcriptions of the user input sorted by score. A transcription can be from a speech-to-text system or a human

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

display_name string

Display name of the audio file, e.g., MyRecording.wav, or a user-assigned label.

ContextFilter

Message used to filter sessions based on contextual information

FieldTypeLabelDescription
context_name string

name of the context

key string

name of the key of the context parameter

value string

value of the parameter

operator ComparisonOperator

comparison operator to use for filtering

CreateSessionRequest

This message is a request to create a session

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

session_uuid string

The unique UUID of a Session Format: UUID Version 4, e.g. 2f59fad2-06bc-4730-9920-d3148f28f357 Optional. If not provided, it will be auto-generated

labels string repeated

Optional. labels for the session.

contexts Context repeated

Optional. The collection of contexts to be activated before this query is executed.

CreateSessionReviewRequest

Request to persist a session review for a given session.

As a side effect, training data in ondewo-cai may also be updated.

FieldTypeLabelDescription
session_id string

The unique identifier for the session under review Format:

projects/<project_uuid>/agent/sessions/<session_uuid>

parent_review_id string

Optional: The unique identifier of the parent review Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/reviews/<session_review_uuid>

session_review SessionReview

The reviews for all steps in the session

session_review_view SessionReview.View

Represents the options for views of a session_review. A session_review can be a sizable object. Therefore, we provide a resource view that does not return all data

CreateSessionStepRequest

Request to append a new SessionStep to an existing session.

FieldTypeLabelDescription
session_id string

The unique identifier of the parent session. Format:

projects/<project_uuid>/agent/sessions/<session_uuid>
.

session_step SessionStep

The session step to be added.

field_mask google.protobuf.FieldMask

Field mask specifying which fields the returned SessionStep should carry (e.g. only name, created_at).

DeleteAudioFilesRequest

This message is a request to the delete audio files specified

FieldTypeLabelDescription
parent string

Required. The project of this agent. Format:

projects/<project_uuid>/agent

names string repeated

The unique identifier of the audio file of the specific session Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/audios/<audio_uuid>

DeleteAudioFilesResponse

This message is a request to the delete audio files specified

FieldTypeLabelDescription
names string repeated

The unique identifier of the audio file of the specific session Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/audios/<audio_uuid>

error_message string

error message if there are any.

DeleteSessionCommentsRequest

This message is a request to delete a session comment

FieldTypeLabelDescription
session_id string

The id of the session

comment_names string repeated

The comment names to delete from the session

DeleteSessionLabelsRequest

This message is a request to delete session labels

FieldTypeLabelDescription
session_id string

The id of the session

labels string repeated

The labels to delete from the session

DeleteSessionRequest

This message is a request to delete a session

FieldTypeLabelDescription
session_id string

Required. The session to be deleted Format:

projects/<project_uuid>/agent/sessions/<session_uuid>

DeleteSessionStepRequest

This message is a request to delete a session step of a session

FieldTypeLabelDescription
name string

The unique identifier for the given session step Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/sessionsteps/<session_step_uuid>
.

DetectIntentRequest

The request to detect user's intent.

FieldTypeLabelDescription
session string

Required. The name of the session this query is sent to. Format: projects/<project_uuid>/agent/sessions/<session_uuid>. It's up to the API caller to choose an appropriate session ID. It can be a random number or some type of user identifier (preferably hashed). The length of the session ID must not exceed 36 bytes.

query_params QueryParameters

Optional. The parameters of this query.

query_input QueryInput

Required. The input specification. It can be set to:

  1. an audio config which instructs the speech recognizer how to process the speech audio,
  2. a conversational query in the form of text, or
  3. an event that specifies which intent to trigger.

input_audio bytes

Optional. The natural language speech audio to be processed. This field should be populated iff query_input is set to an input audio config. A single request can contain up to 1 minute of speech audio data.

DetectIntentResponse

The message returned from the DetectIntent method.

FieldTypeLabelDescription
response_id string

The unique identifier of the response. It can be used to locate a response in the training example set or for reporting issues.

query_result QueryResult

The results of the conversational query or event processing.

webhook_status google.rpc.Status

Specifies the status of the webhook request. webhook_status is never populated in webhook requests.

llm_telemetry_report LlmTelemetryReport

Aggregated LLM telemetry — duplicated convenience copy of query_result.llm_telemetry_report for unary clients.

DetectedIntent

This message contains a detected intent

FieldTypeLabelDescription
intent Intent

intent

score float

score of intent detection

algorithm string

intent detection algorithm

fulfillment_messages Intent.Message repeated

collection of rich messages to present to the user This field is set only for the first detected intent. For the rest of the intents the messages are not resolved and the raw messages for the current language code are available in self.intent.messages

required_param_missing bool

This field is set to:

  • true if the matched intent has required parameters and not all of the required parameter values have been collected.
  • false if all required parameter values have been collected, or if the matched intent doesn't contain any required parameters.

DocumentFileResource

Represents a document file resource (e.g., text, markdown, PDF, DOCX).

FieldTypeLabelDescription
name string

The unique identifier for the document file resource. Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/documents/<document_uuid>

display_name string

The display name of the document file, which can be the file name (e.g., "report.pdf") or a user-assigned name.

bytes bytes

The raw bytes of the document file (e.g., PDF, DOCX, TXT).

created_at google.protobuf.Timestamp

Creation date and time of the document file. This is a read-only field.

modified_at google.protobuf.Timestamp

The last modification date and time of the document file. This is a read-only field.

created_by string

The UUID of the user who created the document file.

modified_by string

The UUID of the user who last modified the document file.

EventInput

Events allow for matching intents by event name instead of the natural language input.

For instance, input <event: { name: "welcome_event", parameters: { name: "Sam" } }> can trigger a personalized welcome response.

The parameter name may be used by the agent in the response: "Hello #welcome_event.name! What can I do for you today?".

FieldTypeLabelDescription
name string

Required. The unique identifier of the event.

parameters google.protobuf.Struct

Optional. The collection of parameters associated with the event.

language_code string

Required. The language of this query. See Language Support for a list of the currently supported language codes. Note that queries in the same session do not necessarily need to specify the same language.

FileResource

Represents a file resource that can either be an image, audio, document, or video file.

FieldTypeLabelDescription
document_file_resource DocumentFileResource

Document file resource (e.g., markdown, text, word, powerpoint, pdf, excel etc.).

audio_file_resource AudioFileResource

An audio file resource, such as a recording or sound file.

image_file_resource ImageFileResource

An image file resource, such as a JPEG, PNG, etc.

video_file_resource VideoFileResource

A video file resource, such as an MP4 or AVI file.

GetAudioFileOfSessionRequest

This message is a request to get one one file combining all audios of a specific session

FieldTypeLabelDescription
parent string

Required. The project of this agent. Format:

projects/<project_uuid>/agent

session_id string

The unique identifier of the session for which the audio files should be combined Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/<

resource_view ResourceView

Represents the options for views of resources

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

GetAudioFilesRequest

This message is a request to get audio files specified

FieldTypeLabelDescription
parent string

Required. The project of this agent. Format:

projects/<project_uuid>/agent

names string repeated

The unique identifier of the audio file of the specific session Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/audios/<audio_uuid>

resource_view ResourceView

Represents the options for views of resources

page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

sorting_mode SortingMode

sorting mode

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

GetAudioFilesResponse

This message is a request to retrieve the audio files specified

FieldTypeLabelDescription
audio_files AudioFileResource repeated

The unique identifier of the audio file for a specific session. Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/audios/<audio_uuid>

error_message string

error message if there are any.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

GetLatestSessionReviewRequest

This message is a request to get latest session review

FieldTypeLabelDescription
session_id string

The unique identifier of the session for which the latest review should be returned Format:

projects/<project_uuid>/agent/sessions/<session_uuid>

session_review_view SessionReview.View

An enum specifying the amount of information to be returned for the desired session review

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

GetSessionRequest

This message is a request to get a session

FieldTypeLabelDescription
session_id string

The session to be returned Format:

projects/<project_uuid>/agent/sessions/<session_uuid>

session_view Session.View

whether to return a full or sparse view; if unspecified full view is returned

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data. Example: path=["session_info.duration_in_s_min"]

GetSessionReviewRequest

This message is a request to get session review

FieldTypeLabelDescription
session_review_id string

The unique identifier of the session review to be returned

session_review_view SessionReview.View

The view of the session review to be returned

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

GetSessionStepRequest

This message is a request to get a session step

FieldTypeLabelDescription
name string

The unique identifier for the given session step Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/sessionsteps/<session_step_uuid> 

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data. Example: path=["session_step.detect_intent_response.query_result.fulfillment_messages"]

ImageFileResource

Represents an image file resource (e.g., JPEG, PNG, GIF) attached to a session.

FieldTypeLabelDescription
name string

The unique identifier of the image file resource. Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/images/<image_uuid>

display_name string

File name of the image, e.g., MyPicture.jpg, or a user assigned display name

bytes bytes

Raw bytes of the image file.

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

InputAudioConfig

Instructs the speech recognizer how to process the audio content.

FieldTypeLabelDescription
audio_encoding AudioEncoding

Required. Audio encoding of the audio content to process.

sample_rate_hertz int32

Required. Sample rate (in Hertz) of the audio content sent in the query. Refer to Cloud Speech API documentation for more details.

language_code string

Required. The language of the supplied audio. Dialogflow does not do translations. See Language Support for a list of the currently supported language codes. Note that queries in the same session do not necessarily need to specify the same language.

phrase_hints string repeated

Optional. The collection of phrase hints which are used to boost accuracy of speech recognition. Refer to Cloud Speech API documentation for more details.

ListAccountIdsOfAllSessionsRequest

request to list all account_ids of all sessions

FieldTypeLabelDescription
parent string

The parent for which the account_ids for all sessions should be listed Format:

projects/<project_uuid>/agent

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListAccountIdsResponse

This message is a response of listing session account_ids

FieldTypeLabelDescription
account_ids string repeated

The account_ids of the session

ListAudioFilesRequest

This message is a request to list all available audio files of a session

FieldTypeLabelDescription
parent string

Required. The project of this agent. Format:

projects/<project_uuid>/agent

session_id string

Optional: The unique identifier of the session for which the audio files should be listed Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/<

resource_view ResourceView

Represents the options for views of resources

page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

sorting_mode SortingMode

sorting mode

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListAudioFilesResponse

This message is a request to retrieve the audio files specified

FieldTypeLabelDescription
audio_files AudioFileResource repeated

The requested audio files . Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/audios/<audio_uuid>

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

error_message string

error message if there are any.

ListDatastreamIdsOfAllSessionsRequest

request to list all datastream_ids of all sessions

FieldTypeLabelDescription
parent string

The parent for which the datastream_ids for all sessions should be listed Format:

projects/<project_uuid>/agent

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

ListDatastreamIdsResponse

This message is a response of listing session datastream_ids

FieldTypeLabelDescription
datastream_ids string repeated

The datastream_ids of the session

ListIdentifiedUserIdsOfAllSessionsRequest

request to list all identified_user_ids of all sessions

FieldTypeLabelDescription
parent string

The parent for which the identified_user_ids for all sessions should be listed Format:

projects/<project_uuid>/agent

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListIdentifiedUserIdsResponse

This message is a response of listing session identified_user_ids

FieldTypeLabelDescription
identified_user_ids string repeated

The identified_user_ids of the session

ListInputContextsOfAllSessionsRequest

request to list all input_contexts of all sessions

FieldTypeLabelDescription
parent string

The parent for which the input_contexts for all sessions should be listed Format:

projects/<project_uuid>/agent

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListInputContextsResponse

This message is a response of listing session input_contexts

FieldTypeLabelDescription
input_contexts string repeated

The input_contexts ids of the session

ListLanguageCodesOfAllSessionsRequest

request to list all language codes of all sessions

FieldTypeLabelDescription
parent string

The parent for which the language_codes for all sessions should be listed Format:

projects/<project_uuid>/agent

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListLanguageCodesResponse

This message is a response of listing session language_codes

FieldTypeLabelDescription
language_codes string repeated

The language_codes of the session

ListMatchedEntityTypesOfAllSessionsRequest

request to list all matched_entity_types of all sessions

FieldTypeLabelDescription
parent string

The parent for which the matched_entity_types for all sessions should be listed Format:

projects/<project_uuid>/agent

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListMatchedEntityTypesResponse

This message is a response of listing session matched_entity_types

FieldTypeLabelDescription
matched_entity_types string repeated

The matched_entity_types of the session

ListMatchedIntentsOfAllSessionsRequest

request to list all matched_intents of all sessions

FieldTypeLabelDescription
parent string

The parent for which the matched_intents for all sessions should be listed Format:

projects/<project_uuid>/agent

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListMatchedIntentsResponse

This message is a response of listing session matched_intents

FieldTypeLabelDescription
matched_intents string repeated

The matched_intents of the session

ListOriginIdsOfAllSessionsRequest

request to list all origin_ids of all sessions

FieldTypeLabelDescription
parent string

The parent for which the origin_ids for all sessions should be listed Format:

projects/<project_uuid>/agent

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListOriginIdsResponse

This message is a response of listing session origin_ids

FieldTypeLabelDescription
origin_ids string repeated

The origin_ids of the session

ListOutputContextsOfAllSessionsRequest

request to list all output_contexts of all sessions

FieldTypeLabelDescription
parent string

The parent for which the output_contexts for all sessions should be listed Format:

projects/<project_uuid>/agent

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListOutputContextsResponse

This message is a response of listing session output_contexts

FieldTypeLabelDescription
output_contexts string repeated

The output_contexts ids of the session

ListPlatformsOfAllSessionsRequest

request to list all labels of all sessions

FieldTypeLabelDescription
parent string

The parent for which the platforms for all sessions should be listed Format:

projects/<project_uuid>/agent

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListPlatformsResponse

This message is a response of listing session platforms

FieldTypeLabelDescription
platforms string repeated

The platforms of the session

ListPropertyIdsOfAllSessionsRequest

request to list all property_ids of all sessions

FieldTypeLabelDescription
parent string

The parent for which the property_ids for all sessions should be listed Format:

projects/<project_uuid>/agent

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

ListPropertyIdsResponse

This message is a response of listing session property_ids

FieldTypeLabelDescription
property_ids string repeated

The property_ids of the session

ListSessionCommentsRequest

This message is a request to list comments of a session

FieldTypeLabelDescription
session_id string

The unique identifier for the session for which reviews should be listed Format:

projects/<project_uuid>/agent/sessions/<session_uuid>

page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListSessionCommentsResponse

This message is a request to list comments of a session

FieldTypeLabelDescription
comment Comment repeated

The comments of a specific session Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/comments/<comment_uuid>

page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

ListSessionLabelsOfAllSessionsRequest

request to list all labels of all sessions

FieldTypeLabelDescription
parent string

The parent for which the labels for all sessions should be listed Format:

projects/<project_uuid>/agent

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListSessionLabelsRequest

This message is a request to list session labels

FieldTypeLabelDescription
session_id string

The id of the session

ListSessionLabelsResponse

This message is a response of listing session labels

FieldTypeLabelDescription
labels string repeated

The labels of the session

ListSessionReviewsRequest

This message is a request to list session reviews

FieldTypeLabelDescription
session_id string

The unique identifier for the session for which reviews should be listed Format:

projects/<project_uuid>/agent/sessions/<session_uuid>

session_review_view SessionReview.View

An enum specifying the amount of information to be returned per session review

page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

ListSessionReviewsResponse

This message is a response of listing session reviews

FieldTypeLabelDescription
session_reviews SessionReview repeated

The requested session reviews

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

ListSessionsRequest

This message is a request to list sessions

FieldTypeLabelDescription
parent string

Required. The project that the agent to fetch is associated with. Format:

projects/<project_uuid>/agents

session_view Session.View

An enum specifying the amount of information to be returned per session

page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data. Example: path=["session_info.duration_in_s_min"]

ListSessionsResponse

This message is a response including the listing of sessions

FieldTypeLabelDescription
sessions Session repeated

The requested sessions

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

ListTagsOfAllSessionsRequest

request to list all tags of all sessions

FieldTypeLabelDescription
parent string

The parent for which the tags for all sessions should be listed Format:

projects/<project_uuid>/agent

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListTagsResponse

This message is a response of listing session tags

FieldTypeLabelDescription
tags string repeated

The tags of the session

ListUserIdsOfAllSessionsRequest

request to list all user_ids of all sessions

FieldTypeLabelDescription
parent string

The parent for which the user_ids for all sessions should be listed Format:

projects/<project_uuid>/agent

session_filter SessionFilter

Optional. A filter to narrow the response down to sessions of interest.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListUserIdsResponse

This message is a response of listing session user_ids

FieldTypeLabelDescription
user_ids string repeated

The user_ids of the session

LlmAgentUsage

Per-intent-agent usage rollup across the scope.

FieldTypeLabelDescription
agent_name string

intent_agent executor / agent name owning the calls.

agent_role string

Optional agent role.

team_name string

Optional team name.

call_count int64

Number of LLM calls attributed to this agent in scope.

llm_token_usage LlmTokenUsage

Summed token usage for this agent.

tool_call_count int64

Tool-call count attributed to this agent.

LlmCacheStats

Prompt-cache efficiency aggregate across the LLM calls in scope.

FieldTypeLabelDescription
cached_input_tokens int64

Tokens served from prompt cache (cached_input_tokens summed).

cache_creation_input_tokens int64

Tokens written to prompt cache (cache_creation_input_tokens summed).

uncached_input_tokens int64

Non-cached input tokens.

cache_hit_rate double

cached_input_tokens / (cached_input_tokens + uncached_input_tokens).

token_savings int64

Input tokens avoided by cache reuse.

LlmCallFinishedEvent

Emitted on a streaming DetectIntent when an LLM invocation finishes.

FieldTypeLabelDescription
llm_call_id string

Collector-assigned id grouping events for this LLM call.

end_time google.protobuf.Timestamp

Wall-clock end time of the LLM call.

duration_in_s double

Convenience duration (end_time - start_time).

llm_token_usage LlmTokenUsage

Final token totals for this LLM call.

LlmCallStartedEvent

Emitted on a streaming DetectIntent when an LLM invocation starts.

FieldTypeLabelDescription
llm_call_id string

Collector-assigned id grouping all events emitted for this LLM call.

provider string

Provider tag: "autogen" | "langchain" | "openai" | "anthropic" | ...

model_name string

Concrete model identifier (e.g. "claude-3-5-sonnet-20241022").

agent_name string

intent_agent executor / agent name owning the call.

start_time google.protobuf.Timestamp

Wall-clock start of the LLM call.

LlmCcaiServiceUsage

Per-CCAI-service usage rollup across the scope.

FieldTypeLabelDescription
ccai_service_provider CcaiServiceProvider

CCAI service provider enum value.

ccai_service_name string

Resource name of the CCAI service.

call_count int64

Number of LLM calls attributed to this CCAI service in scope.

llm_token_usage LlmTokenUsage

Summed token usage for this CCAI service.

base_url string

Base URL used by this CCAI service.

model_names string repeated

Distinct model names seen under this CCAI service.

LlmErrorStat

One error class aggregate.

FieldTypeLabelDescription
error_class string

Error class / type (LlmTelemetry.error_class).

count int64

Number of occurrences in scope.

rate double

count / total LLM calls in scope.

sample_message string

A representative error_message sample (may be truncated / redacted).

LlmErrorStats

Error breakdown aggregate across the scope.

FieldTypeLabelDescription
total_error_count int64

Total failed LLM calls in scope.

overall_error_rate double

total_error_count / total LLM calls in scope.

errors_by_class LlmErrorStat repeated

Per-error-class breakdown, descending by count.

retry_count_total int64

Total retries observed (LlmTelemetry.retry_count summed).

max_fallback_depth int32

Max fallback depth observed (LlmTelemetry.fallback_depth max).

LlmFinishReasonStat

One finish-reason aggregate.

FieldTypeLabelDescription
finish_reason string

Finish reason ("stop" | "length" | "tool_calls" | "content_filter" | "error" | ...).

count int64

Number of occurrences in scope.

rate double

count / total LLM calls in scope.

LlmLatencyStats

Latency aggregate (seconds) across the LLM calls in scope.

FieldTypeLabelDescription
call_count int64

Number of LLM calls included in these latency stats.

mean_duration_seconds double

Mean end-to-end call duration in seconds.

p50_duration_seconds double

50th percentile end-to-end call duration in seconds.

p95_duration_seconds double

95th percentile end-to-end call duration in seconds.

p99_duration_seconds double

99th percentile end-to-end call duration in seconds.

max_duration_seconds double

Maximum observed end-to-end call duration in seconds.

mean_first_token_latency_seconds double

Mean time-to-first-token in seconds (streaming calls only).

p95_first_token_latency_seconds double

95th percentile time-to-first-token in seconds.

LlmModelUsage

Per-model usage rollup across the scope.

FieldTypeLabelDescription
model_name string

Concrete model identifier (e.g. "claude-3-5-sonnet-20241022").

provider string

Provider tag owning the model (e.g. "anthropic").

call_count int64

Number of LLM calls to this model in scope.

llm_token_usage LlmTokenUsage

Summed token usage (input / output / total) for this model.

tool_call_count int64

Tool-call count attributed to this model.

error_count int64

Error count attributed to this model.

duration_seconds_total double

Summed call duration in seconds for this model.

cache_stats LlmCacheStats

Optional cache stats for this model.

ccai_service_name string

Resource name of the CCAI service that issued the calls.

ccai_service_provider CcaiServiceProvider

Provider of the CCAI service.

base_url string

Base URL used for the calls (proxy / compatible provider).

thinking_tokens_total int64

Summed thinking-block tokens for this model.

thinking_duration_seconds_total double

Summed thinking-block duration in seconds for this model.

tool_call_tokens_total int64

Summed tool-call tokens for this model.

tool_call_duration_seconds_total double

Summed tool-call duration in seconds for this model.

LlmProviderUsage

Per-provider usage rollup across the scope.

FieldTypeLabelDescription
provider string

Provider tag (e.g. "anthropic", "openai", "ollama").

call_count int64

Number of LLM calls to this provider in scope.

llm_token_usage LlmTokenUsage

Summed token usage for this provider.

error_count int64

Error count attributed to this provider.

duration_seconds_total double

Summed call duration in seconds for this provider.

model_names string repeated

Distinct model names seen under this provider.

LlmReasoningEffortStat

One reasoning-effort aggregate.

FieldTypeLabelDescription
reasoning_effort ReasoningEffort

Reasoning effort enum value.

count int64

Number of LLM calls at this effort level in scope.

rate double

count / total LLM calls in scope.

llm_token_usage LlmTokenUsage

Summed token usage at this effort level.

LlmTelemetry

Telemetry for a single LLM invocation inside one DetectIntent turn.

FieldTypeLabelDescription
provider string

Provider tag: "autogen" | "langchain" | "openai" | "anthropic" | ...

model_name string

Concrete model identifier (e.g. "Qwen/Qwen3.6-27b-fp8").

agent_name string

intent_agent executor / agent name.

llm_token_usage LlmTokenUsage

Totals for this call.

llm_tool_call_metadatas LlmToolCallMetadata repeated

Tool calls observed during this LLM invocation.

tool_call_count int32

Denormalized len(llm_tool_call_metadatas).

llm_thinking_metadata LlmThinkingMetadata

Thinking block when surfaced by the model.

start_time google.protobuf.Timestamp

Wall-clock start of the LLM call.

end_time google.protobuf.Timestamp

Wall-clock end of the LLM call.

duration_in_s double

Convenience duration (end_time - start_time).

run_id string

LangChain / LangSmith run identifier for this LLM call (UUID).

parent_run_id string

LangChain / LangSmith identifier of the parent run that spawned this call, forming the LangSmith run tree.

run_type string

LangSmith run taxonomy: chain | llm | tool | retriever | agent | parser | prompt.

component_name string

Serialized component name from LangChain callbacks (e.g. "ChatOpenAI").

tags string repeated

Tags propagated via RunnableConfig.

metadata google.protobuf.Struct

Free-form metadata propagated via RunnableConfig.

inputs google.protobuf.Struct

Redaction-aware snapshot of inputs at the run boundary.

outputs google.protobuf.Struct

Redaction-aware snapshot of outputs at the run boundary.

error_class string

Exception class name when the LLM call failed; empty on success.

error_message string

Exception message text when the LLM call failed; empty on success.

traceback string

Formatted stack trace when the LLM call failed; empty on success.

streaming_chunk_count int32

Streaming chunk count observed during the call.

first_token_latency_seconds double

Time-to-first-token (start_time -> first chunk).

system_fingerprint string

OpenAI system_fingerprint when available.

cached bool

Whether the result was served from a client-side cache.

retry_count int32

Retry count for the underlying provider call.

fallback_depth int32

Index inside a with_fallbacks([...]) chain when the call succeeded.

temperature double

Sampling temperature requested for the LLM call (request kwargs).

top_p double

Top-p (nucleus sampling) parameter requested for the LLM call.

max_tokens int32

Maximum number of tokens the model was allowed to produce.

n_generations int32

Number of generations the model was asked to return (n in OpenAI API).

finish_reasons string repeated

One finish reason per generation (e.g. stop, length, tool_calls, content_filter).

cached_input_tokens int32

Number of input tokens served from the provider-side prompt cache (Anthropic cache_read_input_tokens).

cache_creation_input_tokens int32

Number of input tokens written to the provider-side prompt cache (Anthropic cache_creation_input_tokens).

langsmith_run_url string

LangSmith run URL for direct click-through when LangSmith tracing is active.

team_name string

Autogen team display name owning the call.

team_id string

Autogen team identifier (UUID).

agent_role string

Autogen agent role tag (user_proxy | assistant | tool_executor | reflection).

sender_agent string

Name of the autogen agent that produced the message.

recipient_agent string

Name of the autogen agent that received the message.

turn_index int32

Zero-based position of this LLM call inside the autogen run_stream() sequence.

reflection_iterations int32

Number of reflection loops executed in robust_assistant_agent for this call.

termination_reason string

Autogen TaskResult.stop_reason string when surfaced.

evaluator_runs_join_key string

Join key linking this LLM call to an evaluator run (see llm_evaluation.proto).

llm_evaluation_feedbacks LlmEvaluationFeedback repeated

Immediate inline feedback recorded inside the turn (e.g. self-grading by a reflection agent). Each entry is a single LlmEvaluationFeedback record.

ccai_service_name string

Resource name of the CCAI service that issued this LLM call.

base_url string

The base URL for the OpenAI API. Overrides the default endpoint, useful for proxies or compatible third-party providers.

default_headers google.protobuf.Struct optional

Optional. Default HTTP headers to include with every request to the OpenAI API.

default_query google.protobuf.Struct optional

Optional. Default query parameters to append to every request URL sent to the OpenAI API. Values can be of any type (string, number, boolean, list), hence the use of Struct.

frequency_penalty float optional

Optional. A number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the likelihood of the model repeating the same line verbatim.

openai_metadata google.protobuf.Struct optional

Optional. Developer-defined tags and values used for filtering completions in the OpenAI dashboard.

presence_penalty float optional

Optional. A number between -2.0 and 2.0. Positive values penalize new tokens based on whether they have already appeared in the text, increasing the likelihood of the model discussing new topics.

reasoning_effort ReasoningEffort optional

Optional. Constrains the effort level for reasoning models (e.g. o1, o3). Controls the trade-off between speed and quality.

user string optional

Optional. A unique identifier representing the end-user, which helps OpenAI monitor and detect abuse.

timeout float optional

Optional. The timeout in seconds for requests to the OpenAI API. Applies to the entire request lifecycle including connection, sending, and receiving.

strict_response_validation bool optional

Optional. If true, enables strict validation of response payloads returned by the OpenAI API.

extra_headers google.protobuf.Struct optional

Optional. Additional HTTP headers to send with the request. These are merged with and override default_headers for this specific request only.

extra_query google.protobuf.Struct optional

Optional. Additional query parameters to send with the request. These are merged with and override default_query for this specific request only.

extra_body google.protobuf.Struct optional

Optional. Additional JSON properties to include in the request body. Useful for accessing new or undocumented API parameters.

ccai_service_provider CcaiServiceProvider

Provider of the ccai service

LlmTelemetryReport

Aggregated telemetry across all LLM calls in one DetectIntent turn, or across

a session / agent-domain scope when used as a statistics report payload. The

breakdown fields (6+) are populated only for the matching report type; a

*_LLM_TOTAL_STATISTICS report populates all of them.

FieldTypeLabelDescription
llm_token_usage LlmTokenUsage

Summed LlmTokenUsage across llm_telemetries.

tool_call_count_total int32

Sum of LlmTelemetry.tool_call_count across llm_telemetries.

llm_call_count int32

Denormalized len(llm_telemetries).

llm_telemetries LlmTelemetry repeated

Per-LLM-invocation breakdown.

duration_seconds_total double

Sum of LlmTelemetry.duration_in_s across llm_telemetries.

models_used LlmModelUsage repeated

Per-model usage rollup. Populated for *_LLM_MODELS_USED and *_LLM_TOTAL_STATISTICS.

providers_used LlmProviderUsage repeated

Per-provider usage rollup. Populated for *_LLM_PROVIDERS_USED and *_LLM_TOTAL_STATISTICS.

ccai_services_used LlmCcaiServiceUsage repeated

Per-CCAI-service usage rollup. Populated for *_LLM_CCAI_SERVICES_USED and *_LLM_TOTAL_STATISTICS.

agents_used LlmAgentUsage repeated

Per-intent-agent usage rollup. Populated for *_LLM_AGENTS_USED and *_LLM_TOTAL_STATISTICS.

tools_used LlmToolUsage repeated

Tool-usage rollup. Populated for *_LLM_TOP_X_TOOLS / *_LLM_LEAST_X_TOOLS and *_LLM_TOTAL_STATISTICS.

latency_stats LlmLatencyStats

Latency aggregate. Populated for *_LLM_LATENCY and *_LLM_TOTAL_STATISTICS.

cache_stats LlmCacheStats

Cache efficiency aggregate. Populated for *_LLM_CACHE_EFFICIENCY and *_LLM_TOTAL_STATISTICS.

error_stats LlmErrorStats

Error aggregate. Populated for *_LLM_ERRORS and *_LLM_TOTAL_STATISTICS.

finish_reason_distribution LlmFinishReasonStat repeated

Finish-reason distribution. Populated for *_LLM_FINISH_REASONS and *_LLM_TOTAL_STATISTICS.

reasoning_effort_distribution LlmReasoningEffortStat repeated

Reasoning-effort distribution. Populated for *_LLM_REASONING_EFFORT and *_LLM_TOTAL_STATISTICS.

thinking_tokens_total int64

Scope-wide summed thinking-block tokens.

thinking_duration_seconds_total double

Scope-wide summed thinking-block duration in seconds.

tool_call_tokens_total int64

Scope-wide summed tool-call tokens.

tool_call_duration_seconds_total double

Scope-wide summed tool-call duration in seconds.

LlmThinkingDeltaEvent

Emitted on a streaming DetectIntent for each thinking-delta chunk.

FieldTypeLabelDescription
llm_call_id string

Groups events under an LlmTelemetry entry.

text_delta string

Incremental thinking text chunk (subject to redaction policy on the client).

timestamp google.protobuf.Timestamp

Wall-clock timestamp of the chunk.

LlmThinkingMetadata

Thinking / reasoning block emitted by the model (e.g. Anthropic extended thinking,

OpenAI o-series reasoning).

FieldTypeLabelDescription
llm_token_usage LlmTokenUsage

Token attribution for the thinking block when surfaced by the provider.

start_time google.protobuf.Timestamp

Wall-clock start of the thinking block.

end_time google.protobuf.Timestamp

Wall-clock end of the thinking block.

duration_in_s double

Convenience duration (end_time - start_time).

thinking_text string

Raw thinking text. Subject to redaction depending on telemetry policy.

LlmTokenUsage

Token usage counters for a single LLM call (or aggregate).

FieldTypeLabelDescription
total_tokens int64

Sum of input and output tokens for this call (or aggregate across calls).

input_tokens int64

Number of prompt / input tokens consumed.

output_tokens int64

Number of completion / output tokens produced.

LlmTokenUsageUpdateEvent

Emitted on a streaming DetectIntent when running token counts update.

FieldTypeLabelDescription
llm_call_id string

Groups events under an LlmTelemetry entry.

llm_token_usage LlmTokenUsage

Running totals for that llm_call.

LlmToolCallFinishedEvent

Emitted on a streaming DetectIntent when a tool call finishes.

FieldTypeLabelDescription
tool_call_id string

Stable id matching the matching LlmToolCallStartedEvent.

end_time google.protobuf.Timestamp

Wall-clock end time of the tool call.

duration_in_s double

Convenience duration (end_time - start_time).

llm_token_usage LlmTokenUsage

Token attribution for this tool call when available.

result google.protobuf.Struct

Tool result payload (may be omitted on failure or redaction).

error_message string

Populated only when the tool call failed; empty string on success.

llm_call_id string

Groups events under an LlmTelemetry entry.

LlmToolCallMetadata

Metadata for one tool call executed by the LLM.

FieldTypeLabelDescription
tool_call_id string

Stable id assigned by the upstream framework (autogen / langchain).

tool_name string

Name of the tool / function invoked.

start_time google.protobuf.Timestamp

Wall-clock start time of the tool call.

end_time google.protobuf.Timestamp

Wall-clock end time of the tool call.

duration_in_s double

Convenience duration (end_time - start_time).

llm_token_usage LlmTokenUsage

Token attribution for this tool call when available.

arguments google.protobuf.Struct

Tool arguments as a structured payload. May be omitted on incremental events.

result google.protobuf.Struct

Tool result as a structured payload. May be omitted on incremental events.

error_message string

Populated only when the tool call failed; empty string on success.

LlmToolCallStartedEvent

Emitted on a streaming DetectIntent when a tool call starts.

FieldTypeLabelDescription
tool_call_id string

Stable id assigned by the upstream framework (autogen / langchain).

tool_name string

Name of the tool / function invoked.

arguments google.protobuf.Struct

Tool arguments as a structured payload (Struct kept as-is; not a custom Message).

start_time google.protobuf.Timestamp

Wall-clock start time of the tool call.

llm_call_id string

Groups events under an LlmTelemetry entry.

LlmToolUsage

One tool's invocation aggregate across the scope.

FieldTypeLabelDescription
tool_name string

Name of the tool / function.

call_count int64

Number of times the tool was invoked in scope.

error_count int64

Number of failed invocations.

error_rate double

error_count / call_count.

duration_seconds_total double

Summed tool-call duration in seconds.

mean_duration_seconds double

Mean tool-call duration in seconds.

llm_token_usage LlmTokenUsage

Summed tool-call token usage (input / output / total).

QueryInput

Represents the query input. It can contain either:

1. An audio config which instructs the speech recognizer how to process the speech audio.

2. A conversational query in the form of text,.

3. An event that specifies which intent to trigger.

FieldTypeLabelDescription
audio_config InputAudioConfig

Instructs the speech recognizer how to process the speech audio.

text TextInput

The natural language text to be processed.

event EventInput

The event to be processed.

file_resources FileResource repeated

Files as input for the detect intent request, e.g., image, document, audio, video etc.

QueryParameters

Represents the parameters of the conversational query.

FieldTypeLabelDescription
time_zone string

Optional. The time zone of this conversational query from the time zone database, e.g., America/New_York, Europe/Paris. If not provided, the time zone specified in agent settings is used.

geo_location google.type.LatLng

Optional. The geo location of this conversational query.

contexts Context repeated

Optional. The collection of contexts to be activated before this query is executed.

reset_contexts bool

Optional. Specifies whether to delete all contexts in the current session before the new ones are activated.

payload google.protobuf.Struct

Optional. This field can be used to pass custom data into the webhook associated with the agent. Following key:value pairs are supported in the JSON objects: key: language

language=LanguageCode.de.value
key: timestamp
timestamp=time.time() # float python timestamp in seconds since epoch 
key: source
source='https://ondewo.com'
key: configuration
configuration='config_example_123'
key: single_intent_algorithm
single_intent_algorithm='IntentClassifierType.OndewoIntentAgent'
=> allowed other values for single_intent_algorithm:
 IntentClassifierType.DefaultFallBackAlgorithm
 IntentClassifierType.DeviationEndingDetection
 IntentClassifierType.IntentExitDetector
 IntentClassifierType.OndewoIntentAgent
 IntentClassifierType.OndewoIntentBertClassifier
 IntentClassifierType.OndewoIntentExactContextDetector
 IntentClassifierType.OndewoIntentExactMatch
 IntentClassifierType.OndewoIntentExitDetector
 IntentClassifierType.OndewoIntentLogisticRegression
 IntentClassifierType.OndewoIntentMetaClassifier
 IntentClassifierType.OndewoIntentNamedExactMatch
 IntentClassifierType.OndewoIntentNamedSimilarityMatch
 IntentClassifierType.OndewoIntentParameterMatch
 IntentClassifierType.OndewoIntentRandomForestClassifier
 IntentClassifierType.OndewoIntentRankingMatch
 IntentClassifierType.OndewoIntentSimilarityMatch
 IntentClassifierType.OndewoIntentSupportVectorClassifier
 IntentClassifierType.OndewoWeightedEnsemble
key: single_ner_algorithm
single_ner_algorithm='NerMethodType.OndewoNerRegex'
=> allowed other values for single_ner_algorithm:
 NerMethodType.OndewoNerBert
 NerMethodType.OndewoNerDateNer
 NerMethodType.OndewoNerDictionary
 NerMethodType.OndewoNerDuckling
 NerMethodType.OndewoNerFuzzy
 NerMethodType.OndewoNerHybrid
 NerMethodType.OndewoNerRegex
 NerMethodType.OndewoNerSpacy
 NerMethodType.OndewoNerTfNer

labels string repeated

labels associated to this request

platforms Intent.Message.Platform repeated

Only messages for the specified Intent.Message.Platform platforms are sent to the user in the DetectIntentResponse

account_id string

Id of the account, e.g. Company Ondewo

property_id string

Id of the property of the account, e.g. Domain ondewo.com This field can also be used for a customized tracking id or tag id

datastream_id string

Id of the datastream of the property of the account, e.g. Subdomain sub1.ondewo.com or sub2.ondewo.com This field can also be used for a customized tracking id or tag id

origin_id string

Id of the the origin of the user request For a phone bot, this is the phone number +123456789 the user called (Note: This is not the user's phone number) For a chatbot or voicebot on the web, this is the URL on which the bo, e.g. https://ondewo.com/webchat For a voice assistant device, this is the device-id or the app id This field can also be used for a customized tracking id or tag id https://aim-develop.ondewo.com/

identified_user_id string

Id of the "identified user" e.g. for a chatbot the email address or for a phone bot the phone number of the user This field can also be used for a customized tracking id or tag id

transcriptions S2tTranscription repeated

transcriptions of the user input sorted by score

QueryResult

Represents the result of conversational query or event processing.

FieldTypeLabelDescription
query_text string

The original conversational query text:

  • If natural language text was provided as input, query_text contains a copy of the input.
  • If natural language speech audio was provided as input, query_text contains the speech recognition result. If speech recognizer produced multiple alternatives, a particular one is picked.
  • If an event was provided as input, query_text is not set.

speech_recognition_confidence float

The Speech recognition confidence between 0.0 and 1.0. A higher number indicates an estimated greater likelihood that the recognized words are correct. The default of 0.0 is a sentinel value indicating that confidence was not set. You should not rely on this field as it isn't guaranteed to be accurate, or even set. In particular this field isn't set in Webhook calls and for StreamingDetectIntent since the streaming endpoint has separate confidence estimates per portion of the audio in StreamingRecognitionResult.

action string

The action name from the matched intent.

parameters google.protobuf.Struct

The collection of extracted parameters.

all_required_params_present bool

This field is set to:

  • false if the matched intent has required parameters and not all of the required parameter values have been collected.
  • true if all required parameter values have been collected, or if the matched intent doesn't contain any required parameters.

fulfillment_text string

The text to be pronounced to the user or shown on the screen.

fulfillment_messages Intent.Message repeated

The collection of rich messages to present to the user.

webhook_source string

If the query was fulfilled by a webhook call, this field is set to the value of the source field returned in the webhook response.

webhook_payload google.protobuf.Struct

If the query was fulfilled by a webhook call, this field is set to the value of the payload field returned in the webhook response.

output_contexts Context repeated

The collection of output contexts. If applicable, output_contexts.parameters contains entries with name <parameter name>.original containing the original parameter values before the query.

intent Intent

The intent that matched the conversational query. Some, not all fields are filled in this message, including but not limited to: name, display_name and webhook_state.

intent_detection_confidence float

The intent detection confidence. Values range from 0.0 (completely uncertain) to 1.0 (completely certain).

query_text_original string

The user input gets pre-processed by spelling correction, stop word removal etc. This property holds the string that is passed to the entity recognition and intent detection

diagnostic_info google.protobuf.Struct

The free-form diagnostic info. For example, this field could contain webhook call latency.

language_code string

The language that was triggered during intent detection. See Language Support for a list of the currently supported language codes.

file_resources FileResource repeated

Generated or attached files, e.g., llm generates a picture or file attachment

llm_telemetry_report LlmTelemetryReport

Aggregated LLM telemetry (tokens, tool calls, thinking) for this turn.

S2tTranscription

Represents a speech-to-text transcription.

FieldTypeLabelDescription
name string

resource name of the transcription

text string

The transcribed text content.

score float

Optional. A confidence score associated with the transcription. The score indicates the level of confidence in the accuracy of the transcription. It is a floating-point number, typically ranging from 0.0 (low confidence) to 1.0 (high confidence).

language_code string

Optional. The detected language of the transcription. The language is represented by a string following language codes (e.g., "en" for English, "es" for Spanish).

audio_resource_name string

the resource name of the audio file of the transcription

pipeline_id string

Optional. pipeline used for transcription. A pipeline ID. Example: "pipeline_1"

duration_in_s float

Optional. Duration in seconds for transcription

transcription_type TranscriptionType

Whether a speech-to-text engine or a human has transcribed the audio

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

Session

Session of a user interaction

FieldTypeLabelDescription
name string

The unique identifier of the session Format:

projects/<project_uuid>/agent/sessions/<session_uuid>

session_steps SessionStep repeated

The list of all the steps of the session

session_info SessionInfo

session information

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

SessionFilter

This message contains a session filter

FieldTypeLabelDescription
language_codes string repeated

A SessionFilter can be used in some requests to return only sessions matching certain filter conditions. All fields below are optional. Multiple fields specified at the same time are chained via AND. Match only sessions with all of the following language_codes

matched_intents Intent repeated

Match only sessions during which all of the following intents were detected NOTE: only name and display name fields are used for comparison

matched_entity_types EntityType repeated

Match only sessions during which all of the following entity types were recognized NOTE: only name and display name fields are used for comparison

min_intents_confidence_min float

Match only sessions where the minimum confidence for intent detection along the session falls in the following range. Defaults to -1 if not set.

min_intents_confidence_max float

Match only sessions where the minimum confidence for intent detection along the session falls in the following range. Defaults to +1 if not set.

min_entity_types_confidence_min float

Match only sessions where the minimum confidence for entity recognition along the session falls in the following range. Defaults to -1 if not set.

min_entity_types_confidence_max float

Match only sessions where the minimum confidence for entity recognition along the session falls in the following range. Defaults to +1 if not set.

earliest double

Match only sessions whose time range falls within the following range (in UNIX epochs). Defaults to 0 if not set.

latest double

Match only sessions whose time range falls within the following range (in UNIX epochs). Defaults to current epoch if not set

min_number_turns int32

Match only sessions for which the number of turns (interaction steps) falls in the following range Defaults to 0 if not set.

max_number_turns int32

Match only sessions for which the number of turns (interaction steps) falls in the following range Defaults to MAXINT if not set.

labels string repeated

Match only session which have all of the following labels assigned

user_ids string repeated

Match only session which had all of the following user_ids interacting with them.

intent_tags string repeated

Match only session which have all of the following intent tags assigned

session_ids string repeated

Match only sessions whose IDs are specified here

input_contexts Context repeated

Match only sessions whose session info contains at least one step having all the contexts specified here The input contexts are pre-conditions for detecting intents

output_contexts Context repeated

The output contexts are the result of the intent matching and track the contextual state of a conversation

duration_in_s_min float

Match only sessions for which the duration in seconds are larger or equal

duration_in_s_max float

Match only sessions for which the duration in seconds are smaller or equal

duration_in_m_min float

Match only sessions for which the duration in minutes are larger or equal

duration_in_m_max float

Match only sessions for which the duration in minutes are smaller or equal

duration_in_m_rounded_min float

Match only sessions for which the duration in minutes rounded are larger or equal

duration_in_m_rounded_max float

Match only sessions for which the duration in minutes rounded are smaller or equal

duration_interval_15s_rounded_min float

Match only sessions for which the duration in 15 seconds rounded are larger or equal

duration_interval_15s_rounded_max float

Match only sessions for which the duration in 15 seconds rounded are smaller or equal

duration_interval_30s_rounded_min float

Match only sessions for which the duration in 30 seconds rounded are larger or equal

duration_interval_30s_rounded_max float

Match only sessions for which the duration in 30 seconds rounded are smaller or equal

duration_interval_45s_rounded_min float

Match only sessions for which the duration in 45 seconds rounded are larger or equal

duration_interval_45s_rounded_max float

Match only sessions for which the duration in 45 seconds rounded are smaller or equal

started_time_slot_per_hour_min string

Match only sessions for which the started_time_slot_per_hour (e.g. 08:00) are larger or equal

started_time_slot_per_hour_max string

Match only sessions for which the started_time_slot_per_hour (e.g. 14:00) are smaller or equal

started_time_slot_per_quarter_hour_min string

Match only sessions for which the started_time_slot_per_quarter_hour (e.g. 08:00) are larger or equal

started_time_slot_per_quarter_hour_max string

Match only sessions for which the started_time_slot_per_quarter_hour (e.g. 14:00) are smaller or equal

started_time_slot_per_half_hour_min string

Match only sessions for which the started_time_slot_per_half_hour (e.g. 08:00) are larger or equal

started_time_slot_per_half_hour_max string

Match only sessions for which the started_time_slot_per_half_hour (e.g. 14:00) are smaller or equal

started_time_slot_per_day_phase_min string

Match only sessions for which the started_time_slot_per_day_phase (e.g. 08:00) are larger or equal

started_time_slot_per_day_phase_max string

Match only sessions for which the started_time_slot_per_day_phase (e.g. 14:00) are smaller or equal

started_time_slot_per_minute_min string

Match only sessions for which the started_time_slot_per_minute (e.g. 08:00) are larger or equal

started_time_slot_per_minute_max string

Match only sessions for which the started_time_slot_per_minute (e.g. 14:00) are smaller or equal

duration_in_s_rounded_min float

Match only sessions for which the duration in seconds rounded are larger or equal

duration_in_s_rounded_max float

Match only sessions for which the duration in seconds rounded are smaller or equal

platforms Intent.Message.Platform repeated

Messages for each of the Intent.Message.Platform were sent to the user

account_ids string repeated

Ids of the account, e.g. Company Ondewo, This field can also be used for customized tracking ids or tag ids

property_ids string repeated

Ids of the property of the account, e.g. Domain ondewo.com This field can also be used for customized tracking ids or tag ids

datastream_ids string repeated

Ids of the datastream of the property of the account, e.g. Subdomain sub1.ondewo.com or sub2.ondewo.com This field can also be used for customized tracking ids or tag ids

origin_ids string repeated

Ids of the the origin of the user request For a phone bot, this is the phone number +123456789 the user called (Note: This is not the user's phone number) For a chatbot or voicebot on the web, this is the URL on which the bo, e.g. https://ondewo.com/webchat For a voice assistant device, this is the device-id or the app id

identified_user_ids string repeated

Ids of the "identified user" e.g. for a chatbot the email address or for a phone bot the phone number of the user

duration_interval_60s_rounded_min float

Match only sessions for which the duration in 60 seconds rounded are larger or equal

duration_interval_60s_rounded_max float

Match only sessions for which the duration in 60 seconds rounded are smaller or equal

SessionInfo

This message contains information about session

FieldTypeLabelDescription
language_codes string repeated

A SessionInfo contains some general information about a session. This information can be returned inside a Session object for consumption by a client. Or it can be used by the backend to check whether the Session matches a given SessionFilter. All fields below are optional. Multiple fields specified at the same time are chained The language codes used in the given session.

matched_intents Intent repeated

A list of intents which have been matched

matched_entity_types EntityType repeated

A list of entity types which have been matched

min_intents_confidence float

The minimum confidence for intent recognition along the session

min_entity_types_confidence float

The minimum confidence for entity recognition along the session

earliest double

The earliest date of the given session (in UNIX epochs), i.e. the time of the first interaction of a user in the given session

latest double

The latest date of the given session (in UNIX epochs), i.e. the time of the last interaction of a user in the given session

number_turns int32

The number of turns (interaction steps) in the given session

labels string repeated

The list of labels of the given session

user_ids string repeated

The user_ids of the users which were interacting within the given session

intent_tags string repeated

The list of intent tags in the given session

input_context_steps SessionInfo.ContextSteps repeated

The input contexts that are matched in the given session. The name of the context here is the short name and not the full URL name including the project parent

output_context_steps SessionInfo.ContextSteps repeated

The output contexts that are matched in the given session. The name of the context here is the short name and not the full URL name including the project parent

duration_in_s float

duration in seconds

duration_in_m float

duration in minutes

duration_in_m_rounded float

duration in minutes rounded

duration_interval_15s_rounded float

duration in 15 seconds intervals rounded

duration_interval_30s_rounded float

duration in 30 seconds intervals rounded

duration_interval_45s_rounded float

duration in 45 seconds intervals rounded

started_time_slot_per_hour string

started_time_slot_per_hour (e.g. 08:00)

started_time_slot_per_quarter_hour string

started_time_slot_per_quarter_hour (e.g. 08:00)

started_time_slot_per_half_hour string

started_time_slot_per_half_hour (e.g. 08:00)

started_time_slot_per_day_phase string

started_time_slot_per_day_phase (e.g. 14:00)

started_time_slot_per_minute string

started_time_slot_per_minute (e.g. 14:00)

duration_in_s_rounded float

duration in seconds rounded

platforms Intent.Message.Platform repeated

Messages for each of the Intent.Message.Platform were sent to the user

account_ids string repeated

Ids of the account, e.g. Company Ondewo, This field can also be used for customized tracking ids or tag ids

property_ids string repeated

Ids of the property of the account, e.g. Domain ondewo.com This field can also be used for customized tracking ids or tag ids

datastream_ids string repeated

Ids of the datastream of the property of the account, e.g. Subdomain sub1.ondewo.com or sub2.ondewo.com This field can also be used for customized tracking ids or tag ids

origin_ids string repeated

Ids of the the origin of the user request For a phone bot, this is the phone number +123456789 the user called (Note: This is not the user's phone number) For a chatbot or voicebot on the web, this is the URL on which the bo, e.g. https://ondewo.com/webchat For a voice assistant device, this is the device-id or the app id

identified_user_ids string repeated

Ids of the "identified user" e.g. for a chatbot the email address or for a phone bot the phone number of the user

duration_interval_60s_rounded float

duration in 60 seconds intervals rounded

parent_comment Comment repeated

comments about a session

SessionInfo.ContextSteps

The list of contexts of each step collected in an outer list

FieldTypeLabelDescription
contexts Context repeated

List of contexts for a session step

SessionReview

This message contains a session review

FieldTypeLabelDescription
name string

The unique identifier for the given review Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/reviews/<session_review_uuid>

session_review_steps SessionReviewStep repeated

The reviews for all steps in the session

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

SessionReviewStep

This message contains a session review step

FieldTypeLabelDescription
name string

The unique identifier for the given review step Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/reviews/<review_uuid>/sessionreviewsteps/<session_review_step_uuid>

annotated_usersays Intent.TrainingPhrase

The user says with markup of the detected entity types after the preprocessing such as spelling correction, stopword removal etc. has been applied. This string represents what has been passed to the entity recognition and intent detection algorithms.

language_code string

The language code

detected_intents DetectedIntent repeated

Unique detected intents ordered by descending confidence

contexts Context repeated

The contexts which were active at the beginning of this step

contexts_out Context repeated

The output contexts of this step

query_text_original string

User input without any pre-processing applied

platforms Intent.Message.Platform repeated

Messages for each of the Intent.Message.Platform were sent to the user

timestamp google.protobuf.Timestamp

Timestamp of session review step

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

audio_file_resources AudioFileResource repeated

audio file resources associated with the session review step

SessionStep

SessionStep is a single user interaction as part of a session.

FieldTypeLabelDescription
name string

The unique identifier of the session step. Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/sessionsteps/<session_step_uuid>

detect_intent_request DetectIntentRequest

The detect intent request of the session step

detect_intent_response DetectIntentResponse

The detect intent response of the session step

contexts Context repeated

The contexts which were active at the beginning of this step

timestamp google.protobuf.Timestamp

Timestamp of session step

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

audio_file_resources AudioFileResource repeated

audio file resources associated with the session step

llm_telemetry_report LlmTelemetryReport

Aggregated LLM telemetry for this step (one entry per LLM invocation, plus turn-level totals).

StreamingDetectIntentRequest

The top-level message sent by the client to the StreamingDetectIntent method.

Multiple request messages should be sent in order:

1. The first message must contain session, query_input plus optionally query_params and/or single_utterance. The message must not contain input_audio.

2. If query_input was set to a streaming input audio config, all subsequent messages must contain only input_audio. Otherwise, finish the request stream.

FieldTypeLabelDescription
session string

Required. The name of the session the query is sent to. Format of the session name: projects/<project_uuid>/agent/sessions/<session_uuid>. It's up to the API caller to choose an appropriate <session_uuid>. It can be a random number or some type of user identifier (preferably hashed). The length of the session ID must not exceed 36 characters.

query_params QueryParameters

Optional. The parameters of this query.

query_input QueryInput

Required. The input specification. It can be set to:

  1. an audio config which instructs the speech recognizer how to process the speech audio,
  2. a conversational query in the form of text, or
  3. an event that specifies which intent to trigger.

single_utterance bool

Optional. If false (default), recognition does not cease until the client closes the stream. If true, the recognizer will detect a single spoken utterance in input audio. Recognition ceases when it detects the audio's voice has stopped or paused. In this case, once a detected intent is received, the client should close the stream and start a new request with a new stream as needed. This setting is ignored when query_input is a piece of text or an event.

input_audio bytes

Optional. The input audio content to be recognized. Must be sent if query_input was set to a streaming input audio config. The complete audio over all streaming messages must not exceed 1 minute.

StreamingDetectIntentResponse

The top-level message returned from the StreamingDetectIntent method.

Multiple response messages can be returned in order:

1. If the input was set to streaming audio, the first one or more messages contain recognition_result. Each recognition_result represents a more complete transcript of what the user said. The last recognition_result has is_final set to true.

2. The next message contains response_id, query_result and optionally webhook_status if a WebHook was called.

FieldTypeLabelDescription
response_id string

The unique identifier of the response. It can be used to locate a response in the training example set or for reporting issues.

recognition_result StreamingRecognitionResult

The result of speech recognition.

query_result QueryResult

The result of the conversational query or event processing.

webhook_status google.rpc.Status

Specifies the status of the webhook request.

llm_call_started LlmCallStartedEvent

llm_call_finished LlmCallFinishedEvent

llm_tool_call_started LlmToolCallStartedEvent

llm_tool_call_finished LlmToolCallFinishedEvent

llm_thinking_delta LlmThinkingDeltaEvent

llm_token_usage_update LlmTokenUsageUpdateEvent

StreamingRecognitionResult

Contains a speech recognition result corresponding to a portion of the audio that is currently being processed or an indication that this is the end of the single requested utterance.

Example:

1. transcript: "tube"

2. transcript: "to be a"

3. transcript: "to be"

4. transcript: "to be or not to be"

is_final: true

5. transcript: " that's"

6. transcript: " that is"

7. recognition_event_type: RECOGNITION_EVENT_END_OF_SINGLE_UTTERANCE

8. transcript: " that is the question"

is_final: true

Only two of the responses contain final results (#4 and #8 indicated by is_final: true). Concatenating these generates the full transcript: "to be or not to be that is the question".

In each response we populate:

FieldTypeLabelDescription
message_type StreamingRecognitionResult.MessageType

Type of the result message.

transcript string

Transcript text representing the words that the user spoke. Populated if and only if event_type = RECOGNITION_EVENT_TRANSCRIPT.

is_final bool

The default of 0.0 is a sentinel value indicating confidence was not set. If false, the StreamingRecognitionResult represents an interim result that may change. If true, the recognizer will not return any further hypotheses about this piece of the audio. May only be populated for event_type = RECOGNITION_EVENT_TRANSCRIPT.

confidence float

The Speech confidence between 0.0 and 1.0 for the current portion of audio. A higher number indicates an estimated greater likelihood that the recognized words are correct. The default of 0.0 is a sentinel value indicating that confidence was not set. This field is typically only provided if is_final is true and you should not rely on it being accurate or even set.

TextInput

Represents the natural language text to be processed.

FieldTypeLabelDescription
text string

Required. The UTF-8 encoded natural language text to be processed. Text length must not exceed 256 bytes.

language_code string

Required. The language of this conversational query. See Language Support for a list of the currently supported language codes. Note that queries in the same session do not necessarily need to specify the same language.

UpdateSessionCommentsRequest

This message is a request to update a session comment

FieldTypeLabelDescription
session_id string

The id of the session

comment Comment

The comment of a session to be updated

UpdateSessionStepRequest

UpdateSessionStepRequest stores a session step into the session

FieldTypeLabelDescription
session_step SessionStep

The session step to be updated

update_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be updated. Example: path=["session_step.detect_intent_response.query_result.fulfillment_messages"]

field_mask google.protobuf.FieldMask

Optional. The mask to control which fields will be filled with data. Example: path=["session_step.detect_intent_response.query_result.fulfillment_messages"]

VideoFileResource

Represents a video file resource (e.g., MP4, AVI).

FieldTypeLabelDescription
name string

The unique identifier for the video file resource. Format:

projects/<project_uuid>/agent/sessions/<session_uuid>/videos/<video_uuid>

display_name string

The display name of the video file, which can be a user-assigned label.

bytes bytes

The raw bytes representing the video file (e.g., MP4, AVI).

duration_in_s float

The duration of the video file in seconds.

resolution string

The resolution of the video (e.g., "1920x1080" for Full HD).

frame_rate float

The frame rate of the video (e.g., 30 fps).

created_at google.protobuf.Timestamp

Creation date and time of the video file. This is a read-only field.

modified_at google.protobuf.Timestamp

The last modification date and time of the video file. This is a read-only field.

created_by string

The UUID of the user who created the video file.

modified_by string

The UUID of the user who last modified the video file.

Enums

AudioEncoding

Audio encoding of the audio content sent in the conversational query request.

Refer to the Cloud Speech API documentation for more details.

NameNumberDescription
AUDIO_ENCODING_UNSPECIFIED 0

Not specified.

AUDIO_ENCODING_LINEAR_16 1

Uncompressed 16-bit signed little-endian samples (Linear PCM).

AUDIO_ENCODING_FLAC 2

FLAC (Free Lossless Audio Codec) is the recommended encoding because it is lossless (therefore recognition is not compromised) and requires only about half the bandwidth of LINEAR16. FLAC stream encoding supports 16-bit and 24-bit samples, however, not all fields in STREAMINFO are supported.

AUDIO_ENCODING_MULAW 3

8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.

AUDIO_ENCODING_AMR 4

Adaptive Multi-Rate Narrowband codec. sample_rate_hertz must be 8000.

AUDIO_ENCODING_AMR_WB 5

Adaptive Multi-Rate wideband codec. sample_rate_hertz must be 16000.

AUDIO_ENCODING_OGG_OPUS 6

Opus encoded audio frames in Ogg container (OggOpus). sample_rate_hertz must be 16000.

AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE 7

Although the use of lossy encodings is not recommended, if a very low bitrate encoding is required, OGG_OPUS is highly preferred over Speex encoding. The Speex encoding supported by Dialogflow API has a header byte in each block, as in MIME type audio/x-speex-with-header-byte. It is a variant of the RTP Speex encoding defined in RFC 5574. The stream is a sequence of blocks, one block per RTP packet. Each block starts with a byte containing the length of the block, in bytes, followed by one or more frames of Speex data, padded to an integral number of bytes (octets) as specified in RFC 5574. In other words, each RTP header is replaced with a single byte containing the block length. Only Speex wideband is supported. sample_rate_hertz must be 16000.

AudioFileResourceType

File type of an audio resource

NameNumberDescription
AUDIO_FILE_RESOURCE_TYPE_UNSPECIFIED 0

Unspecified audio file type

AUDIO_FILE_RESOURCE_TYPE_T2S 1

Audio file from text to speech

AUDIO_FILE_RESOURCE_TYPE_S2T 2

Audio file from speech to text

AUDIO_FILE_RESOURCE_TYPE_S2T_AND_T2S 3

Audio file from speech to text and text to speech

ComparisonOperator

Type of operator to compare

NameNumberDescription
EQUAL 0

equal operator

GREATER 1

greater operator, e.g. for numbers, dates, and strings

GREATER_OR_EQUAL 2

greater or equal operator, e.g. for numbers, dates, and strings

LESS_OR_EQUAL 3

less or equal operator, e.g. for numbers, dates, and strings

CONTAINS 4

contains operator, e.g. part of string, or one of the elements in an iterable such as set or list

STARTS_WITH 5

starts with operator for string comparison only

ENDS_WITH 6

ends with operator for string comparison only

ReasoningEffort

Effort level for reasoning models (e.g. o1, o3). Controls the trade-off

between speed and quality.

NameNumberDescription
REASONING_EFFORT_UNSPECIFIED 0

Unspecified reasoning effort.

REASONING_EFFORT_MINIMAL 1

Minimal reasoning effort.

REASONING_EFFORT_LOW 2

Low reasoning effort.

REASONING_EFFORT_MEDIUM 3

Medium reasoning effort.

REASONING_EFFORT_HIGH 4

High reasoning effort.

ResourceView

Represents the options for views of resources.

NameNumberDescription
RESOURCE_VIEW_UNSPECIFIED 0

Resource view not specified

RESOURCE_VIEW_FULL 1

All fields are populated including bytes e.g., for audio files

RESOURCE_VIEW_PARTIAL 2

Fields include metadata but no bytes

RESOURCE_VIEW_MINIMUM 3

Minimum view only without bytes and metadata

Session.View

Represents the options for views of a session.

A session can be a sizable object. Therefore, we provide a resource view that does not return all data

NameNumberDescription
VIEW_UNSPECIFIED 0

Endpoints decide whether to return the full or the sparse view

VIEW_FULL 1

All fields are populated.

VIEW_SPARSE 2

Only some fields are populated in the response.

SessionReview.View

Represents the options for views of a session_review.

A session_review can be a sizable object. Therefore, we provide a resource view that does not return all data

NameNumberDescription
VIEW_UNSPECIFIED 0

Endpoints decide whether to return the full or the sparse view

VIEW_FULL 1

All fields are populated.

VIEW_SPARSE 2

Only some fields are populated in the response.

StreamingRecognitionResult.MessageType

Type of the response message.

NameNumberDescription
MESSAGE_TYPE_UNSPECIFIED 0

Not specified. Should never be used.

TRANSCRIPT 1

Message contains a (possibly partial) transcript.

END_OF_SINGLE_UTTERANCE 2

Event indicates that the server has detected the end of the user's speech utterance and expects no additional speech. Therefore, the server will not process additional audio (although it may subsequently return additional results). The client should stop sending additional audio data, half-close the gRPC connection, and wait for any additional results until the server closes the gRPC connection. This message is only sent if single_utterance was set to true, and is not used otherwise.

TranscriptionType

Identifies whether a transcription was produced by an automatic

speech-to-text system or by a human annotator.

NameNumberDescription
TRANSCRIPTION_TYPE_UNSPECIFIED 0

Sentinel value when the source of the transcription was not specified.

TRANSCRIPTION_TYPE_S2T 1

Automatic transcription produced by a speech-to-text system.

TRANSCRIPTION_TYPE_HUMAN 2

Manual transcription produced by a human annotator.

ondewo/nlu/user.proto

Top

Services

Users

gRPC service for managing users and server roles.

Service Methods

CreateUser

rpc CreateUser (CreateUserRequest) returns (User)
Creates a user.

GetUser

rpc GetUser (GetUserRequest) returns (User)
Retrieves a user by identifier.

GetUserInfo

rpc GetUserInfo (GetUserRequest) returns (UserInfo)
Retrieves user information by identifier.

DeleteUser

rpc DeleteUser (GetUserRequest) returns (.google.protobuf.Empty)
Deletes a user by identifier.

UpdateUser

rpc UpdateUser (UpdateUserRequest) returns (User)
Updates a user.

ListUsers

rpc ListUsers (ListUsersRequest) returns (ListUsersResponse)
Lists users.

ListUserInfos

rpc ListUserInfos (ListUsersRequest) returns (ListUserInfosResponse)
Lists user information.

CreateServerRole

rpc CreateServerRole (CreateServerRoleRequest) returns (ServerRole)
Creates a server role.

GetServerRole

rpc GetServerRole (GetServerRoleRequest) returns (ServerRole)
Retrieves a server role by ID.

DeleteServerRole

rpc DeleteServerRole (DeleteServerRoleRequest) returns (.google.protobuf.Empty)
Deletes a server role by ID.

UpdateServerRole

rpc UpdateServerRole (UpdateServerRoleRequest) returns (ServerRole)
Updates a server role.

ListServerRoles

rpc ListServerRoles (ListServerRolesRequest) returns (ListServerRolesResponse)
Lists server roles.

ListServerPermissions

rpc ListServerPermissions (ListServerPermissionsRequest) returns (ListServerPermissionsResponse)
Lists server permissions.

Login

rpc Login (LoginRequest) returns (LoginResponse)
Requests login.

CheckLogin

rpc CheckLogin (.google.protobuf.Empty) returns (.google.protobuf.Empty)
Checks login.

ListNotifications

rpc ListNotifications (ListNotificationsRequest) returns (ListNotificationsResponse)
Lists notifications based on specified filters.

SetNotificationsFlaggedStatus

rpc SetNotificationsFlaggedStatus (SetNotificationsFlaggedStatusRequest) returns (ListNotificationsResponse)
Sets the flagged status for multiple notifications.

SetNotificationsReadStatus

rpc SetNotificationsReadStatus (SetNotificationsReadStatusRequest) returns (ListNotificationsResponse)
Sets the read status for multiple notifications.

GetUserPreferences

rpc GetUserPreferences (GetUserPreferencesRequest) returns (GetUserPreferencesResponse)
Retrieves user preferences based on the provided request.

SetUserPreferences

rpc SetUserPreferences (SetUserPreferencesRequest) returns (SetUserPreferencesResponse)
Sets or updates user preferences based on the provided request.

DeleteUserPreferences

rpc DeleteUserPreferences (DeleteUserPreferencesRequest) returns (DeleteUserPreferencesResponse)
Deletes specific user preferences based on the provided request.

DeleteAllUserPreferences

rpc DeleteAllUserPreferences (DeleteAllUserPreferencesRequest) returns (DeleteUserPreferencesResponse)
Deletes all user preferences for a specific user, optionally filtered by a substring.

Methods with HTTP bindings

Method Name Method Pattern Body
CreateUser POST /v2/users *
GetUser GET /v2/users/{user_identifier=*}
GetUserInfo GET /v2/user_infos/{user_identifier=*}
DeleteUser DELETE /v2/users/{user_identifier=*}
UpdateUser PATCH /v2/users *
ListUsers GET /v2/users
ListUserInfos GET /v2/users_infos
CreateServerRole POST /v2/server_roles *
GetServerRole GET /v2/server_roles/{role_id=*}
DeleteServerRole DELETE /v2/server_roles/{role_id=*}
UpdateServerRole PATCH /v2/server_roles *
ListServerRoles GET /v2/server_roles
ListServerPermissions GET /v2/server_permissions
Login POST /v2/login *
CheckLogin DELETE /v2/check_login
Messages

CreateServerRoleRequest

Request to create server role

FieldTypeLabelDescription
role ServerRole

If the role_id is not provided, an incremental value will be assigned The "name" and "role_type" are mandatory values The permissions all default to False if not provided specifically

CreateUserRequest

Request to create user

FieldTypeLabelDescription
user User

user_id in the User message should be given, if empty will throw an error in the backend

password string

password

DeleteAllUserPreferencesRequest

Request to delete all user preferences with an optional filter substring.

FieldTypeLabelDescription
user_name string

The name of the user. Format:

projects/<project_uuid>/agent/users/<user_uuid>

regex_filter string

Optional: Only delete keys that match the provided regular expression. If user does not add regex_filter, then all user preferences will be deleted Example: Only delete keys starting with DE: ^DE_ Only delete keys matching: .*user.*

DeleteServerRoleRequest

Request to delete server role

FieldTypeLabelDescription
role_id uint32

role is identified by role id, if empty will throw an error in the backend

DeleteUserPreferencesRequest

Request to delete specific user preferences.

FieldTypeLabelDescription
user_name string

The name of the user. Format:

projects/<project_uuid>/agent/users/<user_uuid>

keys string repeated

List of keys to delete from user preferences.

regex_include string

Optional: In addition to the keys specified also include all keys that match the provided regex_include regular expression. If user does not add regex_filter, then only the keys specified in the keys field are deleted. If both, a key in the keys field and in the regex_include is matched then the key is deleted without raising an error.

DeleteUserPreferencesResponse

Response to delete specific user preferences.

FieldTypeLabelDescription
user_name string

The name of the user. Format:

projects/<project_uuid>/agent/users/<user_uuid>

keys string repeated

List of keys to delete from user preferences.

error_message string

error message if there are any.

DeleteUserRequest

Request to delete user

FieldTypeLabelDescription
user_id string

user is identified by user id, if empty will throw an error in the backend

GetServerRoleRequest

Request to get server role

FieldTypeLabelDescription
role_id uint32

role is identified by role id

role_name string

role can also be uniquely identified by its name

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

GetUserPreferencesRequest

Request to get user preferences.

FieldTypeLabelDescription
user_name string

The name of the user. Format:

projects/<project_uuid>/agent/users/<user_uuid>

keys string repeated

Specific keys to retrieve from user preferences. If keys are specified multiple times then only one KeyValue pair is returned

regex_include string

Optional: In addition to the keys specified also include all keys that match the provided regex_include regular expression. If user does not add regex_filter, then only the keys specified in the keys field are returned. If both, a key in the keys field and in the regex_include will be matched than only a single KeyValuePair is returned.

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

GetUserPreferencesResponse

Response containing user preferences.

FieldTypeLabelDescription
user_name string

The name of the user. Format:

projects/<project_uuid>/agent/users/<user_uuid>

key_value_pairs KeyValuePair repeated

List of key-value pairs representing user preferences.

error_message string

error message if there are any.

GetUserRequest

Request to get user

FieldTypeLabelDescription
user_id string

the user is identified by user id

user_email string

the user can identified by their email

field_mask google.protobuf.FieldMask

Optional field mask to specify which fields to return in the response

ListServerPermissionsRequest

Server permissions

FieldTypeLabelDescription
page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListServerPermissionsResponse

Response containing list of server permissions

FieldTypeLabelDescription
permissions string repeated

The list of server permissions. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

ListServerRolesRequest

Request to list server roles

FieldTypeLabelDescription
page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListServerRolesResponse

Response containing list of server roles

FieldTypeLabelDescription
server_roles ServerRole repeated

The list of server roles. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

ListUserInfosResponse

Response containing list of users

FieldTypeLabelDescription
users UserInfo repeated

The list of server roles. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

ListUserPreferencesRequest

Request to list all user preferences for a specific user.

FieldTypeLabelDescription
user_name string

The name of the user. Format:

projects/<project_uuid>/agent/users/<user_uuid>

regex_filter string

Optional: Only list keys that match the provided regular expression

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListUserPreferencesResponse

Response containing a list of user preferences for a specific user with an optional filter substring.

FieldTypeLabelDescription
user_name string

The name of the user.

key_value_pairs KeyValuePair repeated

List of key-value pairs representing user preferences.

error_message string

error message if there are any.

ListUsersRequest

Request to list user

FieldTypeLabelDescription
page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

ListUsersResponse

Response containing list of users

FieldTypeLabelDescription
users User repeated

The list of users. There will be a maximum number of items returned based on the page_token field in the request.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

LoginRequest

Authentication messages

FieldTypeLabelDescription
user_email string

user email

password string

user password

field_mask google.protobuf.FieldMask optional

Optional. The mask to control which fields gets returned.

LoginResponse

This message is a response of logging

FieldTypeLabelDescription
user User

user object - user_id must be there

auth_token string

authentication token after successful login of the user to access NLU services

ServerRole

Server Role messages

FieldTypeLabelDescription
role_id uint32

unique identifier of the role

name string

unique name of the role

permissions string repeated

defines the permissions for the given role (the strings can be gotten from the ListServerPermissions)

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

SetUserPreferencesRequest

Request to set or update user preferences.

FieldTypeLabelDescription
user_name string

The name of the user. Format:

projects/<project_uuid>/agent/users/<user_uuid>

key_value_pairs KeyValuePair repeated

List of key-value pairs to set or update.

SetUserPreferencesResponse

Response to set or update user preferences.

FieldTypeLabelDescription
user_name string

The name of the user. Format:

projects/<project_uuid>/agent/users/<user_uuid>

keys string repeated

List of keys to delete from user preferences.

error_message string

error message if there are any.

UpdateServerRoleRequest

Request to update server role

FieldTypeLabelDescription
role ServerRole

role_id in the Role message should be given, if empty will throw an error in the backend other fields in the Role are optional. Only the fields to be updated should be provided

update_mask google.protobuf.FieldMask

Optional. The mask to control which fields get updated.

UpdateUserRequest

Request to update user

FieldTypeLabelDescription
user User

user_id in the User message should be given, if empty will throw an error in the backend password and other fields in the User are optional. Only the fields to be updated should be provided

password string

Password of the user

update_mask google.protobuf.FieldMask

Optional. The mask to control which fields get updated.

User

this message contains all the fields that required for user db

FieldTypeLabelDescription
user_id string

when creating user user_id is empty, then it will be generated on creation time on backend

display_name string

Optional field display_name is the name that will be used on the frontend to interact with the user it shouldn't be unique. If not provided user_name will also be used as display name

server_role_id uint32

server role type of the given user. If nothing is provided, the user is set to USER (minimum access)

user_email string

user e-mail should be a valid e-mail and unique

user_profile_picture bytes

user profile picture

created_at google.protobuf.Timestamp

Creation date and time. Read-only field.

modified_at google.protobuf.Timestamp

Modification date and time. Read-only field.

created_by string

User id in form of a valid UUID.

modified_by string

User id in form of a valid UUID.

UserInfo

This message contains information about user

FieldTypeLabelDescription
user User

user object

project_roles UserInfo.ProjectRolesEntry repeated

If in GetUser, ListUser requests UserView is FULL, then the mapping is additionally provided of parent of the project and corresponding ProjectRole of the user

UserInfo.ProjectRolesEntry

FieldTypeLabelDescription
key string

value ProjectRole

Enums

DefaultServerRole

Structure of server role

NameNumberDescription
SERVER_UNSPECIFIED 0

unspecified server role

SERVER_USER 1

read-only access

SERVER_MANAGER 2

SERVER_USER's permissions + CRUD of projects and Users

SERVER_ADMIN 3

this role can do everything

SERVER_INACTIVE 4

this role can do nothing. Used to set a user as inactive in the server.

ondewo/nlu/utility.proto

Top

Services

Utilities

This is collection of utility endpoints, intended to language-independent operations, such as code checks, regex checks, etc. Holds a collection of utility functions

Service Methods

ValidateRegex

rpc ValidateRegex (ValidateRegexRequest) returns (ValidateRegexResponse)
Validates the validity of python regexes

ValidateEmbeddedRegex

rpc ValidateEmbeddedRegex (ValidateEmbeddedRegexRequest) returns (ValidateEmbeddedRegexResponse)
Validate that entity types with group references have synonyms with capturing groups.

CleanAllIntents

rpc CleanAllIntents (CleanAllIntentsRequest) returns (CleanAllIntentsResponse)
Cleans all intent training phrases and entity annotations of parent

CleanIntent

rpc CleanIntent (CleanIntentRequest) returns (CleanIntentResponse)
Cleans single intent training phrases and entity annotations

CleanAllEntityTypes

rpc CleanAllEntityTypes (CleanAllEntityTypesRequest) returns (CleanAllEntityTypesResponse)
Cleans all entity types of parent

CleanEntityType

rpc CleanEntityType (CleanEntityTypeRequest) returns (CleanEntityTypeResponse)
Cleans entity type

AddTrainingPhrases

rpc AddTrainingPhrases (AddTrainingPhrasesRequest) returns (AddTrainingPhrasesResponse)
Creates new training phrases corresponding to intent specified by its intent display name

AddTrainingPhrasesFromCSV

rpc AddTrainingPhrasesFromCSV (AddTrainingPhrasesFromCSVRequest) returns (AddTrainingPhrasesResponse)
Creates new training phrases corresponding to intent specified by its intent display name from csv file
Messages

AddTrainingPhrasesFromCSVRequest

Request message to AddTrainingPhraseFromCSV rpc

FieldTypeLabelDescription
parent string

Required. The agent to list all intents from. Format:

projects/<project_uuid>/agent

language_code string

Required. The language to list training phrases, parameters and rich messages for. If not specified, the agent's default language is used. Note: languages must be enabled in the agent before they can be used.

csv_contents bytes

Required. Contents of the .csv file containing training phrases to be added to the intents

extract_entities bool

Optional. Whether or not to extract entities for the new training phrases

special_characters string

Optional. Before new training phrases are added to their corresponding intent, they are cleaned with cleaning scripts. These cleaning scripts remove certain special characters, if they are found at the beginning of the text or if they appear in annotations. Overrides the default: '.,;!?:'

training_phrase_cleaner_options TrainingPhraseCleanerOptions

Optional. Options for the training phrase cleaner to override the default settings

number_of_workers int32

Optional. Number of threads used to accomplish the task

AddTrainingPhrasesRequest

Request message to AddTrainingPhrase rpc

FieldTypeLabelDescription
parent string

Required. The agent to list all intents from. Format:

projects/<project_uuid>/agent

language_code string

Required. The language to list training phrases, parameters and rich messages for. If not specified, the agent's default language is used. Note: languages must be enabled in the agent before they can be used.

training_phrase_list AddTrainingPhrasesRequest.TrainingPhraseForIntent repeated

Required. List of training phrases to be added to the intent

extract_entities bool

Optional. Whether or not to extract entities for the new training phrases

special_characters string

Optional. Characters to be recognized as special characters for cleaning the training phrases. Overrides the default: '.,;!?:'

training_phrase_cleaner_options TrainingPhraseCleanerOptions

Optional. Options for the training phrase cleaner to override the default settings

number_of_workers int32

Optional. Number of threads used to accomplish the task

AddTrainingPhrasesRequest.TrainingPhraseForIntent

Message that contains the new training phrase, together with the intent display name and, optionally the entity annotations

FieldTypeLabelDescription
training_phrase string

Required. New training phrase to be added

intent_display_name string

Required. Corresponding display name of the intent

entities Intent.TrainingPhrase.Entity repeated

Optional. Entity annotations

AddTrainingPhrasesResponse

Response message to AddTrainingPhrase rpc

FieldTypeLabelDescription
error_messages string repeated

Required. If something goes wrong, error messages will be conveyed via a repeated string

CleanAllEntityTypesRequest

Request to clean the entity types

FieldTypeLabelDescription
parent string

Required. The agent to list all intents from. Format:

projects/<project_uuid>/agent

language_code string

Optional. The language to list training phrases, parameters and rich messages for. If not specified, the agent's default language is used. Note: languages must be enabled in the agent before they can be used.

special_characters string

Optional. Characters to be recognized as special characters for cleaning. Overrides the default: '.,;!?:'

substring_white_list string repeated

Optional. List of substring that shall not be cleaned/deleted. Example: ['St.', 'U.S.', 'sys.', '24.12.', 'Nr.', 'TelNr.']

max_entity_count_update int32

Optional. Entity type that contain more than max_entity_count_update entities will not be cleaned. Relevant for auto-generated entity values (e.g. City Names) Default = 10000

forbidden_entity_type_patterns string repeated

Optional. List of strings or regexes. Entity types will be deleted if their display name matches an element of this list Example: ['sys.ignore.'] -> would delete entity types with display names sys.ignore.*

dry_run bool

Required. Do not apply changes to the database if set to True

number_of_workers int32

Optional. Number of threads used to accomplish the task

CleanAllEntityTypesResponse

Response from entity type cleaner

FieldTypeLabelDescription
cleaned_entity_types EntityType repeated

Required. List of updated entity types

deleted_entity_types EntityType repeated

Optional. List of updated entity types

entity_type_updates EntityTypeUpdate repeated

Optional. List of updates performed on entity types

entity_type_deletions EntityTypeUpdate repeated

Optional. List of the deleted entity types

CleanAllIntentsRequest

The request to clean the all intents.

FieldTypeLabelDescription
parent string

Required. The agent to list all intents from. Format:

projects/<project_uuid>/agent

language_code string

Optional. The language to list training phrases, parameters and rich messages for. If not specified, the agent's default language is used. Note: languages must be enabled in the agent before they can be used.

special_characters string

Optional. Characters to be recognized as special characters for cleaning. Overrides the default: '.,;!?:'

substring_white_list string repeated

Optional. List of substring that shall not be cleaned/deleted. Example: ['St.', 'U.S.', 'sys.', '24.12.', 'Nr.', 'TelNr.'] Default = None

dry_run bool

Required. Do not apply changes to the database if set to True

training_phrase_cleaner_options TrainingPhraseCleanerOptions

Optional. Options for the cleaning of the training phrases.

reannotate_entities_options ReannotateEntitiesOptions

Optional. Options for re-annotation of entities (default = REANNOTATE_NEVER)

number_of_workers int32

Optional. Number of threads used to accomplish the task

CleanAllIntentsResponse

Response corresponding to the CleanAllIntents Request

FieldTypeLabelDescription
cleaned_intents Intent repeated

Required. List of updates performed on intents

intent_update_list IntentUpdate repeated

Optional. List of updates applied to intents

CleanEntityTypeRequest

Request to clean a single entity type

FieldTypeLabelDescription
parent string

Required. The agent to list all intents from. Format:

projects/<project_uuid>/agent

entity_type_name string

Required. The name of the entity_type

language_code string

Optional. The language to list training phrases, parameters and rich messages for. If not specified, the agent's default language is used. Note: languages must be enabled in the agent before they can be used.

special_characters string

Optional. Characters to be recognized as special characters for cleaning. Overrides the default: '.,;!?:'

substring_white_list string repeated

Optional. List of substring that shall not be cleaned/deleted. Example: ['St.', 'U.S.', 'sys.', '24.12.', 'Nr.', 'TelNr.']

max_entity_count_update int32

Optional. Entity type that contain more than max_entity_count_update entities will not be cleaned. Relevant for auto-generated entity values (e.g. City Names) Default = 10000

dry_run bool

Required. Do not apply changes to the database if set to True

CleanEntityTypeResponse

Response from entity type cleaner

FieldTypeLabelDescription
cleaned_entity_type EntityType

Required. The cleaned entity type

entity_type_update EntityTypeUpdate

Optional. The updated entity type

CleanIntentRequest

The request message to clean a single intents.

FieldTypeLabelDescription
parent string

Required. The agent to list all intents from. Format:

projects/<project_uuid>/agent

intent_name string

Required. The name of the intent. Format:

projects/<project_uuid>/agent/intents/<intent_uuid>

language_code string

Optional. The language to list training phrases, parameters and rich messages for. If not specified, the agent's default language is used. Note: languages must be enabled in the agent before they can be used.

special_characters string

Optional. Characters to be recognized as special characters for cleaning. Overrides the default: '.,;!?:'

substring_white_list string repeated

Optional. List of substring that shall not be cleaned/deleted. Example: ['St.', 'U.S.', 'sys.', '24.12.', 'Nr.', 'TelNr.'] Default = None

dry_run bool

Required. Do not apply changes to the database if set to True

training_phrase_cleaner_options TrainingPhraseCleanerOptions

Optional. Options for the cleaning of the training phrases.

reannotate_entities_options ReannotateEntitiesOptions

Optional. Options for re-annotation of entities (default = REANNOTATE_NEVER)

CleanIntentResponse

The response message to clean a single intents.

FieldTypeLabelDescription
cleaned_intent Intent

Required. Cleaned Intent

intent_update IntentUpdate

Optional. Updates applied to intent

EntityTypeUpdate

Stores updates applied to an entity type

FieldTypeLabelDescription
entity_type_name string

The entity type name

values_update_list EntityTypeUpdate.EntityUpdate repeated

List of the updated entities

EntityTypeUpdate.EntityUpdate

Stores updates applied to an entity

FieldTypeLabelDescription
entity_value_update StringUpdate

Updates made to the entity value

entity_synonym_updates StringUpdate repeated

Updates made to the entity synonyms

IntentUpdate

Stores updates applied to an intent

FieldTypeLabelDescription
intent_display_name string

The display name of the intent

training_phrase_update_list IntentUpdate.TrainingPhraseUpdate repeated

List of the updated training phrases

deleted_parameters string repeated

List of the deleted parameters

IntentUpdate.TrainingPhraseUpdate

Message to track the updates made to a training phrase

FieldTypeLabelDescription
training_phrase_update StringUpdate

Stores updates of training phrases

entity_updates StringUpdate repeated

Stores updates of entity strings

entities_reannotated string repeated

Stores re-annotated entity strings

contains_update_variable bool

Will be switched to True if at least one update has been performed

StringUpdate

Message to keep track of updated strings

FieldTypeLabelDescription
new string

New version of the string

old string

Old version of the string

TrainingPhraseCleanerOptions

Options for cleaning the training phrases

FieldTypeLabelDescription
delete_repeated_whitespaces bool

Whether or not to delete repeated whitespaces

delete_leading_special_characters bool

Whether of not to delete leading special characters

delete_trailing_special_characters bool

Whether of not to delete trailing special characters

ValidateEmbeddedRegexRequest

Validation request for entity type values

FieldTypeLabelDescription
entity_type EntityType.Entity

ValidateEmbeddedRegexResponse

Response of the entity type validation

FieldTypeLabelDescription
error_messages string repeated

List of error message from the validation

ValidateRegexRequest

The request to validate regexes.

FieldTypeLabelDescription
regex string

String containing the regex.

ValidateRegexResponse

The response of the regex validation

FieldTypeLabelDescription
error_messages string repeated

Error messages

Enums

ReannotateEntitiesOptions

Encapsulates entity re-annotation options

NameNumberDescription
REANNOTATE_NEVER 0

Never re-annotate training phrases

REANNOTATE_ALWAYS 1

Always re-annotate training phrases

REANNOTATE_IF_EMPTY 2

Re-annotate training phrases if there are no annotations

REANNOTATE_AFTER_DELETION 3

Re-annotate if training phrases have been deleted

REANNOTATE_IF_EMPTY_OR_AFTER_DELETION 4

Re-annotate if there are no annotations or if training phrases have been deleted

ondewo/nlu/webhook.proto

Top

Services

Webhook

service to send requests to a webhook server

Service Methods

ResponseRefinement

rpc ResponseRefinement (WebhookRequest) returns (WebhookResponse)
send a request for /response_refinement/ to the webhook server fulfillment messages can be overwritten by the webhook server

SlotFilling

rpc SlotFilling (WebhookRequest) returns (WebhookResponse)
send a request for /slot_filling/ to the webhook server parameter values can be provided & context information can be changed by the webhook server

Ping

rpc Ping (PingRequest) returns (PingResponse)
send a Ping to the webhook server to verify server health will return True if http status_code==200 is detected in the response

CreateSessionEntityType

rpc CreateSessionEntityType (CreateSessionEntityTypeRequest) returns (SessionEntityType)
Creates a session entity type. If the specified session entity type already exists, overrides the session entity type. This method doesn't work with Google Assistant integration. Contact Dialogflow support if you need to use session entities with Google Assistant integration.

UpdateSessionEntityType

rpc UpdateSessionEntityType (UpdateSessionEntityTypeRequest) returns (SessionEntityType)
Updates the specified session entity type. This method doesn't work with Google Assistant integration. Contact Dialogflow support if you need to use session entities with Google Assistant integration.

DeleteSessionEntityType

rpc DeleteSessionEntityType (DeleteSessionEntityTypeRequest) returns (.google.protobuf.Empty)
Deletes the specified session entity type. This method doesn't work with Google Assistant integration. Contact Dialogflow support if you need to use session entities with Google Assistant integration.

Methods with HTTP bindings

Method Name Method Pattern Body
ResponseRefinement POST /{session=projects/*/agent/sessions/*}:responseRefinement *
SlotFilling POST /{session=projects/*/agent/sessions/*}:slotFilling *
Ping GET /projects/*/agent/webhook:ping
Messages

CreateSessionEntityTypeRequest

The request message for Webhook.CreateSessionEntityType

FieldTypeLabelDescription
parent string

Required. The agent to list all intents from. Format:

projects/<project_uuid>/agent

session_entity_type SessionEntityType

Required. The session entity type to create.

session_id string

Required. The session to create a session entity type for. Format:

projects/<project_uuid>/agents/sessions/<session_uuid>
or
projects/<project_uuid>/agents/sessions/<session_uuid>
projects/<project_uuid>/agent/environments/<environment_uuid>/users/<user_uuid>/ sessions/<session_uuid>. If Environment ID is not specified, we assume default 'draft' environment. If User ID is not specified, we assume default '-' user. Required. The project that the agent to fetch is associated with. The session to create a session entity type for. Format:
projects/<project_uuid>/agents/sessions/<session_uuid>

DeleteSessionEntityTypeRequest

The request message for Webhook.DeleteSessionEntityType.

FieldTypeLabelDescription
name string

Required. The name of the entity type to delete. Format: projects/<project_uuid>/agent/sessions/<session_uuid>/entityTypes/<Entity Type Display Name> or projects/<project_uuid>/agent/environments/ <<environment_uuid>/users/<user_uuid>/sessions/<session_uuid>/entityTypes/<Entity Type Display Name>. If Environment ID is not specified, we assume default 'draft' environment. If User ID is not specified, we assume default '-' user.

GetSessionEntityTypeRequest

The request message for Webhook.GetSessionEntityType.

FieldTypeLabelDescription
name string

Required. The name of the session entity type. Format: projects/<project_uuid>/agent/sessions/<session_uuid>/entityTypes/<Entity Type Display Name> or projects/<project_uuid>/agent/environments/ <<environment_uuid>/users/<user_uuid>/sessions/<session_uuid>/entityTypes/<Entity Type Display Name>. If Environment ID is not specified, we assume default 'draft' environment. If User ID is not specified, we assume default '-' user.

ListSessionEntityTypesRequest

The request message for Webhook.ListSessionEntityTypes.

FieldTypeLabelDescription
parent string

Required. The session to list all session entity types from. Format: projects/<project_uuid>/agent/sessions/<session_uuid> or projects/<project_uuid>/agent/environments/<environment_uuid>/users/<user_uuid>/ sessions/<session_uuid>. If Environment ID is not specified, we assume default 'draft' environment. If User ID is not specified, we assume default '-' user.

page_size int32

Optional. The maximum number of items to return in a single page. By default 100 and at most 1000.

page_token string

Optional: The page token to support pagination. Pagination allows you to retrieve a large result set in smaller, more manageable portions. The page token is a string representing the current index and page size. Valid page token strings:

  • "" (empty string) - Retrieves the first page.
  • "current_index-0--page_size-20" - Retrieves the first page with a page size of 20.
  • "current_index-1--page_size-20" - Retrieves the second page with a page size of 20.
Index starts at 0. Examples of valid page token strings:
  • ""
  • "current_index-0--page_size-20"
  • "current_index-1--page_size-20"
  • "current_index-10--page_size-20"
Examples of invalid page token strings:
  • "1"
  • "current_index-0--page_size-20"
  • "current_index--1--page_size-20"
  • "current_index1--page_size-20"
  • "current_index-1--page_size--20"

ListSessionEntityTypesResponse

The response message for Webhook.ListSessionEntityTypes.

FieldTypeLabelDescription
session_entity_types SessionEntityType repeated

The list of session entity types. There will be a maximum number of items returned based on the page_size field in the request.

next_page_token string

The next_page_token is used to retrieve the next page of a returned result, e.g. next_page_token is current_index-2

OriginalDetectIntentRequest

Represents the contents of the original request that was passed to the [Streaming]DetectIntent call.

FieldTypeLabelDescription
source string

The source of this request, e.g., google, facebook, slack or other "platforms". . Used to identify the "platform"

payload google.protobuf.Struct

Optional. This field is set to the value of the QueryParameters.payload field passed in the request. Some integrations that query an agent may provide additional data in the payload. In particular this can be of the form:

{
 "a": {
   "b": "c"
 }
}

PingRequest

request sent for webhook ping

FieldTypeLabelDescription
session string

session ID for webhook ping

PingResponse

This message is a response of pinging

FieldTypeLabelDescription
is_reachable bool

This is the response message of a Ping request. It's purpose is to report the reachability of a Webhook server.

SessionEntityType

A session represents a conversation between a Dialogflow agent and an end-user. You can create special entities, called session entities, during a session. Session entities can extend or replace custom entity types and only exist during the session that they were created for. All session data, including session entities, is stored by Dialogflow for 20 minutes.

For more information, see the session entity guide.

FieldTypeLabelDescription
name string

Required. The unique identifier of this session entity type. Format: projects/<project_uuid>/agent/sessions/<session_uuid>/entityTypes/<Entity Type Display Name>, or projects/<project_uuid>/agent/environments/ <<environment_uuid>/users/<user_uuid>/sessions/<session_uuid>/entityTypes/<Entity Type Display Name>. If Environment ID is not specified, we assume default 'draft' environment. If User ID is not specified, we assume default '-' user. <Entity Type Display Name> must be the display name of an existing entity type in the same agent that will be overridden or supplemented.

entity_override_mode SessionEntityType.EntityOverrideMode

Required. Indicates whether the additional data should override or supplement the custom entity type definition.

entities EntityType.Entity repeated

Required. The collection of entities associated with this session entity type.

UpdateSessionEntityTypeRequest

The request message for Webhook.UpdateSessionEntityType.

FieldTypeLabelDescription
session_entity_type SessionEntityType

Required. The session entity type to update.

update_mask google.protobuf.FieldMask

Optional. The mask to control which fields get updated.

WebhookRequest

The request message for a webhook call.

FieldTypeLabelDescription
response_id string

The unique identifier of the response. Contains the same value as [Streaming]DetectIntentResponse.response_id.

query_result QueryResult

The result of the conversational query or event processing. Contains the same value as [Streaming]DetectIntentResponse.query_result.

original_detect_intent_request OriginalDetectIntentRequest

Optional. The contents of the original request that was passed to [Streaming]DetectIntent call.

session string

The unique identifier of detectIntent request session. Can be used to identify end-user inside webhook implementation. Format:

projects/<project_uuid>/agent/sessions/<session_uuid>

headers google.protobuf.Struct

Optional. The headers of the request message

WebhookResponse

The response message for a webhook call.

FieldTypeLabelDescription
fulfillment_text string

Optional. The text to be shown on the screen. This value is passed directly to QueryResult.fulfillment_text.

fulfillment_messages Intent.Message repeated

Optional. The collection of rich messages to present to the user. This value is passed directly to QueryResult.fulfillment_messages.

source string

Optional. This value is passed directly to QueryResult.webhook_source.

payload google.protobuf.Struct

Optional. This value is passed directly to QueryResult.webhook_payload. See the related fulfillment_messages[i].payload field, which may be used as an alternative to this field. This field can be used for Actions on Google responses. It should have a structure similar to the JSON message shown here. For more information, see Actions on Google Webhook Format

{
  "google": {
    "expectUserResponse": true,
    "richResponse": {
      "items": [
        {
          "simpleResponse": {
            "textToSpeech": "this is a simple response"
          }
        }
      ]
    }
  }
}

output_contexts Context repeated

Optional. The collection of output contexts. This value is passed directly to QueryResult.output_contexts.

followup_event_input EventInput

Optional. Makes the platform immediately invoke another DetectIntent call internally with the specified event as input.

session_entity_types SessionEntityType repeated

Optional. Additional session entity types to replace or extend developer entity types with. The entity synonyms apply to all languages and persist for the session. Setting this data from a webhook overwrites the session entity types that have been set using detectIntent method.

Enums

SessionEntityType.EntityOverrideMode

The types of modifications for a session entity type.

NameNumberDescription
ENTITY_OVERRIDE_MODE_UNSPECIFIED 0

Not specified. This value should be never used.

ENTITY_OVERRIDE_MODE_OVERRIDE 1

The collection of session entities overrides the collection of entities in the corresponding custom entity type.

ENTITY_OVERRIDE_MODE_SUPPLEMENT 2

The collection of session entities extends the collection of entities in the corresponding custom entity type. Note: Even in this override mode calls to ListSessionEntityTypes, GetSessionEntityType, CreateSessionEntityType and UpdateSessionEntityType only return the additional entities added in this session entity type. If you want to get the supplemented list, please call EntityTypes.GetEntityType on the custom entity type and merge.

ondewo/s2t/speech-to-text.proto

Top

Services

Speech2Text

Speech-to-text service

Service Methods

TranscribeFile

rpc TranscribeFile (TranscribeFileRequest) returns (TranscribeFileResponse)

Transcribes an audio file

TranscribeStream

rpc TranscribeStream (stream TranscribeStreamRequest) returns (stream TranscribeStreamResponse)

Transcribes an audio stream.

GetS2tPipeline

rpc GetS2tPipeline (S2tPipelineId) returns (Speech2TextConfig)

Gets a speech to text pipeline corresponding to the id specified in S2tPipelineId. If no corresponding id is found, raises ModuleNotFoundError in server.

CreateS2tPipeline

rpc CreateS2tPipeline (Speech2TextConfig) returns (S2tPipelineId)

Creates a new speech to text pipeline from a Speech2TextConfig and registers the new pipeline in the server.

DeleteS2tPipeline

rpc DeleteS2tPipeline (S2tPipelineId) returns (.google.protobuf.Empty)

Deletes a pipeline corresponding to the id parsed in S2tPipelineId. If no corresponding id is found, raises ModuleNotFoundError in server.

UpdateS2tPipeline

rpc UpdateS2tPipeline (Speech2TextConfig) returns (.google.protobuf.Empty)

Updates a pipeline with the id specified in Speech2TextConfig with the new config. If no corresponding id is found, raises ModuleNotFoundError in server.

ListS2tPipelines

rpc ListS2tPipelines (ListS2tPipelinesRequest) returns (ListS2tPipelinesResponse)

Lists all speech to text pipelines.

ListS2tLanguages

rpc ListS2tLanguages (ListS2tLanguagesRequest) returns (ListS2tLanguagesResponse)

Returns a message containing a list of all languages for which there exist pipelines.

ListS2tDomains

rpc ListS2tDomains (ListS2tDomainsRequest) returns (ListS2tDomainsResponse)

Returns a message containing a list of all domains for which there exist pipelines.

GetServiceInfo

rpc GetServiceInfo (.google.protobuf.Empty) returns (S2tGetServiceInfoResponse)

Returns a message containing the version of the running speech to text server.

ListS2tLanguageModels

rpc ListS2tLanguageModels (ListS2tLanguageModelsRequest) returns (ListS2tLanguageModelsResponse)

Given a list of pipeline ids, returns a list of LanguageModelPipelineId messages containing the pipeline id and a list of the language models loaded in the pipeline.

CreateUserLanguageModel

rpc CreateUserLanguageModel (CreateUserLanguageModelRequest) returns (.google.protobuf.Empty)

Create a user language model.

DeleteUserLanguageModel

rpc DeleteUserLanguageModel (DeleteUserLanguageModelRequest) returns (.google.protobuf.Empty)

Delete a user language model.

AddDataToUserLanguageModel

rpc AddDataToUserLanguageModel (AddDataToUserLanguageModelRequest) returns (.google.protobuf.Empty)

Add data to a user language model.

TrainUserLanguageModel

rpc TrainUserLanguageModel (TrainUserLanguageModelRequest) returns (.google.protobuf.Empty)

Train a user language model.

ListS2tNormalizationPipelines

rpc ListS2tNormalizationPipelines (ListS2tNormalizationPipelinesRequest) returns (ListS2tNormalizationPipelinesResponse)

Retrieves a list of normalization pipelines based on specific requirements.

Messages

AcousticModels

AcousticModels contains information about different types of acoustic models.

FieldTypeLabelDescription
type string

Type of the acoustic model.

wav2vec Wav2Vec

Configuration for the Wav2Vec model.

wav2vec_triton Wav2VecTriton

Configuration for the Wav2Vec model using Triton.

whisper Whisper

Configuration for the Whisper model.

whisper_triton WhisperTriton

Configuration for the Whisper model using Triton.

s2t_cloud_service_amazon S2tCloudServiceAmazon

Amazon web service cloud service inference settings.

s2t_cloud_service_deepgram S2tCloudServiceDeepgram

Deepgram cloud service inference settings.

s2t_cloud_service_google S2tCloudServiceGoogle

Google cloud service inference settings.

s2t_cloud_service_microsoft S2tCloudServiceMicrosoft

Microsoft Azure cloud service inference settings.

AddDataToUserLanguageModelRequest

AddDataToUserLanguageModelRequest is used to request the addition of data to a user-specific language model.

FieldTypeLabelDescription
language_model_name string

Name of the language model to which to add data. Example: "user_lm_1"

zipped_data bytes

Zip file containing data in the form of text files. Example: A zip file with text files containing sentences or phrases in the target language.

CkptFile

CkptFile contains information about checkpoint files.

FieldTypeLabelDescription
path string

Path to the checkpoint file.

CreateUserLanguageModelRequest

CreateUserLanguageModelRequest is used to request the creation of a new user-specific language model.

FieldTypeLabelDescription
language_model_name string

Name of the language model to create. Example: "user_lm_1"

DeleteUserLanguageModelRequest

DeleteUserLanguageModelRequest is used to request the deletion of a user-specific language model.

FieldTypeLabelDescription
language_model_name string

Name of the language model to delete. Example: "user_lm_1"

LanguageModelPipelineId

LanguageModelPipelineId contains information about a pipeline and its available language models.

FieldTypeLabelDescription
pipeline_id string

A pipeline ID. Example: "pipeline_1"

model_names string repeated

A list of all available language models for the corresponding pipeline ID. Example: ["model_1", "model_2"]

LanguageModels

LanguageModels contains information about language models.

FieldTypeLabelDescription
path string

Path to the directory of language models.

beam_size int64

Beam size for the search algorithm.

default_lm string

Default language model to be selected if none is given.

beam_search_scorer_alpha float

Weight for the language model scorer (alpha).

beam_search_scorer_beta float

Weight for the word insertion penalty (beta).

ListS2tDomainsRequest

Request message to list available domains. Optionally also filters can be set.

FieldTypeLabelDescription
languages string repeated

Filter for languages

pipeline_owners string repeated

Filter for pipeline owner

ListS2tDomainsResponse

Response message to list available domains

FieldTypeLabelDescription
domains string repeated

domains available. Example: ["medical", "finance"]

ListS2tLanguageModelsRequest

ListS2tLanguageModelsRequest is used to request a list of available language models for specified pipelines.

FieldTypeLabelDescription
ids string repeated

List of pipeline IDs to retrieve their available language models. Example: ["pipeline_1", "pipeline_2"]

ListS2tLanguageModelsResponse

ListS2tLanguageModelsResponse is used to return the available language models for specified pipelines.

FieldTypeLabelDescription
lm_pipeline_ids LanguageModelPipelineId repeated

Response is a list of LanguageModelPipelineId, where each element contains a pipeline ID and its associated language models. Example: [{pipeline_id: "pipeline_1", model_names: ["model_1", "model_2"]}, {pipeline_id: "pipeline_2", model_names: ["model_3"]}]

ListS2tLanguagesRequest

ListS2tLanguagesRequest is used to request a list of available languages. Optionally, filters can be set.

FieldTypeLabelDescription
domains string repeated

Filter for domains. Example: ["medical", "finance"]

pipeline_owners string repeated

Filter for pipeline owners. Example: ["ondewo", "partner_company"]

ListS2tLanguagesResponse

Response message to list available languages

FieldTypeLabelDescription
languages string repeated

available languages

ListS2tNormalizationPipelinesRequest

The request message for ListS2tNormalizationPipelines.

Filter pipelines by attributes in request.

FieldTypeLabelDescription
language string

Optional. Define the language.

ListS2tNormalizationPipelinesResponse

The response message for ListS2tNormalizationPipelines.

FieldTypeLabelDescription
s2t_normalization_pipelines string repeated

Required. Representation of a list of normalization pipelines configurations. Retrieved by ListS2tNormalizationPipelines, containing the configurations of normalization pipelines with the specifications received in the ListS2tNormalizationPipelinesRequest.

ListS2tPipelinesRequest

Request to list all speech-to-text pipelines. Optionally also filter criteria can be set

FieldTypeLabelDescription
languages string repeated

Filter for languages

pipeline_owners string repeated

Filter for pipeline owners

domains string repeated

Filter for domains

registered_only bool

If true, return only registered pipelines. Default false: return registered and persisted (from config files) configs.

ListS2tPipelinesResponse

ListS2tPipelinesResponse is used to return a list of all speech-to-text pipelines.

FieldTypeLabelDescription
pipeline_configs Speech2TextConfig repeated

A list of Speech2TextConfig message instances containing the configuration of each pipeline. Example: [{id: "pipeline_1", description: {language: "en"}, active: true, ...}, {id: "pipeline_2", description: {language: "fr"}, active: true, ...}]

Logging

Logging contains configuration for logging.

FieldTypeLabelDescription
type string

Type of logging.

path string

Path for logging.

OpenaiLlmOptions

Configuration options for OpenAI client chat completion requests used in turn detection and LLM post-processing.

FieldTypeLabelDescription
api_key string optional

Optional. The API key used to authenticate with the OpenAI API.

organization string optional

Optional. The organization ID associated with the OpenAI account, used for billing and access control.

project string optional

Optional. The project ID associated with the OpenAI account.

webhook_secret string optional

Optional. The webhook secret used to validate incoming webhook events from OpenAI.

base_url string optional

Optional. The base URL for the OpenAI API. Overrides the default endpoint, useful for proxies or compatible third-party providers.

websocket_base_url string optional

Optional. The base URL for OpenAI WebSocket connections. Overrides the default WebSocket endpoint.

timeout float optional

Optional. The timeout in seconds for requests to the OpenAI API. Applies to the entire request lifecycle including connection, sending, and receiving.

max_retries int32 optional

Optional. The maximum number of retries to attempt when a request fails due to a transient error. Defaults to 2.

default_headers OpenaiLlmOptions.DefaultHeadersEntry repeated

Optional. Default HTTP headers to include with every request to the OpenAI API.

default_query google.protobuf.Struct optional

Optional. Default query parameters to append to every request URL sent to the OpenAI API. Values can be of any type (string, number, boolean, list), hence the use of Struct.

strict_response_validation bool optional

Optional. If true, enables strict validation of response payloads returned by the OpenAI API.

model string optional

Required. The name or identifier of the OpenAI model to use for chat completion (e.g., "gpt-4o", "gpt-4o-mini", "o3").

frequency_penalty float optional

Optional. A number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the likelihood of the model repeating the same line verbatim.

logit_bias OpenaiLlmOptions.LogitBiasEntry repeated

Optional. Modifies the likelihood of specified tokens appearing in the completion. Maps token IDs (as strings) to bias values from -100 to 100. Mathematically added to the logits before sampling.

logprobs bool optional

Optional. Whether to return log probabilities of the output tokens. If true, returns the log probabilities of each output token in the response.

max_completion_tokens int32 optional

Optional. An upper bound for the number of tokens that can be generated for a completion, including visible output tokens and reasoning tokens.

max_tokens int32 optional

Optional. The maximum number of tokens that can be generated in the chat completion. Deprecated in favor of max_completion_tokens.

metadata google.protobuf.Struct optional

Optional. Developer-defined tags and values used for filtering completions in the OpenAI dashboard.

n int32 optional

Optional. The number of chat completion choices to generate for each input message. Note that costs are multiplied by the number of choices generated.

presence_penalty float optional

Optional. A number between -2.0 and 2.0. Positive values penalize new tokens based on whether they have already appeared in the text, increasing the likelihood of the model discussing new topics.

prompt_cache_key string optional

Optional. A stable key used to enable prompt caching for identical prompt prefixes, reducing latency and cost on repeated requests.

reasoning_effort ReasoningEffort optional

Optional. Constrains the effort level for reasoning models (e.g., o1, o3). Controls the trade-off between speed and quality.

seed int64 optional

Optional. If specified, the system will make a best effort to sample deterministically given the same seed and parameters, enabling reproducible outputs.

service_tier ServiceTier optional

Optional. Specifies the latency tier to use for processing the request. Affects cost and throughput.

stop string repeated

Optional. Up to 4 sequences where the API will stop generating further tokens. The returned text will not contain the stop sequence.

store bool optional

Optional. Whether to store the output of this chat completion request for use in model distillation, evals, or the stored completions dashboard.

temperature float optional

Optional. What sampling temperature to use, between 0 and 2. Higher values (e.g., 0.8) make the output more random, while lower values (e.g., 0.2) make it more focused and deterministic.

top_logprobs int32 optional

Optional. An integer between 0 and 20 specifying the number of most likely tokens to return at each token position, each with an associated log probability. Requires logprobs to be true.

top_p float optional

Optional. An alternative to sampling with temperature, called nucleus sampling. The model considers only the tokens with top_p probability mass. Ranges from 0 to 1.

user string optional

Optional. A unique identifier representing the end-user, which helps OpenAI monitor and detect abuse.

verbosity Verbosity optional

Optional. The verbosity level for the response output.

extra_headers google.protobuf.Struct optional

Optional. Additional HTTP headers to send with the request. These are merged with and override default_headers for this specific request only.

extra_query google.protobuf.Struct optional

Optional. Additional query parameters to send with the request. These are merged with and override default_query for this specific request only.

extra_body google.protobuf.Struct optional

Optional. Additional JSON properties to include in the request body. Useful for accessing new or undocumented API parameters.

OpenaiLlmOptions.DefaultHeadersEntry

FieldTypeLabelDescription
key string

value string

OpenaiLlmOptions.LogitBiasEntry

FieldTypeLabelDescription
key string

value int32

PostProcessing

PostProcessing contains the configuration for post-processing.

FieldTypeLabelDescription
pipeline string repeated

List of names of active post-processors.

post_processors PostProcessors

Post-processor configurations.

PostProcessingOptions

Configuration of the post-processing options

FieldTypeLabelDescription
spelling_correction bool

Whether to use spelling correction

normalize bool

Whether to disable normalization

config PostProcessing

Post-processing configuration specifying the active post-processors in the pipeline, as well as their individual configuration. If not set, all values are replaced by the ones in current pipeline.

llm_post_processing bool

Whether to disable LLM post-processing

PostProcessors

PostProcessors contains configurations for post-processors.

FieldTypeLabelDescription
sym_spell SymSpell

Configuration of the SymSpell spelling correction.

normalization S2tNormalization

Configuration of the normalization object.

llm_post_processing S2tLlmPostProcessing

Configuration of the LLM post-processing.

PtFiles

PtFiles contains information about PT files.

FieldTypeLabelDescription
path string

Path to the PT files.

step string

Step for the PT files.

Pyannote

Pyannote contains configuration for the Pyannote voice activity detection model.

Library: pyannote-audio

FieldTypeLabelDescription
model_name string

Full name of the Pyannote model.

min_audio_size int64

Minimum audio size for processing.

min_duration_off float

Fill inactive regions shorter than that many seconds. Example notebook

min_duration_on float

Remove active regions shorter than that many seconds. Example notebook

triton_server_host string

Host name of triton inference server that serves the Pyannote model

triton_server_port int64

Port number of triton inference server that serves the Pyannote model

S2tCloudProviderConfig

Configuration for cloud provider settings for Speech-to-Text (S2T).

FieldTypeLabelDescription
s2t_cloud_provider_config_amazon S2tCloudProviderConfigAmazon optional

Optional. Configuration for Amazon web service speech-to-text provider.

s2t_cloud_provider_config_deepgram S2tCloudProviderConfigDeepgram optional

Optional. Configuration for DeepGram speech-to-text provider.

s2t_cloud_provider_config_google S2tCloudProviderConfigGoogle optional

Optional. Configuration for Google speech-to-text provider.

s2t_cloud_provider_config_microsoft S2tCloudProviderConfigMicrosoft optional

Optional. Configuration for Microsoft Azure speech-to-text provider.

S2tCloudProviderConfigAmazon

Configuration details specific to the Amazon web service speech-to-text provider.

FieldTypeLabelDescription
enable_partial_results_stabilization bool optional

Optional. Enables or disables partial_results_stabilization feature. More details at: https://docs.aws.amazon.com/transcribe/latest/dg/streaming-partial-results.html#streaming-partial-result-stabilization

partial_results_stability string optional

Optional. You can use this field to set the stability level of the transcription results. A higher stability level means that the transcription results are less likely to change. Higher stability levels can come with lower overall transcription accuracy. Acceptable values: ["low", "medium", "high"]. Defaults to "high" if not set explicitly. More details at: https://aws.amazon.com/blogs/machine-learning/amazon-transcribe-now-supports-partial-results-stabilization-for-streaming-audio/

language_model_name string optional

Optional. The name of your customize language model you want to use. More details at: https://docs.aws.amazon.com/transcribe/latest/dg/custom-language-models.html

vocabulary_name string optional

Optional. The name of your customize vocabulary you want to use. More details at: https://docs.aws.amazon.com/transcribe/latest/dg/custom-vocabulary.html

S2tCloudProviderConfigDeepgram

Configuration details specific to the Deepgram speech-to-text provider.

FieldTypeLabelDescription
punctuate bool optional

Optional. Enables or disables punctuate feature of Deepgram to add punctuations to the resulted transcript. More details at: https://developers.deepgram.com/docs/punctuation

smart_format bool optional

Optional. Enables or disables smart_format feature of Deepgram transcription result to improve readability. More details at: https://developers.deepgram.com/docs/smart-format

numerals bool optional

Optional. Enables or disables numerals feature of Deepgram to convert numbers to numeric form in the resulted transcript. More details at: https://developers.deepgram.com/docs/numerals

measurements bool optional

Optional. Enables or disables measurements feature of Deepgram to convert measurement units (i.e. Kilogram) to abbreviated form (i.e. Kg) in the resulted transcript. More details at: https://developers.deepgram.com/docs/measurements

dictation bool optional

Optional. Enables or disables dictation feature of Deepgram to convert spoken dictation commands into their corresponding punctuation marks. More details at: https://developers.deepgram.com/docs/dictation

S2tCloudProviderConfigGoogle

Configuration details specific to the Google speech-to-text provider.

FieldTypeLabelDescription
enable_automatic_punctuation bool optional

Optional. Enables or disables automatic_punctuation feature of Google s2t to add punctuations to the resulted transcript. More details at: https://cloud.google.com/speech-to-text/docs/automatic-punctuation

enable_word_time_offsets bool optional

Optional. Enables or disables word_time_offsets feature of Google s2t to add word-level timestamps (time-offset) to the resulted transcript. More details at: https://cloud.google.com/speech-to-text/docs/async-time-offsets

enable_word_confidence bool optional

Optional. Enables or disables word_confidence feature of Google s2t to add word-level confidence scores to the resulted transcript. More details at: https://cloud.google.com/speech-to-text/docs/word-confidence

transcript_normalization bool optional

Optional. Enables or disables transcript_normalization feature of Google s2t to automatically replace parts of the transcript with phrases of your choosing. More details at: https://cloud.google.com/speech-to-text/v2/docs/reference/rpc/google.cloud.speech.v2#transcriptnormalization

max_alternatives int32 optional

Optional. Maximum number of recognition hypotheses to be returned, may be returned fewer than max_alternatives. Valid values are 0-30. A value of 0 or 1 will return a maximum of one. If omitted, will return a maximum of one.

S2tCloudProviderConfigMicrosoft

Configuration details specific to the Microsoft Azure speech-to-text provider.

FieldTypeLabelDescription
use_fast_transcription_api bool optional

Optional. Enables or disables the Microsoft Azure fast transcription API. It is faster than SDK but is in preview version. More details at: https://learn.microsoft.com/en-us/azure/ai-services/speech-service/fast-transcription-create

use_detailed_output_format bool optional

Optional. Enables or disables the detailed format for the result of Microsoft Azure s2t service to add timestamps and confidences to the resulted transcript.

S2tCloudServiceAmazon

S2tCloudServiceAmazon message contains settings for the Amazon web service Cloud service inference.

FieldTypeLabelDescription
language string

Language of the audio to transcribe by Amazon web service s2t cloud service. It should be 4-letter language code (BCP-47) e.g. 'en-US' or 'de-DE'.

streaming_available bool

Specifies if streaming mode of Amazon web service speech to text is available for the selected language, otherwise batch mode transcription is used. See the list of languages and available transcription modes at: https://docs.aws.amazon.com/transcribe/latest/dg/supported-languages.html

enable_partial_results_stabilization bool

Enables or disables partial_results_stabilization feature. More details at: https://docs.aws.amazon.com/transcribe/latest/dg/streaming-partial-results.html#streaming-partial-result-stabilization

partial_results_stability string

You can use this field to set the stability level of the transcription results. A higher stability level means that the transcription results are less likely to change. Higher stability levels can come with lower overall transcription accuracy. Defaults to "high" if not set explicitly.

language_model_name string

The name of your customize language model you want to use. More details at: https://docs.aws.amazon.com/transcribe/latest/dg/custom-language-models.html

vocabulary_name string

The name of your customize vocabulary you want to use. More details at: https://docs.aws.amazon.com/transcribe/latest/dg/custom-vocabulary.html

S2tCloudServiceDeepgram

S2tCloudServiceDeepgram message contains settings for the Deepgram Cloud service inference.

FieldTypeLabelDescription
model_name string

Model name from one of the speech-to-text models provided by Deepgram for the desired use-case. Provided model names and details at: https://developers.deepgram.com/docs/model

language string

Language of the audio to transcribe by Deepgram s2t cloud service. It should be 4-letter language code (BCP-47) e.g. 'en-US' or 'de-DE'.

punctuate bool

Enables or disables punctuate feature of Deepgram to add punctuations to the resulted transcript. More details at: https://developers.deepgram.com/docs/punctuation

smart_format bool

Enables or disables smart_format feature of Deepgram transcription result to improve readability. More details at: https://developers.deepgram.com/docs/smart-format

numerals bool

Enables or disables numerals feature of Deepgram to convert numbers to numeric form in the resulted transcript. More details at: https://developers.deepgram.com/docs/numerals

measurements bool

Enables or disables measurements feature of Deepgram to convert measurement units (i.e. Kilogram) to abbreviated form (i.e. Kg) in the resulted transcript. More details at: https://developers.deepgram.com/docs/measurements

dictation bool

Enables or disables dictation feature of Deepgram to convert spoken dictation commands into their corresponding punctuation marks. More details at: https://developers.deepgram.com/docs/dictation

S2tCloudServiceGoogle

S2tCloudServiceGoogle message contains settings for the Google Cloud service inference.

FieldTypeLabelDescription
model_name string

Model name from one of the speech-to-text models provided by Google for the desired use-case. Provided model names and details at: https://cloud.google.com/speech-to-text/docs/transcription-model

language string

Language of the audio to transcribe by Google s2t cloud service. It should be 4-letter language code (BCP-47) e.g. 'en-US' or 'de-DE'.

enable_automatic_punctuation bool

Enables or disables automatic_punctuation feature of Google s2t to add punctuations to the resulted transcript. More details at: https://cloud.google.com/speech-to-text/docs/automatic-punctuation

enable_word_time_offsets bool

Enables or disables word_time_offsets feature of Google s2t to add word-level timestamps (time-offsets) to the resulted transcript. More details at: https://cloud.google.com/speech-to-text/docs/async-time-offsets

enable_word_confidence bool

Enables or disables word_confidence feature of Google s2t to add word-level confidence scores to the resulted transcript. More details at: https://cloud.google.com/speech-to-text/docs/word-confidence

transcript_normalization bool

Enables or disables transcript_normalization feature of Google s2t to automatically replace parts of the transcript with phrases of your choosing. More details at: https://cloud.google.com/speech-to-text/v2/docs/reference/rpc/google.cloud.speech.v2#transcriptnormalization

max_alternatives int32

Maximum number of recognition hypotheses to be returned. The server may return fewer than max_alternatives. Valid values are 0-30. A value of 0 or 1 will return a maximum of one. If omitted, will return a maximum of one.

S2tCloudServiceMicrosoft

S2tCloudServiceMicrosoft message contains settings for the Microsoft Azure Cloud service inference.

FieldTypeLabelDescription
language string

Language of the audio to transcribe by Microsoft Azure s2t cloud service. It should be 4-letter language code (BCP-47) e.g. 'en-US' or 'de-DE'.

use_fast_transcription_api bool

Enables or disables the Microsoft Azure fast transcription API. It is faster than SDK but is in preview version. More details at: https://learn.microsoft.com/en-us/azure/ai-services/speech-service/fast-transcription-create

use_detailed_output_format bool

Enables or disables the detailed format for the result of Microsoft Azure s2t service to add timestamps and confidences to the resulted transcript.

S2tDescription

S2tDescription contains descriptive information about the speech-to-text pipeline.

FieldTypeLabelDescription
language string

Language of the speech-to-text system.

pipeline_owner string

Owner of the pipeline.

domain string

Domain of the speech-to-text system.

comments string

Comments about the system.

S2tGetServiceInfoResponse

S2tGetServiceInfoResponse is used to return version information about the speech-to-text service.

FieldTypeLabelDescription
version string

Version number based on semantic versioning, e.g. "4.2.0".

S2tInference

S2tInference contains information about inference models used in the speech-to-text pipeline.

FieldTypeLabelDescription
acoustic_models AcousticModels

Configuration for the acoustic models.

language_models LanguageModels

Configuration for the language models.

inference_backend InferenceBackend

Configuration for the inference backend.

S2tLlmPostProcessing

S2tLlmPostProcessing contains configuration for the speech-to-text postprocessing with LLM.

FieldTypeLabelDescription
s2t_llm_post_processing_openai_options OpenaiLlmOptions optional

Optional. Configuration options for the OpenAI client used for post-processing.

s2t_llm_post_processing_system_prompt string optional

Optional. System prompt used to guide the LLM model for post-processing.

s2t_llm_post_processing_ending_prompt string optional

Optional. Ending prompt appended to the accumulated prompts of the active post-processing tasks.

s2t_llm_post_processing_casing_options S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the options to casing task in LLM post-processing.

s2t_llm_post_processing_punctuation_options S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the options to punctuation task in LLM post-processing.

s2t_llm_post_processing_spelling_correction_options S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the options to spelling-correction task in LLM post-processing.

s2t_llm_post_processing_semantic_correction_options S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the options to semantic-correction task in LLM post-processing.

s2t_llm_post_processing_translation_options S2tLlmPostProcessingTranslationOptions optional

Optional. Configuration of the options to translation task in LLM post-processing.

s2t_llm_post_processing_inverse_normalization_options S2tLlmPostProcessingInverseNormalizationOptions optional

Optional. Configuration of the options to inverse-normalization task in LLM post-processing.

s2t_llm_post_processing_normalization_options S2tLlmPostProcessingNormalizationOptions optional

Optional. Configuration of the options to normalization task in LLM post-processing.

s2t_llm_post_processing_summarization_options S2tLlmPostProcessingSummarizationOptions optional

Optional. Configuration of the options to summarization task in LLM post-processing.

s2t_llm_post_processing_user_prompt_options S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the options to user-prompt task in LLM post-processing.

S2tLlmPostProcessingInverseNormalizationOptions

Configuration of the options to inverse-normalization task in LLM post-processing.

FieldTypeLabelDescription
active bool optional

Optional. Indicates if the inverse-normalization task of LLM post-processing is active.

email S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the inverse-normalization of email address sub-task.

phone_number S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the inverse-normalization of phone number sub-task.

date_and_time S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the inverse-normalization of date and time sub-task.

credit_card_number S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the inverse-normalization of credit card number sub-task.

social_security_number S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the inverse-normalization of social security number sub-task.

time_zone S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the inverse-normalization of time zone sub-task.

S2tLlmPostProcessingNormalizationOptions

Configuration of the options to normalization task in LLM post-processing.

FieldTypeLabelDescription
active bool optional

Optional. Indicates if the normalization task of LLM post-processing is active.

email S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the normalization of email address sub-task.

phone_number S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the normalization of phone number sub-task.

date_and_time S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the normalization of date and time sub-task.

credit_card_number S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the normalization of credit card number sub-task.

social_security_number S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the normalization of social security number sub-task.

time_zone S2tLlmPostProcessingSubTaskOptions optional

Optional. Configuration of the normalization of time zone sub-task.

S2tLlmPostProcessingSubTaskOptions

Common configuration for an individual LLM post-processing sub-task (e.g. email, phone number,

date and time, credit card number, social security number, time zone).

Used by both normalization and inverse-normalization tasks.

FieldTypeLabelDescription
active bool optional

Optional. Indicates if this sub-task is active.

prompt string optional

Optional. Custom prompt to guide the LLM for this sub-task. Overrides the default prompt when set.

S2tLlmPostProcessingSummarizationOptions

Configuration of the options to summarization task in LLM post-processing.

FieldTypeLabelDescription
active bool optional

Optional. Indicates if the summarization task of LLM post-processing is active.

prompt string optional

Optional. Custom prompt to guide the LLM for summarization. Overrides the default prompt when set.

min_chars int32 optional

Optional. Minimum number of characters of the summary generated in summarization task of LLM post-processing.

max_chars int32 optional

Optional. Maximum number of characters of the summary generated in summarization task of LLM post-processing.

S2tLlmPostProcessingTranslationOptions

Configuration of the options to translation task in LLM post-processing.

FieldTypeLabelDescription
active bool optional

Optional. Indicates if the translation task of LLM post-processing is active.

language string optional

Optional. Target language of the translation task of LLM post-processing.

prompt string optional

Optional. Custom prompt to guide the LLM for translation. Overrides the default prompt when set.

S2tNormalization

S2tNormalization contains configuration for the speech-to-text normalization.

FieldTypeLabelDescription
language string

Language for normalization of transcriptions.

pipeline string repeated

List of names of active normalizations.

S2tPipelineId

The pipeline id for a specific pipeline configuration

FieldTypeLabelDescription
id string

id of the model that will generate audio

Speech2TextConfig

Speech2TextConfig is a configuration message for the speech-to-text pipeline

FieldTypeLabelDescription
id string

Unique identifier for the configuration.

description S2tDescription

Description of the speech-to-text system.

active bool

Indicates if the configuration is active.

inference S2tInference

Configuration for inference models.

streaming_server StreamingServer

Configuration for the streaming server.

voice_activity_detection VoiceActivityDetection

Configuration for voice activity detection.

post_processing PostProcessing

Configuration for post-processing.

logging Logging

Configuration for logging.

StreamingServer

StreamingServer contains information about the streaming server.

FieldTypeLabelDescription
host string

Hostname of the streaming server.

port int64

Port number of the streaming server.

output_style string

Output style for the streaming server.

streaming_speech_recognition StreamingSpeechRecognition

Configuration for streaming speech recognition.

StreamingSpeechRecognition

StreamingSpeechRecognition contains information about streaming speech recognition settings.

FieldTypeLabelDescription
transcribe_not_final bool

Indicates whether to transcribe non-final results.

decoding_method string

Decoding method for speech recognition.

sampling_rate int64

Sampling rate for audio input.

min_audio_chunk_size int64

Minimum audio chunk size for processing.

next_chunk_timeout float

Timeout between audio chunks; if exceeded, the stream will be stopped.

turn_detection TurnDetectionOptions

Configuration of the options to turn-detection in utterances

SymSpell

SymSpell contains configuration for the SymSpell spelling correction.

FieldTypeLabelDescription
dict_path string

Path to the dictionary used by symspell

max_dictionary_edit_distance int64

The maximal edit-distance to consider for spelling correction (affects performance - bigger number takes longer to process!)

prefix_length int64

The length (number of characters) of the prefix to consider for filtering

TrainUserLanguageModelRequest

TrainUserLanguageModelRequest is used to request the training of a user-specific language model.

FieldTypeLabelDescription
language_model_name string

Name of the language model to train. Example: "user_lm_1"

order int64

Order n of the ngram. Example: 3 (for trigram model)

TranscribeFileRequest

A request to transcribe an audio file

FieldTypeLabelDescription
audio_file bytes

wav file to transcribe

config TranscribeRequestConfig

The configuration to override the default configuration

TranscribeFileResponse

The response message for a transcribe file request

FieldTypeLabelDescription
transcriptions Transcription repeated

List of transcriptions with confidence level

time float

The time the transcription took

audio_uuid string

id of the transcribed audio file

TranscribeRequestConfig

Configuration for a request to transcribe audio

FieldTypeLabelDescription
s2t_pipeline_id string

Required. id of the pipeline (model setup) that will generate audio

decoding Decoding

Optional. decoding type

language_model_name string

Name of the language model

post_processing PostProcessingOptions

The postprocessing options

utterance_detection UtteranceDetectionOptions

The utterance detection options

pyannote Pyannote

Voice activity detection with pyannote

return_options TranscriptionReturnOptions

The transcribe return options

language string optional

Optional. Specify language of transcription to return

task string optional

Optional. Specify task of s2t model, e.g. 'transcribe' and 'translate'

s2t_service_config google.protobuf.Struct optional

Optional. s2t_service_config provides the configuration of the service such as API key, bearer tokens, JWT, and other header information as key value pairs, e.g.,

MY_API_KEY='LKJDIFe244LKJOI'
For Amazon S2T service, the following arguments should be passed in form of a dict:
  • aws_access_key_id (required) Access key id to access Amazon Web Service.
  • aws_secret_access_key (required) Secret access key to access Amazon Web Service.
  • region (required) Region name of Amazon Server.
Example: s2t_config_service={'aws_access_key_id': 'YOUR_AWS_ACCESS_KEY_ID', 'aws_secret_access_key': 'YOUR_AWS_SECRET_ACCESS_KEY', 'region': 'YOUR_AMAZON_SERVER_REGION_NAME'} For Deepgram S2T service, the following argument should be passed in form of a dict:
  • api_key (required) API key of Deepgram account to access Deepgram S2T service.
Example: s2t_config_service={'api_key': 'YOUR_DEEPGRAM_API_KEY'}
For Google cloud S2T service, the following arguments should be passed in form of a dict:
  • api_key (required) API key of Google cloud to access its S2T service.
  • api_endpoint (optional) Regional API endpoint of Google cloud S2T service. (Defaults to 'eu-speech.googleapis.com')
Example: s2t_config_service={'api_key': 'YOUR_GOOGLE_CLOUD_API_KEY', 'api_endpoint': 'YOUR_GOOGLE_CLOUD_API_ENDPOINT'} For Microsoft Azure S2T service, the following arguments should be passed in form of a dict:
  • subscription_key (required) Subscription key to access Microsoft Azure Service.
  • region (required) Region name of Microsoft Azure Server.
Example: s2t_config_service={'subscription_key': 'YOUR_MICROSOFT_AZURE_SUBSCRIPTION_KEY', 'region': 'YOUR_MICROSOFT_AZURE_SERVER_REGION_NAME'} Note: ondewo-s2t will raise an error if you don't pass any of the required arguments above.

s2t_cloud_provider_config S2tCloudProviderConfig optional

Optional. Defines the cloud provider's specific configuration for using speech to text cloud services. The default value is None.

TranscribeStreamRequest

Request to transcribe an audio stream

FieldTypeLabelDescription
audio_chunk bytes

wav file to transcribe

end_of_stream bool

if it's the final chunk of the stream

config TranscribeRequestConfig

The configuration to override the default configuration

mute_audio bool

Whether or not to mute the audio signal. Defaults to false.

TranscribeStreamResponse

The response message of a stream transcription

FieldTypeLabelDescription
transcriptions Transcription repeated

List of transcriptions with confidence level

time float

The time the transcription took

final bool

Whether or not this transcription is final (transcribed texts might change if transcription is started before the end of an utterance).

return_audio bool

is audio bytes of the utterance in response

audio bytes

audio bytes of the transcribed utterance

utterance_start bool

is it a start of the utterance

audio_uuid string

id of the transcribed audio file

config TranscribeRequestConfig

The configuration for the transcription

Transcription

The transcription message

FieldTypeLabelDescription
transcription string

The transcribed text

confidence_score float

The corresponding confidence score. The confidence estimate between 0.0 and 1.0. A higher number indicates an estimated greater likelihood that the recognized words are correct.

words WordDetail repeated

List of the words of transcription with their confidence scores and probable alternatives

alternatives TranscriptionAlternative repeated

List of alternative transcriptions, confidence scores, words timings and alternative words

TranscriptionAlternative

The alternative transcription message

FieldTypeLabelDescription
transcript string

The alternative transcribed text

confidence float

The corresponding confidence score to the alternative transcript.

words WordDetail repeated

A list of word-specific information for each recognized word, including word timings, confidence score of the word and alternative words.

TranscriptionReturnOptions

Configuration of the return values of a transcribe request

FieldTypeLabelDescription
return_start_of_speech bool

should server make response indicating that the beginning of the speech was detected

return_audio bool

should s2t server return audio bytes of transcribed utterance

return_confidence_score bool

Whether or not to return confidence scores

return_alternative_transcriptions bool

Whether or not to return alternative results from beam-search

return_alternative_transcriptions_nr int32

Optional. Number of alternative transcriptions results from beam-search or greedy-search

return_alternative_words bool

Whether or not to return alternative results from beam-search

return_alternative_words_nr int32

Optional. Number of alternative words to results

return_word_timing bool

Optional. Whether or not to return timestamps of start and end of the words. Only used in TranscribeFile.

TurnDetectionOptions

Configuration of the options to turn-detection in utterances

FieldTypeLabelDescription
active bool optional

Optional. Indicates if the turn-detection feature is active.

full_utterance_deployment bool optional

Optional. Whether to transcribe the whole utterance when turn moment is detected. It is helpful to increase accuracy of transcriptions in cost of drop in speed. If deactivated, it just transcribe from last short silence period and concatenates the transcriptions of small audio chunks between tiny silences.

turn_detection_system_prompt string optional

Optional. System prompt used to guide the turn-detection model.

turn_detection_user_prompt string optional

Optional. User prompt used as input to the turn-detection model.

turn_detection_llm_openai_options OpenaiLlmOptions optional

Optional. Configuration options for the OpenAI client used for turn detection.

UtteranceDetectionOptions

Configuration of the options to detect utterances

FieldTypeLabelDescription
transcribe_not_final bool

Return also immediate transcription results

next_chunk_timeout float

if time between audio chunks exceeds next_chunk_timeout, stream will be stopped

turn_detection TurnDetectionOptions

The turn detection options

VoiceActivityDetection

VoiceActivityDetection contains information about voice activity detection settings.

FieldTypeLabelDescription
active string

Indicates if voice activity detection is active.

sampling_rate int64

Sampling rate for voice activity detection.

pyannote Pyannote

Configuration for the Pyannote model.

Wav2Vec

Wav2Vec contains information about the Wav2Vec model.

FieldTypeLabelDescription
model_path string

Path to the model.

use_gpu bool

Indicates if GPU is used.

Wav2VecTriton

Wav2VecTriton contains information about the Wav2Vec model using Triton.

FieldTypeLabelDescription
processor_path string

Path to the processor.

triton_model_name string

Name of the Triton model.

triton_model_version string

Version of the Triton model.

check_status_timeout int64

Timeout for checking model status.

triton_server_host string

Host name of triton inference server that serves the Wav2VecTriton model

triton_server_port int64

Port number of triton inference server that serves the Wav2VecTriton model

Whisper

Whisper contains information about the Whisper model.

FieldTypeLabelDescription
model_path string

Path to the model.

use_gpu bool

Indicates if GPU is used.

language string

Default language of the model.

task string

Default task of the model.

WhisperTriton

WhisperTriton contains information about the Whisper model using Triton.

FieldTypeLabelDescription
processor_path string

Path to the processor.

triton_model_name string

Name of the Triton model.

triton_model_version string

Version of the Triton model.

check_status_timeout int64

Timeout for checking model status.

language string

Default language of the model.

task string

Default task of the model. E.g., transcribe, translate, etc.

triton_server_host string

Host name of triton inference server that serves the WhisperTriton model

triton_server_port int64

Port number of triton inference server that serves the WhisperTriton model

WordAlternative

The word alternative message

FieldTypeLabelDescription
word string

The recognized word corresponding to this set of information.

confidence float

The corresponding confidence score to the alternative word.

WordDetail

WordDetail provides word-specific information for recognized words.

FieldTypeLabelDescription
start_time float

The start time of the spoken word relative to the beginning of the audio. The accuracy of the time offset can vary, and this is an experimental feature.

end_time float

The end time of the spoken word relative to the beginning of the audio. The accuracy of the time offset can vary, and this is an experimental feature.

word string

The recognized word corresponding to this set of information.

confidence float

The corresponding confidence score to the word.

word_alternatives WordAlternative repeated

List of alternative words and confidence scores of each.

Enums

Decoding

The decoding configuration

NameNumberDescription
DEFAULT 0

decoding will be defined by the pipeline config

GREEDY 1

greedy decoding will be used independently on pipeline config

BEAM_SEARCH_WITH_LM 2

beam search will be used independently on pipeline config

BEAM_SEARCH 3

beam search without LM head, to configure decoding mode for seq2seq models.

InferenceBackend

The inference backend configuration

NameNumberDescription
INFERENCE_BACKEND_UNKNOWN 0

Not set

INFERENCE_BACKEND_PYTORCH 1

Run pytorch model

INFERENCE_BACKEND_FLAX 2

Run flax model

INFERENCE_BACKEND_CLOUD_SERVICE_AMAZON 3

Run Amazon S2T cloud service

INFERENCE_BACKEND_CLOUD_SERVICE_DEEPGRAM 4

Run Deepgram S2T cloud service

INFERENCE_BACKEND_CLOUD_SERVICE_GOOGLE 5

Run Google S2T cloud service

INFERENCE_BACKEND_CLOUD_SERVICE_MICROSOFT 6

Run Microsoft Azure S2T cloud service

ReasoningEffort

Effort level for reasoning models (e.g., o1, o3). Controls the trade-off between speed and quality.

NameNumberDescription
REASONING_EFFORT_UNSPECIFIED 0

Unspecified reasoning effort.

REASONING_EFFORT_MINIMAL 1

Minimal reasoning effort.

REASONING_EFFORT_LOW 2

Low reasoning effort.

REASONING_EFFORT_MEDIUM 3

Medium reasoning effort.

REASONING_EFFORT_HIGH 4

High reasoning effort.

ServiceTier

Latency tier to use for processing an OpenAI request. Affects cost and throughput.

NameNumberDescription
SERVICE_TIER_UNSPECIFIED 0

Unspecified service tier.

SERVICE_TIER_AUTO 1

Auto service tier.

SERVICE_TIER_DEFAULT 2

Default service tier.

SERVICE_TIER_FLEX 3

Flex service tier.

SERVICE_TIER_SCALE 4

Scale service tier.

SERVICE_TIER_PRIORITY 5

Priority service tier.

Verbosity

Verbosity level for the response output.

NameNumberDescription
VERBOSITY_UNSPECIFIED 0

Unspecified verbosity.

VERBOSITY_LOW 1

Low verbosity.

VERBOSITY_MEDIUM 2

Medium verbosity.

VERBOSITY_HIGH 3

High verbosity.

ondewo/t2s/text-to-speech.proto

Top

Services

Text2Speech

Text2Speech service provides endpoints for text-to-speech generation.

Service Methods

Synthesize

rpc Synthesize (SynthesizeRequest) returns (SynthesizeResponse)

Synthesizes a specific text sent in the request with the provided configuration requirements and retrieves a response that includes the synthesized text as audio and the requested configuration.

BatchSynthesize

rpc BatchSynthesize (BatchSynthesizeRequest) returns (BatchSynthesizeResponse)

Performs batch synthesis by accepting a batch of synthesis requests and returning a batch response. This can be more efficient for generating predictions on the AI model in bulk.

StreamingSynthesize

rpc StreamingSynthesize (stream StreamingSynthesizeRequest) returns (stream StreamingSynthesizeResponse)

Performs streaming synthesis by accepting stream of input text and returning a stream of generated audio.

NormalizeText

rpc NormalizeText (NormalizeTextRequest) returns (NormalizeTextResponse)

Normalizes a text according to the specific pipeline's normalization rules.

GetT2sPipeline

rpc GetT2sPipeline (T2sPipelineId) returns (Text2SpeechConfig)

Retrieves the configuration of the specified text-to-speech pipeline.

CreateT2sPipeline

rpc CreateT2sPipeline (Text2SpeechConfig) returns (T2sPipelineId)

Creates a new text-to-speech pipeline with the provided configuration and returns its pipeline ID.

DeleteT2sPipeline

rpc DeleteT2sPipeline (T2sPipelineId) returns (.google.protobuf.Empty)

Deletes the specified text-to-speech pipeline.

UpdateT2sPipeline

rpc UpdateT2sPipeline (Text2SpeechConfig) returns (.google.protobuf.Empty)

Updates the specified text-to-speech pipeline with the given configuration.

ListT2sPipelines

rpc ListT2sPipelines (ListT2sPipelinesRequest) returns (ListT2sPipelinesResponse)

Retrieves a list of text-to-speech pipelines based on specific requirements.

ListT2sLanguages

rpc ListT2sLanguages (ListT2sLanguagesRequest) returns (ListT2sLanguagesResponse)

Retrieves a list of languages available based on specific configuration requirements.

ListT2sDomains

rpc ListT2sDomains (ListT2sDomainsRequest) returns (ListT2sDomainsResponse)

Retrieves a list of domains available based on specific configuration requirements.

ListT2sNormalizationPipelines

rpc ListT2sNormalizationPipelines (ListT2sNormalizationPipelinesRequest) returns (ListT2sNormalizationPipelinesResponse)

Retrieves a list of normalization pipelines based on specific requirements.

GetServiceInfo

rpc GetServiceInfo (.google.protobuf.Empty) returns (T2SGetServiceInfoResponse)

Retrieves the version information of the running text-to-speech server.

GetCustomPhonemizer

rpc GetCustomPhonemizer (PhonemizerId) returns (CustomPhonemizerProto)

Retrieves a custom phonemizer based on the provided PhonemizerId.

CreateCustomPhonemizer

rpc CreateCustomPhonemizer (CreateCustomPhonemizerRequest) returns (PhonemizerId)

Creates a custom phonemizer based on the provided CreateCustomPhonemizerRequest. Returns the PhonemizerId associated with the created custom phonemizer.

DeleteCustomPhonemizer

rpc DeleteCustomPhonemizer (PhonemizerId) returns (.google.protobuf.Empty)

Deletes a custom phonemizer based on the provided PhonemizerId. Returns an Empty response upon successful deletion.

UpdateCustomPhonemizer

rpc UpdateCustomPhonemizer (UpdateCustomPhonemizerRequest) returns (CustomPhonemizerProto)

Updates the specified custom phonemizer with the provided configuration.

ListCustomPhonemizer

rpc ListCustomPhonemizer (ListCustomPhonemizerRequest) returns (ListCustomPhonemizerResponse)

Retrieves a list of custom phonemizers based on specific requirements.

Messages

Apodization

Apodization message contains settings for apodization postprocessing.

FieldTypeLabelDescription
apodization_secs float

The duration of apodization in seconds.

BatchSynthesizeRequest

BatchSynthesizeRequest message is used to send a batch request for synthesis.

FieldTypeLabelDescription
batch_request SynthesizeRequest repeated

Repeated field holding individual synthesis requests that make up the batch request.

BatchSynthesizeResponse

BatchSynthesizeResponse message is used to store the responses for a batch synthesis request.

FieldTypeLabelDescription
batch_response SynthesizeResponse repeated

Repeated field holding individual synthesis responses that correspond to the input requests in the batch.

Caching

Caching message contains settings for caching.

FieldTypeLabelDescription
active bool

Flag indicating whether caching is active.

memory_cache_max_size int64

The maximum size of the memory cache.

sampling_rate int64

The sampling rate for caching.

load_cache bool

Flag indicating whether to load cache.

save_cache bool

Flag indicating whether to save cache.

cache_save_dir string

The directory path to save the cache.

CompositeInference

CompositeInference message combines text-to-mel and mel-to-audio inference settings.

FieldTypeLabelDescription
text2mel Text2Mel

Text-to-mel inference settings.

mel2audio Mel2Audio

Mel-to-audio inference settings.

CreateCustomPhonemizerRequest

CreateCustomPhonemizerRequest message represents the request for creating a custom phonemizer.

FieldTypeLabelDescription
prefix string

The prefix for the custom phonemizer ID.

maps Map repeated

Repeated field of Map messages representing word-to-phoneme mappings.

CustomPhonemizerProto

CustomPhonemizerProto message represents a custom phonemizer.

FieldTypeLabelDescription
id string

The ID of the custom phonemizer.

maps Map repeated

Repeated field of Map messages representing word-to-phoneme mappings.

GlowTTS

GlowTTS message contains settings for the GlowTTS inference.

FieldTypeLabelDescription
batch_size int64

The batch size for inference.

use_gpu bool

Flag indicating whether to use GPU for inference.

length_scale float

The length scale for inference.

noise_scale float

The noise scale for inference.

path string

The path to the GlowTTS model.

cleaners string repeated

Repeated field containing the cleaners for text normalization.

param_config_path string

The path to the parameter configuration.

GlowTTSTriton

GlowTTSTriton message contains settings for the GlowTTS Triton inference.

FieldTypeLabelDescription
batch_size int64

The batch size for inference.

length_scale float

The length scale for inference.

noise_scale float

The noise scale for inference.

cleaners string repeated

Repeated field containing the cleaners for text normalization.

max_text_length int64

The maximum text length allowed.

param_config_path string

The path to the parameter configuration.

triton_model_name string

The name of the Triton model.

triton_server_host string

The host of the Triton inference server which servers the model.

triton_server_port int64

The port of the Triton inference server which servers the model.

HiFiGan

HiFiGan message contains settings for the HiFiGan inference.

FieldTypeLabelDescription
use_gpu bool

Flag indicating whether to use GPU for inference.

batch_size int64

The batch size for inference.

config_path string

The path to the HiFiGan configuration.

model_path string

The path to the HiFiGan model.

HiFiGanTriton

HiFiGanTriton message contains settings for the HiFiGan Triton inference.

FieldTypeLabelDescription
config_path string

The path to the HiFiGan Triton configuration.

triton_model_name string

The name of the Triton model.

triton_server_host string

The host of the Triton inference server which servers the model.

triton_server_port int64

The port of the Triton inference server which servers the model.

ListCustomPhonemizerRequest

ListCustomPhonemizerRequest message represents the request for listing custom phonemizers.

FieldTypeLabelDescription
pipeline_ids string repeated

Repeated field of pipeline IDs to filter the list of custom phonemizers.

ListCustomPhonemizerResponse

ListCustomPhonemizerResponse message represents the response for listing custom phonemizers.

FieldTypeLabelDescription
phonemizers CustomPhonemizerProto repeated

Repeated field of CustomPhonemizerProto messages representing the custom phonemizers.

ListT2sDomainsRequest

Domain Request representation.

The request message for ListT2sDomains.

Filter domains of pipelines by attributed in request.

FieldTypeLabelDescription
speaker_sexes string repeated

Optional. Define the speaker sex.

pipeline_owners string repeated

Optional. Define the pipeline owner/ owners.

speaker_names string repeated

Optional. Define the speaker name/ names.

languages string repeated

Optional. Define the language/ languages.

ListT2sDomainsResponse

Domains Response representation.

The response message for ListT2sDomains.

FieldTypeLabelDescription
domains string repeated

Required. Define the domain/ domains that satisfy/ies the specifications in the ListT2sDomainsRequest.

ListT2sLanguagesRequest

Language Request representation.

The request message for ListT2sLanguages.

Filter languages of pipelines by attributed in request.

FieldTypeLabelDescription
speaker_sexes string repeated

Optional. Define the speaker sex.

pipeline_owners string repeated

Optional. Define the pipeline owner/ owners.

speaker_names string repeated

Optional. Define the speaker name/ names.

domains string repeated

Optional. Define the domain/ domains.

ListT2sLanguagesResponse

Language Response representation.

The response message for ListT2sLanguages.

FieldTypeLabelDescription
languages string repeated

Required. Define the language/ languages that satisfy/ies the specifications in the ListT2sLanguagesRequest.

ListT2sNormalizationPipelinesRequest

The request message for ListT2sNormalizationPipelines.

Filter pipelines by attributed in request.

FieldTypeLabelDescription
language string

Optional. Define the language.

ListT2sNormalizationPipelinesResponse

Pipeline Response representation.

The response message for ListT2sNormalizationPipelines.

FieldTypeLabelDescription
t2s_normalization_pipelines string repeated

Required. Representation of a list of normalization pipelines configurations. Retrieved by ListT2sNormalizationPipelines, containing the configurations of normalization pipelines with the specifications received in the ListT2sNormalizationPipelinesRequest.

ListT2sPipelinesRequest

Pipeline Request representation.

The request message for ListT2sPipelines.

Filter pipelines by attributed in request.

FieldTypeLabelDescription
languages string repeated

Optional. Define the language/ languages.

speaker_sexes string repeated

Optional. Define the speaker sex.

pipeline_owners string repeated

Optional. Define the pipeline owner/ owners.

speaker_names string repeated

Optional. Define the speaker name/ names.

domains string repeated

Optional. Define the domain/ domains.

ListT2sPipelinesResponse

Pipeline Response representation.

The response message for ListT2sPipelines.

FieldTypeLabelDescription
pipelines Text2SpeechConfig repeated

Required. Representation of a list of pipelines configurations. Retrieved by ListT2sPipelines, containing the configurations of pipelines with the specifications received in the ListT2sPipelinesRequest.

Logmnse

Logmnse message contains settings for Logmnse postprocessing.

FieldTypeLabelDescription
initial_noise int64

The initial noise value.

window_size int64

The window size.

noise_threshold float

The noise threshold.

Map

Map message represents a word-to-phoneme mapping in a custom phonemizer.

FieldTypeLabelDescription
word string

The word to be mapped.

phoneme_groups string

The phoneme groups associated with the word.

MbMelganTriton

MbMelganTriton message contains settings for the MbMelgan Triton inference.

FieldTypeLabelDescription
config_path string

The path to the MbMelgan Triton configuration.

stats_path string

The path to the MbMelgan statistics.

triton_model_name string

The name of the Triton model.

triton_server_host string

The host of the Triton inference server which servers the model.

triton_server_port int64

The port of the Triton inference server which servers the model.

Mel2Audio

Mel2Audio message contains settings for mel-to-audio inference.

FieldTypeLabelDescription
type string

The type of mel-to-audio inference.

mb_melgan_triton MbMelganTriton

MbMelgan Triton inference settings.

hifi_gan HiFiGan

HiFiGan inference settings.

hifi_gan_triton HiFiGanTriton

HiFiGan Triton inference settings.

NormalizeTextRequest

NormalizeTextRequest message is used to request text normalization.

FieldTypeLabelDescription
t2s_pipeline_id string

The ID of the text-to-speech pipeline.

text string

The text to be normalized.

NormalizeTextResponse

NormalizeTextResponse message is used to store the normalized text response.

FieldTypeLabelDescription
normalized_text string

The normalized text.

PhonemizerId

PhonemizerId message represents the ID of a phonemizer.

FieldTypeLabelDescription
id string

The ID of the phonemizer.

Postprocessing

Postprocessing message contains settings for postprocessing.

FieldTypeLabelDescription
silence_secs float

The duration of silence in seconds.

pipeline string repeated

Repeated field containing pipeline names.

logmmse Logmnse

Logmnse postprocessing settings.

wiener Wiener

Wiener postprocessing settings.

apodization Apodization

Apodization postprocessing settings.

Qwen3TtsBase

Qwen3TtsBase message contains settings for inference of qwen3-TTS-Base model.

FieldTypeLabelDescription
model_name string

Model name for the inference server.

language string

Language for inference server

embedding_path string

Path of the embedding file

qwen3_tts_server_host string

Host name for the inference server

qwen3_tts_server_port int64

Port of the inference server

qwen3_tts_server_header google.protobuf.Struct optional

Authorization headers for the inference server

Qwen3TtsCustomVoice

Qwen3TtsCustomVoice message contains settings for inference of qwen3-TTS-CustomVoice model.

FieldTypeLabelDescription
voice_id string

Voice id indicating the speaker name

model_name string

Model name for the inference server.

language string

Language for inference server

qwen3_tts_server_host string

Host name for the inference server

qwen3_tts_server_port int64

Port of the inference server

qwen3_tts_server_header google.protobuf.Struct optional

Authorization headers for the inference server

RequestConfig

Represents a Configuration for the text to speech conversion.

FieldTypeLabelDescription
t2s_pipeline_id string

Required. Represents the pipeline id of the model configuration that will be used.

length_scale float

Optional. This parameter is used for time stretching which is the process of changing the speed or duration of an audio. It should be much more than 1.0. O is not a valid number for this variable. The default value is 1.

noise_scale float

Optional. Defines the noise in the generated audio. It should be between 0.0 and 1. The default value is 0.0

sample_rate int32

Optional. Defines the sample rate of the generated wav file. The default value is 22050.

pcm Pcm

Optional. Defines the pulse-code modulation of the wav file. The default value is PCM_16.

audio_format AudioFormat

Optional. Defines the format of the desired audio. The default value is wav.

use_cache bool

Optional. Define if cache should be used or not. The default value is False.

t2s_service_config google.protobuf.Struct optional

Optional. t2s_service_config provides the configuration of the service such as API key, bearer tokens, JWT, and other header information as key value pairs, e.g.,

MY_API_KEY='LKJDIFe244LKJOI'
A. For Amazon T2S service, the following arguments should be passed:
  • A1. aws_access_key_id (required) Access key id to access Amazon WEB Service.
  • A2. aws_secret_access_key (required) Secret access key to access Amazon WEB Service.
  • A3. region (required) Region name of Amazon Server.
Example:
t2s_config_service={'aws_access_key_id': 'YOUR_AWS_ACCESS_KEY_ID', 'aws_secret_access_key': 'YOUR_AWS_SECRET_ACCESS_KEY', 'region': 'YOUR_AMAZON_SERVER_REGION_NAME'}
B. For ElevenLabs T2s service, the following arguments should be passed:
  • B1. api_key (required) API key of ElevenLabs cloud provider to access its T2S service.
Example:
t2s_config_service={'api_key': 'YOUR_ELEVENLABS_API_KEY'}
C. For Google cloud T2S service, the following arguments should be passed:
  • C1. api_key (required) API key of Google cloud provider to access its T2S service.
  • C2. api_endpoint (optional) Regional API endpoint of Google cloud T2S service. (Defaults to 'eu-texttospeech.googleapis.com')
Example:
t2s_config_service={'api_key': 'YOUR_GOOGLE_CLOUD_API_KEY', 'api_endpoint': 'YOUR_GOOGLE_CLOUD_API_ENDPOINT'}
D. For Microsoft Azure T2s service, the following arguments should be passed:
  • D1. subscription_key (required) Subscription key to access Microsoft Azure Service.
  • D2. region (required) Region name of Microsoft Azure Server.
Example:
t2s_config_service={'subscription_key': 'YOUR_MICROSOFT_AZURE_SUBSCRIPTION_KEY', 'region': 'YOUR_MICROSOFT_AZURE_SERVER_REGION_NAME'}
Note: ondewo-t2s will raise an error if you don't pass any of the required arguments above.

t2s_cloud_provider_config T2sCloudProviderConfig optional

Optional. Defines the cloud provider's specific configuration for using text to speech cloud services The default value is None.

t2s_normalization T2SNormalization

Optional. Define t2s_normalization config parameters for this specific request. The default values are set in the config file and the values set via RequestConfig are set just for this specific request and will not update the pipeline.

word_to_phoneme_mapping google.protobuf.Struct optional

Optional. Define a dict which specifies the phonemes for a special word.

instruction string optional

Optional. Define an instruction or prompt to be passed to the TTS/LLM backend for this request.

SingleInference

SingleInference message inference settings of text2audio models.

FieldTypeLabelDescription
text2audio Text2Audio

Text-to-audio inference settings.

StreamingSynthesizeRequest

StreamingSynthesizeRequest is used to perform streaming synthesize.

FieldTypeLabelDescription
text string

Required. Represents the text that will be transformed to speech. All the properties according to the input text in SynthesizeRequest can be also applied here.

config RequestConfig

Required. Represents the specifications needed to do the text to speech transformation.

StreamingSynthesizeResponse

Represents a Streaming Synthesize Response.

A Streaming Synthesize Response contains the generated audio, requested text and and

all other properties of this generated audio.

FieldTypeLabelDescription
audio_uuid string

Required. Represents the pipeline id of the model configuration that will be used.

audio bytes

Required. Generated file with the parameters described in request.

generation_time float

Required. Time to generate audio.

audio_length float

Required. Audio length.

text string

Required. Text from which audio was generated.

config RequestConfig

Required. Configuration from which audio was generated.

normalized_text string

Optional. Normalized text.

sample_rate float

Optional. Value of sampling rate

SynthesizeRequest

Represents a Synthesize Request.

A Synthesize Request contains the information need to perform a text to speech conversion.

FieldTypeLabelDescription
text string

Required. Represents the text that will be transformed to speech. Synthesize text:

  • Simple text:
    Hello, how are you?
Examples to modulate the voice based on SSML tags and Arpabet phonemes:
  • SSML Tag Phone:
    <say-as interpret-as="phone">+12354321</say-as>
  • SSML Tag Email:
    <say-as interpret-as="email">voices@ondewo.com</say-as>
  • SSML Tag URL:
    <say-as interpret-as="url">ondewo.com/en/</say-as>
  • SSML Tag Spell:
    <say-as interpret-as="spell">AP732</say-as>
  • SSML Tag Spell With Names:
    <say-as interpret-as="spell-with-names">AHO32</say-as>
  • SSML Tag Callsigns Short:
    <say-as interpret-as="callsign-short">AUA439</say-as>
  • SSML Tag Callsigns Long:
    <say-as interpret-as="callsign-long">AAL439</say-as>
  • SSML Tag Break Tag:
    I am going to take a 2 seconds break <break time="2.0"/> done
  • Arpabet Phonemes:
    Hello I am {AE2 L EH0 G Z AE1 N D R AH0}

config RequestConfig

Required. Represents the specifications needed to do the text to speech transformation.

SynthesizeResponse

Represents a Synthesize Response.

A Synthesize Response contains the generated audio, requested text and all other properties of this generated audio.

FieldTypeLabelDescription
audio_uuid string

Required. Represents the pipeline id of the model configuration that will be used.

audio bytes

Required. Generated file with the parameters described in request.

generation_time float

Required. Time to generate audio.

audio_length float

Required. Audio length.

text string

Required. Text from which audio was generated.

config RequestConfig

Required. Configuration from which audio was generated.

normalized_text string

Optional. Normalized text.

sample_rate float

Optional. Value of sampling rate

T2SCustomLengthScales

T2SCustomLengthScales message contains custom length scales for text types.

FieldTypeLabelDescription
text float

The custom length scale for general text.

email float

The custom length scale for email text.

url float

The custom length scale for URL text.

phone float

The custom length scale for phone number text.

spell float

The custom length scale for spelled-out text.

spell_with_names float

The custom length scale for spelled-out text with names.

callsign_long float

The custom length scale for long callsigns.

callsign_short float

The custom length scale for short callsigns.

T2SDescription

T2SDescription message is used to describe the text-to-speech service.

FieldTypeLabelDescription
language string

The language supported by the service.

speaker_sex string

pipeline_owner string

The owner of the text-to-speech pipeline.

comments string

Additional comments or notes.

speaker_name string

The name of the speaker.

domain string

The domain or context of the service.

T2SGetServiceInfoResponse

Version information of the service

FieldTypeLabelDescription
version string

version number

T2SInference

T2SInference message is used to specify the text-to-speech inference settings.

FieldTypeLabelDescription
type string

The type of inference.

composite_inference CompositeInference

Composite inference settings.

single_inference SingleInference

Single inference settings.

caching Caching

Caching settings.

T2SNormalization

Represents the configuration for text-to-speech normalization.

FieldTypeLabelDescription
language string

The language for which the normalization is applied.

pipeline string repeated

The pipeline(s) used for normalization.

custom_phonemizer_id string

The ID of the custom phonemizer, if used.

custom_length_scales T2SCustomLengthScales

Custom length scales for different text types.

arpabet_mapping string

The mapping for Arpabet phonemes.

numeric_mapping string

The mapping for numeric expressions.

callsigns_mapping string

The mapping for callsigns.

phoneme_correction_mapping string

The mapping for phoneme correction.

T2sCloudProviderConfig

Configuration for cloud provider settings for Text-to-Speech (T2S).

FieldTypeLabelDescription
t2s_cloud_provider_config_elevenlabs T2sCloudProviderConfigElevenLabs

Configuration for Eleven Labs text-to-speech provider.

t2s_cloud_provider_config_google T2sCloudProviderConfigGoogle

Configuration for Google text-to-speech provider.

t2s_cloud_provider_config_microsoft T2sCloudProviderConfigMicrosoft

Configuration for Microsoft text-to-speech provider.

T2sCloudProviderConfigElevenLabs

Configuration details specific to the Eleven Labs text-to-speech provider.

FieldTypeLabelDescription
stability float

Stability level for inference, influencing consistency of generated speech. It is in the range [0.0, 1.0].

similarity_boost float

Boost value for similarity to enhance the similarity of the generated voice to a target voice. It is in the range [0.0, 1.0].

style float

Style parameter to control the expression or emotion in speech. It is in the range [0.0, 1.0].

use_speaker_boost bool

Enables or disables speaker boost for emphasis on clarity and loudness.

apply_text_normalization string

Specifies type of text normalization to apply during processing. Available options are 'auto', 'on', and 'off'.

T2sCloudProviderConfigGoogle

Configuration details specific to the Google text-to-speech provider.

FieldTypeLabelDescription
speaking_rate float

Speaking rate for inference, controlling the speed of generated speech. It is in the range [0.25, 4.0].

volume_gain_db float

Volume gain in dB applied to the generated speech. It is in the range [-96.0, 16.0].

pitch float

Pitch adjustment for inference, allowing control over voice pitch. It is in the range in the range [-20.0, 20.0].

T2sCloudProviderConfigMicrosoft

Configuration details specific to the Microsoft text-to-speech provider.

FieldTypeLabelDescription
use_default_speaker bool

Determines whether to use the default speaker voice.

T2sCloudServiceAmazon

T2sCloudServiceAmazon message contains settings for the Amazon Cloud service inference.

FieldTypeLabelDescription
voice_id string

Voice ID indicating the speaker

model_id string

Model id for the inference server.

T2sCloudServiceElevenLabs

T2sCloudServiceElevenLabs message contains settings for the ElevenLabs Cloud service inference.

FieldTypeLabelDescription
language_code string

Language of the generated audio. It should be 4-Letter language code.

model_id string

Model ID indicating the name of the model

voice_id string

Voice ID indicating the speaker

voice_settings VoiceSettings

Voice setting of the inference

apply_text_normalization string

Flag to indicate applying text normalization

T2sCloudServiceGoogle

T2sCloudServiceGoogle message contains settings for the Google Cloud service inference.

FieldTypeLabelDescription
voice_id string

Voice ID indicating the speaker

speaking_rate float

Speaking rate to control the speed of audio.

volume_gain_db float

Volume gain in db to control volume of the audio.

pitch float

pitch value of the audio

T2sCloudServiceMicrosoft

T2sCloudServiceMicrosoft message contains settings for the Microsoft Cloud service inference.

FieldTypeLabelDescription
voice_id string

Voice ID indicating the speaker.

use_default_speaker bool

Flag to indicate using the default speaker.

T2sPipelineId

Pipeline Id representation.

Used in the creation, deletion and getter of pipelines.

FieldTypeLabelDescription
id string

Required. Defines the id of the pipeline.

Text2Audio

Text2Audio message contains settings for text-to-audio inference.

FieldTypeLabelDescription
type string

The type of text-to-audio inference.

vits Vits

Vits inference settings.

vits_triton VitsTriton

Vits Triton inference settings.

t2s_cloud_service_elevenlabs T2sCloudServiceElevenLabs

ElevenLabs cloud service inference settings.

t2s_cloud_service_amazon T2sCloudServiceAmazon

Amazon cloud service inference settings.

t2s_cloud_service_google T2sCloudServiceGoogle

Google cloud service inference settings.

t2s_cloud_service_microsoft T2sCloudServiceMicrosoft

Microsoft cloud service inference settings.

qwen3_tts_custom_voice Qwen3TtsCustomVoice

Qwen3-TTS-custom-voice inference settings.

qwen3_tts_base Qwen3TtsBase

Qwen3-TTS-base inference settings for voice cloning.

Text2Mel

Text2Mel message contains settings for text-to-mel inference.

FieldTypeLabelDescription
type string

The type of text-to-mel inference.

glow_tts GlowTTS

GlowTTS inference settings.

glow_tts_triton GlowTTSTriton

GlowTTS Triton inference settings.

Text2SpeechConfig

Configuration of text-to-speech models representation.

FieldTypeLabelDescription
id string

Required. Defines the id of the pipeline.

description T2SDescription

Required. Defines the description of the pipeline representation.

active bool

Required. Defines if the pipeline is active or inactive.

inference T2SInference

Required. Defines he inference of the pipeline representation.

normalization T2SNormalization

Required. Defines the normalization process of the pipeline representation.

postprocessing Postprocessing

Required. Defines the postprocessing process of the pipeline representation.

UpdateCustomPhonemizerRequest

UpdateCustomPhonemizerRequest message represents the request for updating a custom phonemizer.

FieldTypeLabelDescription
id string

The ID of the custom phonemizer to be updated.

update_method UpdateCustomPhonemizerRequest.UpdateMethod

The update method.

maps Map repeated

Repeated field of Map messages representing word-to-phoneme mappings.

Vits

Vits message contains settings for the Vits inference.

FieldTypeLabelDescription
batch_size int64

The batch size for inference.

use_gpu bool

Flag indicating whether to use GPU for inference.

length_scale float

The length scale for inference.

noise_scale float

The noise scale for inference.

path string

The path to the Vits model.

cleaners string repeated

Repeated field containing the cleaners for text normalization.

param_config_path string

The path to the parameter configuration.

VitsTriton

VitsTriton message contains settings for the Vits Triton inference.

FieldTypeLabelDescription
batch_size int64

The batch size for inference.

length_scale float

The length scale for inference.

noise_scale float

The noise scale for inference.

cleaners string repeated

Repeated field containing the cleaners for text normalization.

max_text_length int64

The maximum text length allowed.

param_config_path string

The path to the parameter configuration.

triton_model_name string

The name of the Triton model.

triton_server_host string

The host of the Triton inference server which servers the model.

triton_server_port int64

The port of the Triton inference server which servers the model.

VoiceSettings

VoiceSettings message contains settings for ElevenLabs inference.

FieldTypeLabelDescription
stability float

stability value for elevenlabs inference

similarity_boost float

similarity boost value for ElevenLabs inference.

style float

style boost value for ElevenLabs inference.

use_speaker_boost bool

Flag to indicate speaker boost

Wiener

Wiener message contains settings for Wiener postprocessing.

FieldTypeLabelDescription
frame_len int64

The frame length.

lpc_order int64

The LPC order.

iterations int64

The number of iterations.

alpha float

The alpha value.

thresh float

The threshold value.

Enums

AudioFormat

AudioFormat enum represents various audio file formats for storing digital audio data.

NameNumberDescription
wav 0

Waveform Audio File Format (WAV)

flac 1

Free Lossless Audio Codec (FLAC)

caf 2

Core Audio Format (CAF)

mp3 3

MPEG Audio Layer III (MP3)

aac 4

Advanced Audio Coding (AAC)

ogg 5

Ogg Vorbis (OGG)

wma 6

Windows Media Audio (WMA)

Pcm

Represents a pulse-code modulation technique.

NameNumberDescription
PCM_16 0

16-bit pulse-code modulation.

PCM_24 1

24-bit pulse-code modulation.

PCM_32 2

32-bit pulse-code modulation.

PCM_S8 3

Signed 8-bit pulse-code modulation.

PCM_U8 4

Unsigned 8-bit pulse-code modulation.

FLOAT 5

Floating-point (32-bit) pulse-code modulation.

DOUBLE 6

Floating-point (64-bit) pulse-code modulation.

UpdateCustomPhonemizerRequest.UpdateMethod

The update method to be used.

UpdateMethod enum defines the method for updating custom phonemizers.

NameNumberDescription
extend_hard 0

Add new words, replacing existing ones.

extend_soft 1

Add new words if they are not already present.

replace 2

Replace all words in the phonemizer with new ones.

Scalar Value Types

.proto TypeNotesC++JavaPythonGoC#PHPRuby
double double double float float64 double float Float
float float float float float32 float float Float
int32 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. int32 int int int32 int integer Bignum or Fixnum (as required)
int64 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. int64 long int/long int64 long integer/string Bignum
uint32 Uses variable-length encoding. uint32 int int/long uint32 uint integer Bignum or Fixnum (as required)
uint64 Uses variable-length encoding. uint64 long int/long uint64 ulong integer/string Bignum or Fixnum (as required)
sint32 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int32 int int int32 int integer Bignum or Fixnum (as required)
sint64 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int64 long int/long int64 long integer/string Bignum
fixed32 Always four bytes. More efficient than uint32 if values are often greater than 2^28. uint32 int int uint32 uint integer Bignum or Fixnum (as required)
fixed64 Always eight bytes. More efficient than uint64 if values are often greater than 2^56. uint64 long int/long uint64 ulong integer/string Bignum
sfixed32 Always four bytes. int32 int int int32 int integer Bignum or Fixnum (as required)
sfixed64 Always eight bytes. int64 long int/long int64 long integer/string Bignum
bool bool boolean boolean bool bool boolean TrueClass/FalseClass
string A string must always contain UTF-8 encoded or 7-bit ASCII text. string String str/unicode string string string String (UTF-8)
bytes May contain any arbitrary sequence of bytes. string ByteString str []byte ByteString string String (ASCII-8BIT)