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.
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.
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"
}
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"
}
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"
}
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
{}
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{}
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" }
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" }
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" }
rpc AddUserToProject (AddUserToProjectRequest) returns (.google.protobuf.Empty)Adds a user with specified id to the project (agent)
rpc RemoveUserFromProject (RemoveUserFromProjectRequest) returns (.google.protobuf.Empty)Removes a user with specified id from the project (agent)
rpc ListUsersInProject (ListUsersInProjectRequest) returns (ListUsersInProjectResponse)Lists users in the project (agent)
rpc GetPlatformInfo (.google.protobuf.Empty) returns (GetPlatformInfoResponse)Gets information from the platform
rpc ListProjectPermissions (ListProjectPermissionsRequest) returns (ListProjectPermissionsResponse)List permissions from the project (agent)
rpc TrainAgent (TrainAgentRequest) returns (Operation)Trains the specified agent. Operation <response: google.protobuf.Empty, metadata: google.protobuf.Struct>
rpc BuildCache (BuildCacheRequest) returns (Operation)Builds cache for the specified agent. Operation <response: google.protobuf.Empty, metadata: google.protobuf.Struct>
rpc ExportAgent (ExportAgentRequest) returns (Operation)Exports the specified agent to a ZIP file.
rpc ExportBenchmarkAgent (ExportBenchmarkAgentRequest) returns (Operation)Exports the specified train agent to a ZIP file after train-test split, returns the test TrainingPhrase list.
rpc ImportAgent (ImportAgentRequest) returns (Operation)Imports the specified agent from a ZIP file.
rpc MigrateAgent (MigrateAgentRequest) returns (Operation)
rpc OptimizeRankingMatch (OptimizeRankingMatchRequest) returns (Operation)
rpc RestoreAgent (RestoreAgentRequest) returns (Operation)Restores the specified agent from a ZIP file.
rpc GetAgentStatistics (GetAgentStatisticsRequest) returns (GetAgentStatisticsResponse)Gets statistics for the agent
rpc GetSessionsStatistics (GetSessionsStatisticsRequest) returns (GetSessionsStatisticsResponse)
rpc GetSessionsStatisticsTimeSeries (GetSessionsStatisticsTimeSeriesRequest) returns (GetSessionsStatisticsTimeSeriesResponse)Gets LLM telemetry statistics for sessions bucketed over time (time series). Supports LLM-typed report types (SESSION_LLM_*) only.
rpc SetAgentStatus (SetAgentStatusRequest) returns (Agent)Sets status for the agent
rpc SetResources (SetResourcesRequest) returns (.google.protobuf.Empty)Sets resources
rpc DeleteResources (DeleteResourcesRequest) returns (.google.protobuf.Empty)Deletes resources
rpc ExportResources (ExportResourcesRequest) returns (ExportResourcesResponse)Exports resources
rpc GetModelStatuses (GetModelStatusesRequest) returns (GetModelStatusesResponse)Get statuses of models related to project
rpc GetPlatformMapping (GetPlatformMappingRequest) returns (PlatformMapping)Get all set platform name mappings for an Agent
rpc SetPlatformMapping (PlatformMapping) returns (PlatformMapping)Set platform name mappings for an Agent
rpc GetFullTextSearchEntityType (FullTextSearchRequest) returns (FullTextSearchResponseEntityType)Full text search endpoint in entity types
rpc GetFullTextSearchEntity (FullTextSearchRequest) returns (FullTextSearchResponseEntity)Full text search endpoint in entities
rpc GetFullTextSearchEntitySynonym (FullTextSearchRequest) returns (FullTextSearchResponseEntitySynonym)Full text search endpoint in entity synonyms
rpc GetFullTextSearchIntent (FullTextSearchRequest) returns (FullTextSearchResponseIntent)Full text search endpoint in intents
rpc GetFullTextSearchIntentContextIn (FullTextSearchRequest) returns (FullTextSearchResponseIntentContextIn)Full text search endpoint in context ins of intents
rpc GetFullTextSearchIntentContextOut (FullTextSearchRequest) returns (FullTextSearchResponseIntentContextOut)Full text search endpoint in context outs of intents
rpc GetFullTextSearchIntentUsersays (FullTextSearchRequest) returns (FullTextSearchResponseIntentUsersays)Full text search endpoint in user says of intents
rpc GetFullTextSearchIntentTags (FullTextSearchRequest) returns (FullTextSearchResponseIntentTags)Full text search endpoint in tags of intents
rpc GetFullTextSearchIntentResponse (FullTextSearchRequest) returns (FullTextSearchResponseIntentResponse)Full text search endpoint in responses of intents
rpc GetFullTextSearchIntentParameters (FullTextSearchRequest) returns (FullTextSearchResponseIntentParameters)Full text search endpoint in parameters of intents
rpc ReindexAgent (ReindexAgentRequest) returns (Operation)Force reindexing Intent and Entity data of Agent
| 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 | |
| GetSessionsStatisticsTimeSeries | GET | /v2/{parent=projects/*/agent}:session_statistics_time_series | |
| 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 | * |
Request to add user to project.
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to train is associated with. Format: |
|
| user_id | string | id of the user |
|
| project_role_id | uint32 | ID of the project role of the user |
Project/Agent messages
| Field | Type | Label | Description |
| parent | string | Required. The project of this agent. Format:
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 |
|
| supported_language_codes | string | repeated | Optional. The list of all languages supported by this agent (except for the
|
| 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. |
This message contains the agent of user with owner
| Field | Type | Label | Description |
| 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) |
Sorting order of agent
| Field | Type | Label | Description |
| sorting_field | AgentSorting.AgentSortingField | sorting field for agent sorting |
|
| sorting_mode | SortingMode | Sorting mode |
This message contains the agent with owner
| Field | Type | Label | Description |
| agent | Agent | The agent |
|
| owner | User | User who created the agent |
The request message for Agents.TrainAgentBuildCache.
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to build cache is associated with. Format: |
|
| branch | string | Name of the branch of the agent for versioning. The default branch name is |
Request to create an agent
| Field | Type | Label | Description |
| agent | Agent | The agent |
|
| agent_view | AgentView | Optional. Specify the view of the returned agent (sparse view by default) |
This message contains the information of custom platform
| Field | Type | Label | Description |
| 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. |
Request to delete the agent
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
Request to delete resources
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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. |
The request message for Agents.ExportAgent.
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to export is associated with. Format: |
|
| 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. |
The response message for Agents.ExportAgent.
| Field | Type | Label | Description |
| agent_uri | string | The URI to a file containing the exported agent. This field is populated
only if |
|
| agent_content | bytes | The exported agent.
Example for how to export an agent to a zip file via a command line:
|
Request to export benchmark agent
| Field | Type | Label | Description |
| parent | string | Agent related info Required. The project that the agent to export is associated with. Format: |
|
| 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 |
Response to export benchmark agent
| Field | Type | Label | Description |
| agent_content | bytes | Agent responses as zip file |
|
| training_phrases | ExportBenchmarkAgentResponse.TrainingPhrasesEntry | repeated | Key is the language code, value is the corresponding ListTrainingPhrasesResponse |
| Field | Type | Label | Description |
| key | string |
|
|
| value | ListTrainingPhrasesResponse |
|
Request to export resources
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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. |
Response to export resources
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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. |
This message is a request to run full text search
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent is associated with. Format: |
|
| 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:
|
This message is a response of full text search of entity
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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 |
Search result for an entity
| Field | Type | Label | Description |
| 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. |
This message is a response of full text search of synonym entity
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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 |
Search result for an entity synonym
| Field | Type | Label | Description |
| 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. |
This message is a response of full text search of entity type
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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 |
Search result for an entity type
| Field | Type | Label | Description |
| 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. |
This message is a response of full text search of intent
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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 |
Search result for an intent
| Field | Type | Label | Description |
| 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. |
This message is a response of full text search of intent with context in
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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 |
Search result for an intent input context
| Field | Type | Label | Description |
| 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. |
This message is a response of full text search of intent with context out
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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 |
Search result for an intent output context
| Field | Type | Label | Description |
| 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. |
This message is a response of full text search of intent with parameters
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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 |
Search result for an intent parameter
| Field | Type | Label | Description |
| 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. |
This message is a response of full text search of intent response
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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:
|
Search result for an intent response
| Field | Type | Label | Description |
| 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. |
This message is a response of full text search of intent with tags
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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 |
Search result for an intent tag
| Field | Type | Label | Description |
| 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. |
This message is a response of full text search of intent with sentence
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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 |
Search result for an intent training phrase (user says)
| Field | Type | Label | Description |
| 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. |
The request message for Agents.GetAgent.
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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. |
Request statistics of the agent
| Field | Type | Label | Description |
| parent | string | Required. The project to get statistics from. Format: |
|
| 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.
|
| llm_provider_filter | string | repeated | Optional. Restrict LLM aggregations to specific providers
(e.g. |
| 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.
|
| 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. |
Response to get statistics of the agent
| Field | Type | Label | Description |
| 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 |
Request to get model statuses
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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. |
Response to get model statuses
| Field | Type | Label | Description |
| model_statuses | ModelStatus | repeated | List of model statuses matching the request filters. |
GIT information about the version of the server
| Field | Type | Label | Description |
| version | string | version of the server build |
|
| commit_hash | string | git commit hash of the server build |
Request to get platform mapping
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent is associated with. Format: |
Request of the report of the statistics about sessions
| Field | Type | Label | Description |
| parent | string | Required. The project to get statistics from. Format: |
|
| 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.
|
|
| 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. |
Report of the statistics about sessions
| Field | Type | Label | Description |
| 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_*). |
Request for time-bucketed LLM telemetry statistics about sessions.
| Field | Type | Label | Description |
| parent | string | Required. The project to get statistics from. Format: |
|
| type | SessionsReportType | Type of report. Only LLM-typed report types (SESSION_LLM_*) are supported. |
|
| session_filter | SessionFilter | Required. A filter narrowing the sessions; |
|
| bucket_width_seconds | int32 | Optional. Width of one bucket in seconds. 0 = the server picks
(time range divided by |
|
| max_buckets | int32 | Optional. Maximum number of buckets (default 50, server-side cap 200). |
|
| llm_model_filter | string | repeated | Optional. Restrict to specific models. Empty = all models. |
| llm_provider_filter | string | repeated | Optional. Restrict to specific providers. Empty = all providers. |
| llm_agent_name_filter | string | repeated | Optional. Restrict to specific intent-agent names. Empty = all. |
| llm_tool_name_filter | string | repeated | Optional. Restrict to specific tool names. Empty = all. |
| llm_ccai_service_provider_filter | CcaiServiceProvider | repeated | Optional. Restrict to specific CCAI service providers. Empty = all. |
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which data fields will be added to the returned data (e.g. paths=["llm_telemetry_time_series_buckets.llm_telemetry_report.llm_token_usage"]). |
Response with time-bucketed LLM telemetry statistics.
| Field | Type | Label | Description |
| llm_telemetry_time_series_buckets | LlmTelemetryTimeSeriesBucket | repeated | Buckets in ascending time order. Buckets without any matching telemetry carry an empty report (llm_call_count == 0). |
| bucket_width_seconds | int32 | Effective bucket width in seconds the server used. |
The request message for Agents.ImportAgent.
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to import is associated with. Format: |
|
| 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.
|
Get list of agents of user
| Field | Type | Label | Description |
| 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 |
Request to get the list of agents
| Field | Type | Label | Description |
| 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. |
Get list of agents
| Field | Type | Label | Description |
| 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 |
Project permissions
| Field | Type | Label | Description |
| 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:
|
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
List project permissions
| Field | Type | Label | Description |
| 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 |
Request to list users in the project
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to train is associated with. Format: |
|
| 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:
|
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned.
|
List the users in a project
| Field | Type | Label | Description |
| 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 |
One time bucket of aggregated LLM telemetry.
| Field | Type | Label | Description |
| bucket_start | google.protobuf.Timestamp | Inclusive start of the bucket. |
|
| bucket_end | google.protobuf.Timestamp | Exclusive end of the bucket. |
|
| llm_telemetry_report | LlmTelemetryReport | Aggregated LLM telemetry of all matched sessions inside the bucket. |
Request to migrate an agent
| Field | Type | Label | Description |
| agent_content | bytes | The agent to migrate as zip file |
Status of model
| Field | Type | Label | Description |
| 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. |
This message is a request to run Optimize Ranking Match
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to train is associated with. Format: |
|
| 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 |
This message is a response of Optimize Ranking Match
| Field | Type | Label | Description |
| 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
|
This message contains the mapping of platform
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent is associated with. Format: |
|
| platform_info | CustomPlatformInfo | repeated | Required. If not set, it will set it empty. |
This message contains the configuration to run Optimize Ranking Match
| Field | Type | Label | Description |
| 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
|
This message is a request to reindex agent
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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 |
Request to remove user from the project.
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to train is associated with. Format: |
|
| user_id | string | id of the user |
The request message for Agents.RestoreAgent.
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to restore is associated with. Format: |
|
| 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.
|
Request to set status of the agent
| Field | Type | Label | Description |
| parent | string | Required. The project of which to set the status. Format: |
|
| status | AgentStatus | Required. Status of the agent |
|
| agent_view | AgentView | Optional. View of the returned agent |
Request to set resources
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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. |
The request message for Agents.TrainAgent.
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to train is associated with. Format: |
|
| branch | string | Name of the branch of the agent for versioning. The default branch name is |
|
| initiation_protocol | InitiationProtocol | Defines when to initiate newly created agent when training started |
Request to update the agent
| Field | Type | Label | Description |
| 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. |
Request to get user in project
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to train is associated with. Format: |
|
| user | User | User object |
|
| role_id | uint32 | ID of the project role of the user |
Sorting field
| Name | Number | Description |
| 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 |
Type of Agent / Project status
| Name | Number | Description |
| ACTIVE | 0 | If project is active, all its endpoints are active |
| INACTIVE | 1 | If project is inactive:
|
Structure of agent view
| Name | Number | Description |
| AGENT_VIEW_UNSPECIFIED | 0 | Unspecified agent view: the view is defined by the call:
|
| 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 |
Type of query
| Name | Number | Description |
| 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 |
Defines when to initiate newly created agent when training started
| Name | Number | Description |
| 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 |
Status name of the model.
| Name | Number | Description |
| 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 |
File formats for reports
| Name | Number | Description |
| CSV | 0 | CSV (comma separated values) file format |
| HTML | 1 | HTML file format |
| JSON | 2 | JSON file format |
Type of reports about the domain of the agent
| Name | Number | Description |
| 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 |
| AGENT_LLM_SAFETY | 25 | Native-safety breakdown (flagged counts / rates per category, mean safety score) over the agent domain. |
Type of reports about the domain of the agent
| Name | Number | Description |
| 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
|
| 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 |
| 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 ( |
| 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 |
| SESSION_LLM_SAFETY | 41 | Native-safety breakdown (flagged counts / rates per category, mean safety score) across sessions in scope. |
The Central class defining the ondewo ai services
rpc ExtractEntities (ExtractEntitiesRequest) returns (ExtractEntitiesResponse)Processes a natural language query and returns detected entities
rpc GenerateUserSays (GenerateUserSaysRequest) returns (GenerateUserSaysResponse)Generates a list of training phrases
rpc GenerateResponses (GenerateResponsesRequest) returns (GenerateResponsesResponse)Generate responses from all intents using synonyms
rpc GetAlternativeSentences (GetAlternativeSentencesRequest) returns (GetAlternativeSentencesResponse)Generates alternative phrase based on original phrase
rpc GetAlternativeTrainingPhrases (GetAlternativeTrainingPhrasesRequest) returns (GetAlternativeTrainingPhrasesResponse)Generates alternative training phrase based on original training phrase
rpc GetSynonyms (GetSynonymsRequest) returns (GetSynonymsResponse)Generates synonyms for a certain word
rpc ClassifyIntents (ClassifyIntentsRequest) returns (ClassifyIntentsResponse)Preprocess text and detects intents in a sentence
rpc ExtractEntitiesFuzzy (ExtractEntitiesFuzzyRequest) returns (ExtractEntitiesResponse)Processes a natural language query and returns detected entities
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.
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.
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.
| 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 | * |
This message contains an alternative sentence
| Field | Type | Label | Description |
| sentence | string | Alternative sentence |
|
| score | float | Score associated to the alternative sentence resulted |
This message contains an alternative training phrase
| Field | Type | Label | Description |
| training_phrase | Intent.TrainingPhrase | Alternative training phrase |
|
| score | float | Score associated to training_phrase |
Configuration for BERT augmenter enrichment
| Field | Type | Label | Description |
| is_active | bool | Activation flag |
|
| enrichment_factor | int32 | Factor of enrichment |
|
| execution_order | int32 | Order of augmenter execution |
The request for intent classification.
| Field | Type | Label | Description |
| parent | string | Required. The project of this agent. Format: |
|
| 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 | 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:
|
|
| algorithms | IntentAlgorithms | repeated | Optional: Algorithm list |
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
Response containing the intents classified in a sentence
| Field | Type | Label | Description |
| 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 |
This message contains the configuration of data enrichment
| Field | Type | Label | Description |
| 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 |
This message contains the entity detected
| Field | Type | Label | Description |
| 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 |
Configuration for Entity enrichment
| Field | Type | Label | Description |
| is_active | bool | Activation flag |
|
| enrichment_factor | int32 | Factor of enrichment |
|
| execution_order | int32 | Order of augmenter execution |
Configuration for Fuzzy Entity Recognizer
| Field | Type | Label | Description |
| 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 |
This message is a request to extract entities with Fuzzy Entity Recognizer
| Field | Type | Label | Description |
| parent | string | the parent of the request Format: |
|
| 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. |
The request to detect parameters.
| Field | Type | Label | Description |
| parent | string | the parent of the request Format: |
|
| 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: |
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
This message is a response of extracting entities
| Field | Type | Label | Description |
| entities_detected | EntityDetected | repeated | A list of entities detected |
| text | string | The text containing the entities detected |
Configuration for GPT2 enrichment
| Field | Type | Label | Description |
| is_active | bool | Activation flag |
|
| enrichment_factor | int32 | Factor of enrichment |
|
| execution_order | int32 | Order of augmenter execution |
Request to generate responses
| Field | Type | Label | Description |
| 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: |
|
| 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. |
Response containing responses
| Field | Type | Label | Description |
| responses | string | repeated | A list of responses |
Request to generate user sentences
| Field | Type | Label | Description |
| 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: |
|
| 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. |
Response containing user sentences
| Field | Type | Label | Description |
| user_says | string | repeated | A list of sampled sentences |
Request to get alternative sentences
| Field | Type | Label | Description |
| 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: |
|
| 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. |
Response containing alternative sentences
| Field | Type | Label | Description |
| alternative_sentences | AltSentence | repeated | A list of alternative sentences |
Request to get alternative training phrases
| Field | Type | Label | Description |
| 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: |
|
| 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. |
Response containing alternative training phrases
| Field | Type | Label | Description |
| alternative_training_phrases | AltTrainingPhrase | repeated | A list of alternative training phrases |
Request to get synonyms
| Field | Type | Label | Description |
| 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: |
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
Response containing synonyms
| Field | Type | Label | Description |
| synonyms | Synonym | repeated | A list of synonyms |
Configuration for GloVe enrichment
| Field | Type | Label | Description |
| is_active | bool | Activation flag |
|
| enrichment_factor | int32 | Factor of enrichment |
|
| execution_order | int32 | Order of augmenter execution |
Intent classified by a certain intent classifier
| Field | Type | Label | Description |
| intent_name | string | The unique identifier of this intent. Format: |
|
| 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 |
The request message to list available LLM models for a specified CCAI service.
| Field | Type | Label | Description |
| ccai_service_name | string | The CCAI service for which to list models. Format: |
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
The response message containing a list of available LLM models.
| Field | Type | Label | Description |
| llm_models | LlmModel | repeated | A list of LLM models associated with the specified CCAI service.
|
Configuration for large language model (LLM) enrichment
| Field | Type | Label | Description |
| 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: |
The request message to generate a response from a Large Language Model (LLM).
| Field | Type | Label | Description |
| llm_generation_request | google.protobuf.Struct | The request payload for the LLM, structured according to the specific
requirements of the large language model provider.
|
|
| 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: |
|
| 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. |
The response message containing the generated output from a Large Language Model (LLM).
| Field | Type | Label | Description |
| llm_generation_response | google.protobuf.Struct | The response data from the LLM, returned as a structured payload.
|
|
| file_resources | FileResource | repeated | Files as input for the generation request, e.g., generated pictures, audio or video |
Represents an individual LLM model available within a CCAI service.
| Field | Type | Label | Description |
| name | string | The resource name of the model. Format:
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 and |
|
| 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. |
The response message for streaming generation from a Large Language Model (LLM).
| Field | Type | Label | Description |
| llm_generation_stream_response | google.protobuf.Struct | The response data from the LLM in a streaming format, returned as a structured payload.
|
This message contains a Synonym
| Field | Type | Label | Description |
| synonym | string | Synonym word |
|
| score | int32 | Score associated to the synonym resulted |
Configuration for Thesaurus enrichment
| Field | Type | Label | Description |
| is_active | bool | Activation flag |
|
| enrichment_factor | int32 | Factor of enrichment |
|
| execution_order | int32 | Order of augmenter execution |
Configuration for Word2Vec enrichment
| Field | Type | Label | Description |
| is_active | bool | Activation flag |
|
| enrichment_factor | int32 | Factor of enrichment |
|
| execution_order | int32 | Order of augmenter execution |
Configuration for WordNet augmenter enrichment
| Field | Type | Label | Description |
| is_active | bool | Activation flag |
|
| enrichment_factor | int32 | Factor of enrichment |
|
| execution_order | int32 | Order of augmenter execution |
Configuration for XLNet enrichment
| Field | Type | Label | Description |
| is_active | bool | Activation flag |
|
| enrichment_factor | int32 | Factor of enrichment |
|
| execution_order | int32 | Order of augmenter execution |
Enum of fuzzy ner algorithms
| Name | Number | Description |
| PREFILTER_LEVENSHTEIN | 0 | Levenshtein algorithm for fuzzy ner matching |
| LOCAL_MAXIMUM | 1 | local maximum |
Type of Intent algorithm.
| Name | Number | Description |
| 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 |
Type of mode
| Name | Number | Description |
| UNSPECIFIED | 0 | default mode, described in agent config |
| EXCLUSIVE | 1 | skip algorithms listed in |
| INCLUSIVE | 2 | run ONLY algorithms listed in |
Service to manage Call Center AI (CCAI service) Projects.
rpc GetCcaiProject (GetCcaiProjectRequest) returns (CcaiProject)Retrieves information about a specific CCAI service project.
rpc CreateCcaiProject (CreateCcaiProjectRequest) returns (CreateCcaiProjectResponse)Creates a new CCAI service project based on the provided request.
rpc DeleteCcaiProject (DeleteCcaiProjectRequest) returns (DeleteCcaiProjectResponse)Deletes a CCAI service project identified by the provided request.
rpc ListCcaiProjects (ListCcaiProjectsRequest) returns (ListCcaiProjectsResponse)Lists all CCAI service projects based on the provided request.
rpc UpdateCcaiProject (UpdateCcaiProjectRequest) returns (UpdateCcaiProjectResponse)Updates the information of an existing CCAI service project.
rpc GetCcaiService (GetCcaiServiceRequest) returns (CcaiService)Retrieves information about a specific CCAI service.
Message representing a CCAI service project
| Field | Type | Label | Description |
| 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: |
| Field | Type | Label | Description |
| key | string |
|
|
| value | CcaiServiceList |
|
This protobuf message defines the sorting order for CCAI service (VOIP Telephone System Integration) projects.
| Field | Type | Label | Description |
| sorting_field | CcaiProjectSorting.CcaiProjectSortingField | optional | sorting field for ccai projects sorting |
| sorting_mode | SortingMode | optional | Sorting mode |
Definition of a Call Center AI (CCAI service) Service.
| Field | Type | Label | Description |
| 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:
|
Filter which services should be included in the returned CcaiProject
| Field | Type | Label | Description |
| 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 |
Message representing a list of CCAI service services
| Field | Type | Label | Description |
| ccai_services | CcaiService | repeated | CCAI service services |
Request to create a Call Center AI (CCAI service) project.
| Field | Type | Label | Description |
| ccai_project | CcaiProject | The CCAI service project to be created. |
|
| nlu_project_name | string | Required. The nlu agent project of this CcaiProject. Format: |
Response after attempting to create a Call Center AI (CCAI service) project.
| Field | Type | Label | Description |
| ccai_project | CcaiProject | The created CCAI service project. |
|
| error_message | string | Error message if the creation is unsuccessful. |
Request to delete a CCAI service project
If a deployed CCAI service project was deleted then it was undeployed beforehand automatically
| Field | Type | Label | Description |
| name | string | CCAI service project name with which to perform the call of the form |
|
| nlu_project_name | string | Required. The nlu agent project of this CcaiProject. Format: |
Response to delete a CCAI service project
If a deployed CCAI service project was deleted then it was undeployed beforehand automatically
| Field | Type | Label | Description |
| name | string | CCAI service project name with which to perform the call of the form |
|
| error_message | string | error message if there are any. |
|
| nlu_project_name | string | Required. The nlu agent project of this CcaiProject. Format: |
Request to retrieve a CCAI service project
| Field | Type | Label | Description |
| name | string | CCAI service project name with which to perform the call of the form |
|
| 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: |
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
Request to retrieve a CCAI service project
| Field | Type | Label | Description |
| name | string | CCAI service project name with which to perform the call of the form |
|
| nlu_project_name | string | Required. The nlu agent project of this CcaiProject. Format: |
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
Request to get the list of agents
| Field | Type | Label | Description |
| 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:
|
| nlu_project_name | string | Required. The nlu agent project of this CcaiProject. Format: |
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
This is a protobuf message definition for the response of getting a list of CCAI service projects.
| Field | Type | Label | Description |
| 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 |
Request to updated CCAI service project
| Field | Type | Label | Description |
| 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: |
Request to updated CCAI service project
| Field | Type | Label | Description |
| name | string | CCAI service project name with which to perform the call of the form |
|
| error_message | string | error message if there are any. |
Enum to specify the sorting field for CCAI service projects.
| Name | Number | Description |
| NO_CCAI_PROJECT_SORTING | 0 | No sorting |
| SORT_CCAI_PROJECT_BY_NAME | 1 | Sort by project name such as |
| 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 |
Status of a Call Center AI (CCAI service) Project.
| Name | Number | Description |
| 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 defines what the CcaiProject message contains
| Name | Number | Description |
| 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 |
| Name | Number | Description |
| 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 |
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.
| Name | Number | Description |
| 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. |
Message for adding notifications in a batch.
| Field | Type | Label | Description |
| notifications | Notification | repeated | List of notifications to be added. |
Message containing the response to adding notifications.
| Field | Type | Label | Description |
| notifications | Notification | repeated | List of notifications that have been added. |
Comment message
| Field | Type | Label | Description |
| name | string | resource name of the comment |
|
| text | string | text of the comment |
|
| user_id | string | User id as resource name. Format: |
|
| comment_about_name | string | name of the resource for which the comment is about. Format: |
|
| parent_comment_name | string | The resource name of the parent comment. A parent comment is a reply to a certain comment. Format: |
|
| 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. |
Key-Value pair message, where the value can be one of various types (int, float, double, string, etc.).
| Field | Type | Label | Description |
| 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). |
Message for listing notifications based on certain criteria.
| Field | Type | Label | Description |
| 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:
|
|
| field_mask | google.protobuf.FieldMask | Optional. Mask to control which fields will be filled with data.
|
Message containing the response to a list request for notifications.
| Field | Type | Label | Description |
| notifications | Notification | repeated | List of notifications that meet the specified criteria. |
A generic log entry structure.
| Field | Type | Label | Description |
| name | string | Resource name of the log entry. Format: |
|
| 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 message
| Field | Type | Label | Description |
| name | string | resource name of the notification |
|
| user_name | string | User id as resource name. Format: |
|
| title | string | User id as resource name. Format: |
|
| 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. |
Message for filtering notifications based on various criteria.
| Field | Type | Label | Description |
| 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. |
Message for setting the flagged status of notifications.
| Field | Type | Label | Description |
| notification_names | string | repeated | Names of notifications to set the flagged status for. |
| flagged | bool | repeated | Flagged status to set for the specified notifications. |
Message for setting the read status of notifications.
| Field | Type | Label | Description |
| notification_names | string | repeated | Names of notifications to set the read status for. |
| flagged | bool | repeated | Read status to set for the specified notifications. |
statistic response
| Field | Type | Label | Description |
| value | uint32 | Response wrapper for the "Get<Stat>" endpoints |
Log levels for various system operations based on Loguru log levels.
| Name | Number | Description |
| 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. |
Enumerates the possible flagged statuses for a notification.
| Name | Number | Description |
| NOTIFICATION_FLAGGED_STATUS_UNSPECIFIED | 0 | Unspecified flagged status |
| NOTIFICATION_FLAGGED_STATUS_FLAGGED | 1 | Notification is flagged |
| NOTIFICATION_FLAGGED_STATUS_UNFLAGGED | 2 | Notification is unflagged |
Enumerates the possible origins for a notification.
| Name | Number | Description |
| 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 |
Enumerates the possible read statuses for a notification.
| Name | Number | Description |
| 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 |
Enumerates the possible types for a notification.
| Name | Number | Description |
| 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 |
Enum for notification type
| Name | Number | Description |
| 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 |
Sorting mode
| Name | Number | Description |
| ASCENDING | 0 | ascending sorting |
| DESCENDING | 1 | descending sorting |
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.
rpc ListContexts (ListContextsRequest) returns (ListContextsResponse)Returns the list of all contexts in the specified session.
rpc GetContext (GetContextRequest) returns (Context)Retrieves the specified context.
rpc CreateContext (CreateContextRequest) returns (Context)Creates a context.
rpc UpdateContext (UpdateContextRequest) returns (Context)Updates the specified context.
rpc DeleteContext (DeleteContextRequest) returns (.google.protobuf.Empty)Deletes the specified context.
rpc DeleteAllContexts (DeleteAllContextsRequest) returns (.google.protobuf.Empty)Deletes all active contexts in the specified session.
| 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 |
Represents a context.
| Field | Type | Label | Description |
| name | string | Required. The display name of the context (must be unique per session).
Note: we are deviating from the dialogflow format
|
|
| lifespan_count | int32 | Optional. The number of conversational query requests after which the
context expires. If set to |
|
| 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. |
Represents a parameter associated with a context
| Field | Type | Label | Description |
| 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. |
| Field | Type | Label | Description |
| key | string |
|
|
| value | Context.Parameter |
|
The request message for Contexts.CreateContext.
| Field | Type | Label | Description |
| session_id | string | Required. The session to create a context for. Format: |
|
| context | Context | Required. The context to create. |
The request message for Contexts.DeleteAllContexts.
| Field | Type | Label | Description |
| session_id | string | Required. The name of the session to delete all contexts from. Format: |
The request message for Contexts.DeleteContext.
| Field | Type | Label | Description |
| name | string | Required. The name of the context to delete. Format:
|
The request message for Contexts.GetContext.
| Field | Type | Label | Description |
| name | string | Required. The name of the context. Format:
|
The request message for Contexts.ListContexts.
| Field | Type | Label | Description |
| session_id | string | Required. The session to list all contexts from. Format: |
|
| 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:
|
The response message for Contexts.ListContexts.
| Field | Type | Label | Description |
| 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 |
The request message for Contexts.UpdateContext.
| Field | Type | Label | Description |
| context | Context | Required. The context to update. |
|
| update_mask | google.protobuf.FieldMask | Optional. The mask to control which fields get updated. |
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:
EntityType type.pizza.sauce entity for red or white pizza sauce, a pizza.cheese entity for the different types of cheese on a pizza, a pizza.topping entity for different toppings, and so on. A developer entity is represented by the EntityType type.For more information about entity types, see the Dialogflow documentation.
rpc ListEntityTypes (ListEntityTypesRequest) returns (ListEntityTypesResponse)Returns the list of all entity types in the specified agent.
rpc GetEntityType (GetEntityTypeRequest) returns (EntityType)Retrieves the specified entity type.
rpc CreateEntityType (CreateEntityTypeRequest) returns (EntityType)Creates an entity type in the specified agent.
rpc UpdateEntityType (UpdateEntityTypeRequest) returns (EntityType)Updates the specified entity type.
rpc DeleteEntityType (DeleteEntityTypeRequest) returns (.google.protobuf.Empty)Deletes the specified entity type.
rpc BatchUpdateEntityTypes (BatchUpdateEntityTypesRequest) returns (Operation)Updates/Creates multiple entity types in the specified agent. Operation <response: BatchUpdateEntityTypesResponse, metadata: google.protobuf.Struct>
rpc BatchDeleteEntityTypes (BatchDeleteEntityTypesRequest) returns (Operation)Deletes entity types in the specified agent. Operation <response: google.protobuf.Empty, metadata: google.protobuf.Struct>
rpc GetEntity (GetEntityRequest) returns (EntityType.Entity)Retrieves the specified entity .
rpc CreateEntity (CreateEntityRequest) returns (EntityType.Entity)Creates an entity in the specified agent.
rpc UpdateEntity (UpdateEntityRequest) returns (EntityType.Entity)Updates the specified entity .
rpc DeleteEntity (DeleteEntityRequest) returns (DeleteEntityStatus)Deletes the specified entity .
rpc BatchCreateEntities (BatchCreateEntitiesRequest) returns (BatchEntitiesResponse)Creates an entity value in an entity type.
rpc BatchUpdateEntities (BatchUpdateEntitiesRequest) returns (BatchEntitiesResponse)Updates a specific entity value.
rpc BatchGetEntities (BatchGetEntitiesRequest) returns (BatchEntitiesResponse)Gets a specific entity value.
rpc BatchDeleteEntities (BatchDeleteEntitiesRequest) returns (BatchDeleteEntitiesResponse)Deletes the specified entity value.
rpc ListEntities (ListEntitiesRequest) returns (ListEntitiesResponse)List entities of an entity type
| 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/*} |
This message is a request to create a batch entities
| Field | Type | Label | Description |
| create_entity_requests | CreateEntityRequest | repeated | The create entity requests in a batch |
This message is a request to delete a batch of entities
| Field | Type | Label | Description |
| names | string | repeated | The unique identifiers of the entities. Format:
|
This message is a response of deletion of a batch of entities
| Field | Type | Label | Description |
| delete_statuses | DeleteEntityStatus | repeated | status of an entity deletion |
| has_errors | bool | error messages |
The request message for EntityTypes.BatchDeleteEntityTypes.
| Field | Type | Label | Description |
| parent | string | Required. The name of the agent to delete all entities types for. Format:
|
|
| entity_type_names | string | repeated | Required. The names entity types to delete. All names must point to the same agent as `parent`. |
This message is a response of batch entities
| Field | Type | Label | Description |
| entity_statuses | EntityStatus | repeated | A list of entity statuses |
| has_errors | bool | indicates if statuses of some of the training phrases have errors |
This message is a request to get a batch of entities
| Field | Type | Label | Description |
| names | string | repeated | The unique identifiers of the entities. Format:
|
This message is a request to update a batch of entities
| Field | Type | Label | Description |
| entities | EntityType.Entity | repeated | The entities to update |
The request message for EntityTypes.BatchUpdateEntityTypes.
| Field | Type | Label | Description |
| parent | string | Required. The name of the agent to update or create entity types in. Format: |
|
| 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 |
|
| update_mask | google.protobuf.FieldMask | Optional. The mask to control which fields get updated. |
The response message for EntityTypes.BatchUpdateEntityTypes.
| Field | Type | Label | Description |
| entity_types | EntityType | repeated | The collection of updated or created entity types. |
| Field | Type | Label | Description |
| entity_type_name | string | Required. Name of the entity type in which to create the entity value. Format:
|
|
| entity | EntityType.Entity | The entity value to create |
The request message for EntityTypes.CreateEntityType.
| Field | Type | Label | Description |
| parent | string | Required. The agent to create a entity type for. Format: |
|
| entity_type | EntityType | Required. The entity type to create. |
|
| language_code | string | Optional. The language of entity synonyms defined in |
|
| entity_type_view | EntityTypeView | Optional. The resource view to apply to the returned Entity Type |
This message is a request to delete a batch of entities
| Field | Type | Label | Description |
| name | string | The unique identifiers of the entities. Format:
|
This message contains the status of an entity deletion
| Field | Type | Label | Description |
| successfully_deleted | google.protobuf.Empty |
|
|
| error_message | string |
|
The request message for EntityTypes.DeleteEntityType.
| Field | Type | Label | Description |
| name | string | Required. The name of the entity type to delete. Format: |
This message is for the entity status
| Field | Type | Label | Description |
| entity | EntityType.Entity | The entity |
|
| error_message | string | Error message |
Represents an entity type.
Entity types serve as a tool for extracting parameter values from natural
language queries.
| Field | Type | Label | Description |
| name | string | Required for all methods except |
|
| 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. |
Represents an entity value within an entity type
| Field | Type | Label | Description |
| value | string | Required.
For
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:
|
|
| synonyms | string | repeated | Required. A collection of synonyms. For |
| name | string | The unique identifier of the entity. Format:
|
|
| 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. |
This message is a wrapper around a collection of entity types.
| Field | Type | Label | Description |
| entity_types | EntityType | repeated | A collection of entity types. |
This message contains Entity type sorting
| Field | Type | Label | Description |
| sorting_field | EntityTypeSorting.EntityTypeSortingField |
|
|
| sorting_mode | SortingMode |
|
This message contains entity value sorting
| Field | Type | Label | Description |
| sorting_field | EntityValueSorting.EntityValueSortingField |
|
|
| sorting_mode | SortingMode |
|
This message is a request to get a an entity
| Field | Type | Label | Description |
| name | string | The unique identifiers of the entities. Format:
|
The request message for EntityTypes.GetEntityType.
| Field | Type | Label | Description |
| name | string | Required. The name of the entity type. Format: |
|
| 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:
|
|
| entity_type_view | EntityTypeView | Optional. The resource view to apply to the returned Entity Type |
This message is a request to get a list of entities
| Field | Type | Label | Description |
| entity_type_name | string | The unique identifier of the entity type. Format:
|
|
| 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:
|
|
| 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: |
This message is a response of listing entities
| Field | Type | Label | Description |
| 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 |
The request message for EntityTypes.ListEntityTypes.
| Field | Type | Label | Description |
| parent | string | Required. The agent to list all entity types from. Format: |
|
| 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:
|
|
| 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. |
The response message for EntityTypes.ListEntityTypes.
| Field | Type | Label | Description |
| 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 |
This message is a request to update an entity
| Field | Type | Label | Description |
| entity | EntityType.Entity | The entity to update |
The request message for EntityTypes.UpdateEntityType.
| Field | Type | Label | Description |
| entity_type | EntityType | Required. The entity type to update. Format: |
|
| language_code | string | Optional. The language of entity synonyms defined in |
|
| 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 |
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).
| Name | Number | Description |
| 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. |
| Name | Number | Description |
| ACTIVE | 0 | Entity type is active |
| INACTIVE | 1 | Entity type is inactive |
Represents kinds of entities.
| Name | Number | Description |
| 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). |
Represents the category of entity types to filter by in the "List Entity Types" request
| Name | Number | Description |
| 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 |
Structure of Entity type sorting field
| Name | Number | Description |
| 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 |
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.
| Name | Number | Description |
| 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 |
Structure of Entity value sorting field
| Name | Number | Description |
| 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 |
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.
rpc ListIntents (ListIntentsRequest) returns (ListIntentsResponse)Returns the list of all intents in the specified agent.
rpc GetIntent (GetIntentRequest) returns (Intent)Retrieves the specified intent.
rpc CreateIntent (CreateIntentRequest) returns (Intent)Creates an intent in the specified agent.
rpc UpdateIntent (UpdateIntentRequest) returns (Intent)Updates the specified intent.
rpc DeleteIntent (DeleteIntentRequest) returns (.google.protobuf.Empty)Deletes the specified intent.
rpc BatchUpdateIntents (BatchUpdateIntentsRequest) returns (BatchUpdateIntentsResponse)Updates/Creates multiple intents in the specified agent. Operation <response: BatchUpdateIntentsResponse>
rpc BatchDeleteIntents (BatchDeleteIntentsRequest) returns (Operation)Deletes intents in the specified agent.
rpc TagIntent (IntentTagRequest) returns (.google.protobuf.Empty)Tags a specific intent with tag(s)
rpc DeleteIntentTag (IntentTagRequest) returns (.google.protobuf.Empty)Deletes tag(s) for a specific intent
rpc GetIntentTags (GetIntentTagsRequest) returns (GetIntentTagsResponse)Gets all the tags for a specific intent
rpc GetAllIntentTags (GetAllIntentTagsRequest) returns (GetIntentTagsResponse)Gets all the tags for all the intents
rpc BatchCreateTrainingPhrases (BatchCreateTrainingPhrasesRequest) returns (BatchTrainingPhrasesStatusResponse)Creates batch of training phrases
rpc BatchGetTrainingPhrases (BatchGetTrainingPhrasesRequest) returns (BatchTrainingPhrasesStatusResponse)Retrieve a training phrases batch of the specified names.
rpc BatchUpdateTrainingPhrases (BatchUpdateTrainingPhrasesRequest) returns (BatchTrainingPhrasesStatusResponse)Updates batch of training phrases
rpc BatchDeleteTrainingPhrases (BatchDeleteTrainingPhrasesRequest) returns (BatchDeleteTrainingPhrasesResponse)Delete a training phrases batch of the specified names.
rpc ListTrainingPhrases (ListTrainingPhrasesRequest) returns (ListTrainingPhrasesResponse)List training phrases (of a specific intent).
rpc BatchCreateResponseMessages (BatchCreateResponseMessagesRequest) returns (BatchResponseMessagesStatusResponse)Creates batch of intent messages
rpc BatchGetResponseMessages (BatchGetResponseMessagesRequest) returns (BatchResponseMessagesStatusResponse)Retrieve a intent messages batch of the specified names.
rpc BatchUpdateResponseMessages (BatchUpdateResponseMessagesRequest) returns (BatchResponseMessagesStatusResponse)Updates batch of intent messages
rpc BatchDeleteResponseMessages (BatchDeleteResponseMessagesRequest) returns (BatchDeleteResponseMessagesResponse)Delete a intent messages batch of the specified names.
rpc ListResponseMessages (ListResponseMessagesRequest) returns (ListResponseMessagesResponse)List messages (of a specific intent).
rpc BatchCreateParameters (BatchCreateParametersRequest) returns (BatchParametersStatusResponse)Creates batch of intent messages
rpc BatchGetParameters (BatchGetParametersRequest) returns (BatchParametersStatusResponse)Retrieve a intent messages batch of the specified names.
rpc BatchUpdateParameters (BatchUpdateParametersRequest) returns (BatchParametersStatusResponse)Updates batch of intent messages
rpc BatchDeleteParameters (BatchDeleteParametersRequest) returns (BatchDeleteParametersResponse)Delete a intent messages batch of the specified names.
rpc ListParameters (ListParametersRequest) returns (ListParametersResponse)List messages (of a specific intent).
rpc ListTrainingPhrasesofIntentsWithEnrichment (ListTrainingPhrasesofIntentsWithEnrichmentRequest) returns (ListTrainingPhrasesofIntentsWithEnrichmentResponse)List Training phrases (of a specific intent).
| 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 | * |
Request to create a batch of parameters in the specified intent
| Field | Type | Label | Description |
| parameter_requests | BatchCreateParametersRequest.CreateParameterRequest | repeated | List of parameters to create |
Request to create a single parameter
| Field | Type | Label | Description |
| intent_name | string | Required. The name of the intent for which to create a training phrase for. |
|
| parameter | Intent.Parameter | Required. The response message. |
Request to create a list of new response messages and adds it to an intent
| Field | Type | Label | Description |
| response_message_requests | BatchCreateResponseMessagesRequest.CreateResponseMessageRequest | repeated |
|
Request to create a single response message
| Field | Type | Label | Description |
| 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. |
This message is a request of a creation of a batch of training phrases
| Field | Type | Label | Description |
| training_phrase_requests | BatchCreateTrainingPhrasesRequest.CreateTrainingPhraseRequest | repeated |
|
Request to create a single training phrase
| Field | Type | Label | Description |
| 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. |
The request message for Intents.BatchDeleteIntents.
| Field | Type | Label | Description |
| parent | string | Required. The name of the agent to delete all entities types for. Format:
|
|
| intents | Intent | repeated | Required. The collection of intents to delete. Only intent |
Request to delete parameters specified by their names.
| Field | Type | Label | Description |
| names | string | repeated | Required. The names of the response messages. Format: |
This message contains response of deleted parameters
| Field | Type | Label | Description |
| delete_statuses | BatchDeleteParametersResponse.DeleteParameterStatus | repeated |
|
| has_errors | bool |
|
Status of a parameter deletion operation
| Field | Type | Label | Description |
| successfully_deleted | google.protobuf.Empty |
|
|
| error_message | string |
|
Request to delete response messages specified by their names
| Field | Type | Label | Description |
| names | string | repeated | Required. The names of the response messages. Format: |
Response containing list with deleted response messages
| Field | Type | Label | Description |
| delete_statuses | BatchDeleteResponseMessagesResponse.DeleteResponseMessageStatus | repeated |
|
| has_errors | bool |
|
Status of a response message deletion operation
| Field | Type | Label | Description |
| successfully_deleted | google.protobuf.Empty |
|
|
| error_message | string |
|
This message is a request to delete a batch of training phrases
| Field | Type | Label | Description |
| names | string | repeated | Required. The names of the training phrases. Format: |
This message is a response of deleting a batch of training phrases
| Field | Type | Label | Description |
| delete_statuses | BatchDeleteTrainingPhrasesResponse.DeleteTrainingPhraseStatus | repeated |
|
| has_errors | bool |
|
Status of a training phrase deletion operation
| Field | Type | Label | Description |
| successfully_deleted | google.protobuf.Empty |
|
|
| error_message | string |
|
Request to get batch of parameters in a specified intent
| Field | Type | Label | Description |
| names | string | repeated | Required. The names of the response messages. Format: |
Request to retrieve a response messages
| Field | Type | Label | Description |
| names | string | repeated | Required. The names of the response messages. Format: |
This message is a request to get a batch training phrases
| Field | Type | Label | Description |
| names | string | repeated | Required. The names of the training phrases. Format: |
Response containing a batch of parameters in the specified intent
| Field | Type | Label | Description |
| parameter_statuses | BatchParametersStatusResponse.ParameterStatus | repeated |
|
| has_errors | bool | indicates if statuses of some of the parameters have errors |
Status of a parameter operation
| Field | Type | Label | Description |
| parameter | Intent.Parameter |
|
|
| error_message | string |
|
This message is a response of a batch responses of message status
| Field | Type | Label | Description |
| response_message_statuses | BatchResponseMessagesStatusResponse.ResponseMessageStatus | repeated |
|
| has_errors | bool | indicates if statuses of some of the response messages have errors |
Status of a response message operation
| Field | Type | Label | Description |
| response_message | Intent.Message |
|
|
| error_message | string |
|
This message is a response of the status of a batch of training phrases
| Field | Type | Label | Description |
| 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 |
The request message for Intents.BatchUpdateIntents.
| Field | Type | Label | Description |
| parent | string | Required. The name of the agent to update or create intents in. Format: |
|
| 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 |
|
| 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. |
The response message for Intents.BatchUpdateIntents.
| Field | Type | Label | Description |
| intents | Intent | repeated | The collection of updated or created intents. |
Request to update parameters and adds them to an intent
| Field | Type | Label | Description |
| parameters | Intent.Parameter | repeated | The response messages to update |
Request to update a response message in the specified intent
| Field | Type | Label | Description |
| response_messages | Intent.Message | repeated | The response messages to update |
This message is a request to update a batch of training phrases
| Field | Type | Label | Description |
| training_phrases | Intent.TrainingPhrase | repeated | A list of training phrases |
The request message for Intents.CreateIntent.
| Field | Type | Label | Description |
| parent | string | Required. The agent to create a intent for. Format: |
|
| intent | Intent | Required. The intent to create. |
|
| language_code | string | Optional. The language of training phrases, parameters and rich messages
defined in |
|
| intent_view | IntentView | Optional. The resource view to apply to the returned intent. |
The request message for Intents.DeleteIntent.
| Field | Type | Label | Description |
| name | string | Required. The name of the intent to delete. Format: |
This message is a request to get all intent tags
| Field | Type | Label | Description |
| parent | string | Required. The name of the agent to delete all entities types for. Format:
|
The request message for Intents.GetIntent.
| Field | Type | Label | Description |
| name | string | Required. The name of the intent. Format: |
|
| 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:
|
This message is a request to get intent tags
| Field | Type | Label | Description |
| intent_name | string | The path of the intent. Format: |
This message is a response of getting intent tags
| Field | Type | Label | Description |
| intent_tags | string | repeated | All the distinct intent tags sorted |
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.
| Field | Type | Label | Description |
| name | string | Required for all methods except |
|
| 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 |
|
| input_context_names | string | repeated | Optional. The list of context names required for this intent to be triggered. Format: |
| 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 |
| 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
|
| 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: |
|
| 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: |
|
| 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. |
Represents a single followup intent in the chain.
| Field | Type | Label | Description |
| followup_intent_name | string | The unique identifier of the followup intent. Format: |
|
| parent_followup_intent_name | string | The unique identifier of the followup intent parent. Format: |
Corresponds to the Response field in the Dialogflow console.
| Field | Type | Label | Description |
| name | string | Required. The name of the return message. Format: |
|
| 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. |
The Audio response message.
| Field | Type | Label | Description |
| 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. |
The basic card message. Useful for displaying information.
| Field | Type | Label | Description |
| 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. |
The button object that appears at the bottom of a card.
| Field | Type | Label | Description |
| 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. |
Opens the given URI.
| Field | Type | Label | Description |
| uri | string | Required. The HTTP or HTTPS scheme URI. |
The card response message.
| Field | Type | Label | Description |
| 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. |
Optional. Contains information about a button.
| Field | Type | Label | Description |
| 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. |
The card for presenting a carousel of options to select from.
| Field | Type | Label | Description |
| items | Intent.Message.CarouselSelect.Item | repeated | Required. Carousel items. |
An item in the carousel.
| Field | Type | Label | Description |
| 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. |
This message contains HTML text
| Field | Type | Label | Description |
| text | string | repeated | Collection of the agent's responses in HTML format |
The image response message.
| Field | Type | Label | Description |
| 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. |
The suggestion chip message that allows the user to jump out to the app or website associated with this agent.
| Field | Type | Label | Description |
| 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. |
The card for presenting a list of options to select from.
| Field | Type | Label | Description |
| title | string | Optional. The overall title of the list. |
|
| items | Intent.Message.ListSelect.Item | repeated | Required. List items. |
An item in the list.
| Field | Type | Label | Description |
| 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. |
The quick replies response message.
| Field | Type | Label | Description |
| title | string | Optional. The title of the collection of quick replies. |
|
| quick_replies | string | repeated | Optional. The collection of quick replies. |
Additional info about the select item for when it is triggered in a dialog.
| Field | Type | Label | Description |
| 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. |
The simple response message containing speech or text.
| Field | Type | Label | Description |
| 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. |
The collection of simple response candidates. This message in QueryResult.fulfillment_messages and WebhookResponse.fulfillment_messages should contain only one SimpleResponse.
| Field | Type | Label | Description |
| simple_responses | Intent.Message.SimpleResponse | repeated | Required. The list of simple responses. |
The suggestion chip message that the user can tap to quickly post a reply to the conversation.
| Field | Type | Label | Description |
| title | string | Required. The text shown the in the suggestion chip. |
The collection of suggestions.
| Field | Type | Label | Description |
| suggestions | Intent.Message.Suggestion | repeated | Required. The list of suggested replies. |
The text response message.
| Field | Type | Label | Description |
| text | string | repeated | Optional. The collection of the agent's responses. |
The Video response message.
| Field | Type | Label | Description |
| 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. |
Represents intent parameters.
| Field | Type | Label | Description |
| name | string | The unique identifier of this parameter. Format: |
|
| display_name | string | Required. The name of the parameter. |
|
| value | string | Optional. The definition of the parameter value. It can be:
|
|
| default_value | string | Optional. The default value to use when the |
|
| entity_type_name | string | Optional. The unique identifier of the entity type in format
|
|
| 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. |
Represents the prompts in the parameters.
| Field | Type | Label | Description |
| name | string | The unique identifier of this prompt. Format: |
|
| 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. |
Represents an example or template that the agent is trained on.
| Field | Type | Label | Description |
| name | string | Required. The unique identifier of this training phrase. Format: |
|
| 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. |
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.
| Field | Type | Label | Description |
| entity_type_name | string | Required. The unique entity type identifier in format
|
|
| entity_type_display_name | string | Optional. The entity type name. |
|
| entity_value_name | string | Optional. The unique entity value identifier in format
|
|
| 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
|
|
| 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. |
This message is a wrapper around a collection of intents.
| Field | Type | Label | Description |
| intents | Intent | repeated | A collection of intents. |
This message contains sorting of an intent
| Field | Type | Label | Description |
| sorting_field | IntentSorting.IntentSortingField |
|
|
| sorting_mode | SortingMode |
|
This message is a request to get an intent tag
| Field | Type | Label | Description |
| intent_name | string | The path of the intent. Format: |
|
| tags | string | repeated | Intent tags for this intent to operate on |
The request message for Intents.ListIntents.
| Field | Type | Label | Description |
| parent | string | Required. The agent to list all intents from. Format: |
|
| 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:
|
|
| 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. |
The response message for Intents.ListIntents.
| Field | Type | Label | Description |
| 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 |
The request message for TrainingPhraseRequest
| Field | Type | Label | Description |
| intent_name | string | Required. The agent to list all intents from. Format: |
|
| 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:
|
The response message for ListTrainingPhrase
| Field | Type | Label | Description |
| 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: |
The request message for ResponseMessageRequest
| Field | Type | Label | Description |
| intent_name | string | Required. The agent to list all intents from. Format: |
|
| 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:
|
The response message for ListResponseMessage
| Field | Type | Label | Description |
| 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: |
The request message for TrainingPhraseRequest
| Field | Type | Label | Description |
| intent_name | string | Required. The agent to list all intents from. Format: |
|
| 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:
|
The response message for ListTrainingPhrase
| Field | Type | Label | Description |
| 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: |
The request message for TrainingPhraseRequest
| Field | Type | Label | Description |
| parent | string | Required. The name of the agent to delete all entities types for. Format:
|
|
| 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:
|
This message contains a list of training phrases filtered by intent ids, language code and parent passed through the request
| Field | Type | Label | Description |
| 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: |
This message containing the training phrases status
| Field | Type | Label | Description |
| training_phrase | Intent.TrainingPhrase |
|
|
| error_message | string |
|
The request message for Intents.UpdateIntent.
| Field | Type | Label | Description |
| intent | Intent | Required. The intent to update. Format: |
|
| language_code | string | Optional. The language of training phrases, parameters and rich messages
defined in |
|
| 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. |
Structure of status of an Intent
| Name | Number | Description |
| ACTIVE | 0 | Intent is active |
| INACTIVE | 1 | Intent is inactive |
Represents different platforms that a rich message can be intended for.
| Name | Number | Description |
| PLATFORM_UNSPECIFIED | 0 | Not specified. |
| 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 |
| 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 |
Represents different types of training phrases.
| Name | Number | Description |
| 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. |
Represents the different states that webhooks can be in.
| Name | Number | Description |
| 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. |
Represents the type of intents to filter by in the "List Intents" request
| Name | Number | Description |
| 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 |
Structure of intent sorting field
| Name | Number | Description |
| 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 |
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.
| Name | Number | Description |
| 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 |
LangSmith-style evaluation surface: datasets, examples, experiments, evaluator
runs, feedback (LLM-as-judge / human / heuristic / custom code / pairwise),
pairwise comparisons, release gates + persisted gate runs, scorecards,
per-project evaluation settings (judge configuration), the evaluator registry,
golden-transcript recording from sessions, conversation simulation
(standard + adversarial red-teaming), recurring schedules and report artifacts.
rpc LlmEvaluationCreateDataset (CreateLlmEvaluationDatasetRequest) returns (LlmEvaluationDataset)Create a new evaluation dataset.
rpc LlmEvaluationGetDataset (GetLlmEvaluationDatasetRequest) returns (LlmEvaluationDataset)Get an evaluation dataset by resource name.
rpc LlmEvaluationListDatasets (ListLlmEvaluationDatasetsRequest) returns (ListLlmEvaluationDatasetsResponse)List evaluation datasets in the project, optionally filtered + paginated.
rpc LlmEvaluationUpdateDataset (UpdateLlmEvaluationDatasetRequest) returns (LlmEvaluationDataset)Update metadata of an existing evaluation dataset (examples managed via Add/Update/Delete RPCs).
rpc LlmEvaluationDeleteDataset (DeleteLlmEvaluationDatasetRequest) returns (.google.protobuf.Empty)Delete an evaluation dataset and all owned examples.
rpc LlmEvaluationAddExample (AddLlmEvaluationExampleRequest) returns (LlmEvaluationExample)Add a single example to an existing dataset.
rpc LlmEvaluationAddExamples (AddLlmEvaluationExamplesRequest) returns (AddLlmEvaluationExamplesResponse)Add multiple examples to an existing dataset in one call.
rpc LlmEvaluationGetExample (GetLlmEvaluationExampleRequest) returns (LlmEvaluationExample)Get a single evaluation example by resource name.
rpc LlmEvaluationListExamples (ListLlmEvaluationExamplesRequest) returns (ListLlmEvaluationExamplesResponse)List examples in a dataset, optionally filtered + paginated.
rpc LlmEvaluationUpdateExample (UpdateLlmEvaluationExampleRequest) returns (LlmEvaluationExample)Update fields of an existing evaluation example.
rpc LlmEvaluationDeleteExample (DeleteLlmEvaluationExampleRequest) returns (.google.protobuf.Empty)Delete an evaluation example.
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.
rpc LlmEvaluationGetExperiment (GetLlmEvaluationExperimentRequest) returns (LlmEvaluationExperiment)Retrieve a previously-run experiment by resource name.
rpc LlmEvaluationListExperiments (ListLlmEvaluationExperimentsRequest) returns (ListLlmEvaluationExperimentsResponse)List experiments in a project, optionally filtered + paginated.
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.
rpc LlmEvaluationDeleteExperiment (DeleteLlmEvaluationExperimentRequest) returns (.google.protobuf.Empty)Delete an experiment and all owned evaluator runs + feedbacks.
rpc LlmEvaluationCancelExperiment (CancelLlmEvaluationExperimentRequest) returns (LlmEvaluationExperiment)Cancel a still-running experiment. No-op if already finished.
rpc LlmEvaluationCompareExperiments (CompareLlmEvaluationExperimentsRequest) returns (LlmEvaluationComparison)Compare two-or-more experiments and emit a pairwise comparison report.
rpc LlmEvaluationSubmitFeedback (SubmitLlmEvaluationFeedbackRequest) returns (LlmEvaluationFeedback)Submit a single feedback record (used by human reviewers / external evaluators).
rpc LlmEvaluationListFeedback (ListLlmEvaluationFeedbackRequest) returns (ListLlmEvaluationFeedbackResponse)List feedback records, optionally filtered + paginated.
rpc LlmEvaluationDeleteFeedback (DeleteLlmEvaluationFeedbackRequest) returns (.google.protobuf.Empty)Delete a single feedback record.
rpc LlmEvaluationUpdateFeedback (UpdateLlmEvaluationFeedbackRequest) returns (LlmEvaluationFeedback)Update a single feedback record (e.g. correct a human review score or comment).
rpc LlmEvaluationCreateReleaseGate (CreateLlmEvaluationReleaseGateRequest) returns (LlmEvaluationReleaseGate)Create a new release gate (a named set of thresholds over evaluator scores, regression deltas and telemetry that decides whether a candidate configuration ships).
rpc LlmEvaluationGetReleaseGate (GetLlmEvaluationReleaseGateRequest) returns (LlmEvaluationReleaseGate)Get a release gate by resource name.
rpc LlmEvaluationListReleaseGates (ListLlmEvaluationReleaseGatesRequest) returns (ListLlmEvaluationReleaseGatesResponse)List release gates in the project, optionally filtered + paginated.
rpc LlmEvaluationUpdateReleaseGate (UpdateLlmEvaluationReleaseGateRequest) returns (LlmEvaluationReleaseGate)Update an existing release gate. Semantic changes (suite, baseline, evaluators, thresholds, weights, safety) increment the server-managed revision.
rpc LlmEvaluationDeleteReleaseGate (DeleteLlmEvaluationReleaseGateRequest) returns (.google.protobuf.Empty)Delete a release gate and all owned gate runs.
rpc LlmEvaluationRunReleaseGate (RunLlmEvaluationReleaseGateRequest) returns (Operation)Run a release gate against a candidate target. Long-running operation: the returned Operation resolves to the completed LlmEvaluationReleaseGateRun once the candidate (and optional safety) experiments finished and the verdict has been computed and persisted server-side.
rpc LlmEvaluationGetReleaseGateRun (GetLlmEvaluationReleaseGateRunRequest) returns (LlmEvaluationReleaseGateRun)Get a single release gate run (persisted verdict + checks) by resource name.
rpc LlmEvaluationListReleaseGateRuns (ListLlmEvaluationReleaseGateRunsRequest) returns (ListLlmEvaluationReleaseGateRunsResponse)List release gate runs, optionally filtered + paginated.
rpc LlmEvaluationCreateScorecard (CreateLlmEvaluationScorecardRequest) returns (LlmEvaluationScorecard)Create a new scorecard (weighted multi-criteria roll-up definition).
rpc LlmEvaluationGetScorecard (GetLlmEvaluationScorecardRequest) returns (LlmEvaluationScorecard)Get a scorecard by resource name.
rpc LlmEvaluationListScorecards (ListLlmEvaluationScorecardsRequest) returns (ListLlmEvaluationScorecardsResponse)List scorecards in the project, optionally filtered + paginated.
rpc LlmEvaluationUpdateScorecard (UpdateLlmEvaluationScorecardRequest) returns (LlmEvaluationScorecard)Update an existing scorecard.
rpc LlmEvaluationDeleteScorecard (DeleteLlmEvaluationScorecardRequest) returns (.google.protobuf.Empty)Delete a scorecard.
rpc LlmEvaluationGetProjectSettings (GetLlmEvaluationProjectSettingsRequest) returns (LlmEvaluationProjectSettings)Get the per-(project, language_code) evaluation settings singleton (judge configuration, default weights, pass cutoffs). The server auto-creates default settings on first access.
rpc LlmEvaluationUpdateProjectSettings (UpdateLlmEvaluationProjectSettingsRequest) returns (LlmEvaluationProjectSettings)Update the per-(project, language_code) evaluation settings singleton.
rpc LlmEvaluationListEvaluators (ListLlmEvaluationEvaluatorsRequest) returns (ListLlmEvaluationEvaluatorsResponse)List the evaluators available on this server, with metadata describing the category, required example fields, multi-turn support, default threshold, judge requirement and configurable parameters of each evaluator.
rpc LlmEvaluationCreateExamplesFromSession (CreateLlmEvaluationExamplesFromSessionRequest) returns (CreateLlmEvaluationExamplesFromSessionResponse)Convert a recorded session (or a selection of its session steps) into evaluation examples ("golden transcripts") inside an existing dataset.
rpc LlmEvaluationSimulateConversations (SimulateLlmEvaluationConversationsRequest) returns (Operation)Generate synthetic multi-turn evaluation conversations by simulating users (persona-driven; STANDARD kind) or attackers (red-teaming; ADVERSARIAL kind) against the live target. Long-running operation: the returned Operation resolves once the generated examples have been persisted into the receiving dataset.
rpc LlmEvaluationCreateSchedule (CreateLlmEvaluationScheduleRequest) returns (LlmEvaluationSchedule)Create a new schedule for recurring experiment / release gate runs.
rpc LlmEvaluationGetSchedule (GetLlmEvaluationScheduleRequest) returns (LlmEvaluationSchedule)Get a schedule by resource name.
rpc LlmEvaluationListSchedules (ListLlmEvaluationSchedulesRequest) returns (ListLlmEvaluationSchedulesResponse)List schedules in the project, optionally filtered + paginated.
rpc LlmEvaluationUpdateSchedule (UpdateLlmEvaluationScheduleRequest) returns (LlmEvaluationSchedule)Update an existing schedule (cron / interval, enabled flag, request template).
rpc LlmEvaluationDeleteSchedule (DeleteLlmEvaluationScheduleRequest) returns (.google.protobuf.Empty)Delete a schedule. Experiments / gate runs already created by it are kept.
rpc LlmEvaluationCreateReport (CreateLlmEvaluationReportRequest) returns (LlmEvaluationReport)Persist a generated report as an immutable artifact (incl. payload bytes).
rpc LlmEvaluationGetReport (GetLlmEvaluationReportRequest) returns (LlmEvaluationReport)Get a report by resource name (incl. payload bytes).
rpc LlmEvaluationListReports (ListLlmEvaluationReportsRequest) returns (ListLlmEvaluationReportsResponse)List reports, optionally filtered + paginated. Payload bytes are omitted unless explicitly requested via field_mask.
rpc LlmEvaluationDeleteReport (DeleteLlmEvaluationReportRequest) returns (.google.protobuf.Empty)Delete a report.
rpc LlmEvaluationCreateAbExperiment (CreateLlmEvaluationAbExperimentRequest) returns (LlmEvaluationAbExperiment)Create a new A/B experiment (a set of routing variants over live DetectIntent traffic). Created in DRAFT status; traffic is only split once it is started via LlmEvaluationStartAbExperiment.
rpc LlmEvaluationGetAbExperiment (GetLlmEvaluationAbExperimentRequest) returns (LlmEvaluationAbExperiment)Get an A/B experiment by resource name.
rpc LlmEvaluationListAbExperiments (ListLlmEvaluationAbExperimentsRequest) returns (ListLlmEvaluationAbExperimentsResponse)List A/B experiments in the project, optionally filtered + paginated.
rpc LlmEvaluationUpdateAbExperiment (UpdateLlmEvaluationAbExperimentRequest) returns (LlmEvaluationAbExperiment)Update an existing A/B experiment (variants, traffic config, metadata). Only allowed in DRAFT / STOPPED status; running experiments must be stopped first.
rpc LlmEvaluationDeleteAbExperiment (DeleteLlmEvaluationAbExperimentRequest) returns (.google.protobuf.Empty)Delete an A/B experiment and all owned sticky-assignment rows.
rpc LlmEvaluationStartAbExperiment (StartLlmEvaluationAbExperimentRequest) returns (LlmEvaluationAbExperiment)Start an A/B experiment: validates that the variant traffic weights are well-formed (sum to the configured total), stamps started_at and transitions the experiment to RUNNING so live traffic begins to be split.
rpc LlmEvaluationStopAbExperiment (StopLlmEvaluationAbExperimentRequest) returns (LlmEvaluationAbExperiment)Stop a running A/B experiment: stamps stopped_at and transitions to STOPPED. Existing sticky assignments are retained for results computation.
rpc LlmEvaluationGetAbExperimentResults (GetLlmEvaluationAbExperimentResultsRequest) returns (GetLlmEvaluationAbExperimentResultsResponse)Compute per-variant telemetry rollups for an A/B experiment. Stateless / computed on demand: gathers each variant's sessions and aggregates their LlmTelemetry into a per-variant LlmTelemetryReport. There is no auto-rollout.
rpc LlmEvaluationGetAbRolloutRecommendation (GetLlmEvaluationAbRolloutRecommendationRequest) returns (LlmEvaluationAbRolloutRecommendation)Compute a rollout recommendation for an A/B experiment: which variant wins against the control on the chosen optimize metric under the supplied statistical guard-rails (confidence level, minimum sessions per variant, minimum effect size). Stateless / read-only — computed on demand from the per-variant results; nothing is persisted and no traffic / config changes.
rpc LlmEvaluationApplyAbRollout (ApplyLlmEvaluationAbRolloutRequest) returns (LlmEvaluationAbRolloutDecision)Apply a rollout for an A/B experiment: promotes the chosen variant's config as the project's classifier default, stops the experiment, and writes + returns the LlmEvaluationAbRolloutDecision audit record. The operator picks the variant explicitly (there is no auto-rollout). Idempotent: re-applying an already-rolled-out experiment returns the existing decision.
rpc LlmEvaluationGetAbRolloutDecision (GetLlmEvaluationAbRolloutDecisionRequest) returns (LlmEvaluationAbRolloutDecision)Get the applied rollout decision (audit record) by resource name.
rpc LlmEvaluationListAbRolloutDecisions (ListLlmEvaluationAbRolloutDecisionsRequest) returns (ListLlmEvaluationAbRolloutDecisionsResponse)List applied rollout decisions in the project, optionally filtered (e.g. by experiment) + paginated.
rpc LlmEvaluationCreateOnlineConfig (CreateLlmEvaluationOnlineConfigRequest) returns (LlmEvaluationOnlineConfig)Create a new online-evaluation config: a per-(project, language_code) definition selecting a reference-free evaluator set + a sample rate. A swarm-safe background worker samples already-persisted live session steps, scores the recorded answer with these evaluators and enqueues failing steps into the annotation queue.
rpc LlmEvaluationGetOnlineConfig (GetLlmEvaluationOnlineConfigRequest) returns (LlmEvaluationOnlineConfig)Get an online-evaluation config by resource name.
rpc LlmEvaluationListOnlineConfigs (ListLlmEvaluationOnlineConfigsRequest) returns (ListLlmEvaluationOnlineConfigsResponse)List online-evaluation configs in the project, optionally filtered + paginated.
rpc LlmEvaluationUpdateOnlineConfig (UpdateLlmEvaluationOnlineConfigRequest) returns (LlmEvaluationOnlineConfig)Update an existing online-evaluation config (enabled flag, evaluator set, sample rate, thresholds, session filter).
rpc LlmEvaluationDeleteOnlineConfig (DeleteLlmEvaluationOnlineConfigRequest) returns (.google.protobuf.Empty)Delete an online-evaluation config. Already-produced online results and annotation-queue items are kept.
rpc LlmEvaluationGetOnlineResult (GetLlmEvaluationOnlineResultRequest) returns (LlmEvaluationOnlineResult)Get a single online-evaluation result (per scored session step) by resource name.
rpc LlmEvaluationListOnlineResults (ListLlmEvaluationOnlineResultsRequest) returns (ListLlmEvaluationOnlineResultsResponse)List online-evaluation results, optionally filtered by config / pass-state + paginated. Read-only: result rows are produced by the online-evaluation worker (no Create RPC).
rpc LlmEvaluationGetAnnotationQueueItem (GetLlmEvaluationAnnotationQueueItemRequest) returns (LlmEvaluationAnnotationQueueItem)Get a single annotation-queue item by resource name.
rpc LlmEvaluationListAnnotationQueueItems (ListLlmEvaluationAnnotationQueueItemsRequest) returns (ListLlmEvaluationAnnotationQueueItemsResponse)List annotation-queue items, optionally filtered by status / assignee + paginated. Items are enqueued by the online-evaluation worker (no Create RPC).
rpc LlmEvaluationUpdateAnnotationQueueItem (UpdateLlmEvaluationAnnotationQueueItemRequest) returns (LlmEvaluationAnnotationQueueItem)Update an annotation-queue item (status / assignee / reason transitions: PENDING -> REVIEWED / DISMISSED).
rpc LlmEvaluationPromoteAnnotationQueueItem (PromoteLlmEvaluationAnnotationQueueItemRequest) returns (PromoteLlmEvaluationAnnotationQueueItemResponse)Promote an annotation-queue item into a regression dataset. Thin server-side composition: delegates to LlmEvaluationCreateExamplesFromSession with the item's session (+ selected steps), flips the item status to PROMOTED and stamps the promoted dataset name. Returns the created example(s).
Request to append a single example to an existing dataset.
| Field | Type | Label | Description |
| llm_evaluation_dataset_name | string | Resource name of the dataset to extend.
Format: |
|
| llm_evaluation_example | LlmEvaluationExample | Example payload to append. |
|
| parent | string | Project owning the dataset.
Format: |
|
| language_code | string | BCP-47 language-code scope (required, must match the dataset's). |
Request to append multiple examples to an existing dataset.
| Field | Type | Label | Description |
| llm_evaluation_dataset_name | string | Resource name of the dataset to extend.
Format: |
|
| llm_evaluation_examples | LlmEvaluationExample | repeated | Examples to append. |
| parent | string | Project owning the dataset.
Format: |
|
| language_code | string | BCP-47 language-code scope (required, must match the dataset's). |
Response for AddExamples.
| Field | Type | Label | Description |
| llm_evaluation_examples | LlmEvaluationExample | repeated | Example records created. |
Request to apply an A/B rollout: promotes the chosen variant's config to the
project's classifier default, stops the experiment and writes the audit
decision. Idempotent — re-applying the same already-applied experiment returns
the existing decision rather than promoting twice.
| Field | Type | Label | Description |
| name | string | Resource name of the experiment to roll out.
Format: |
|
| variant_id | string | Required. Variant slug whose config to promote to the project classifier default. The operator's explicit choice; the server applies exactly this variant. |
|
| optimize_metric | LlmEvaluationAbOptimizeMetric | The metric the decision was made on, recorded on the audit decision. |
|
| parent | string | Project owning the experiment.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to cancel a running experiment.
| Field | Type | Label | Description |
| name | string | Resource name of the experiment to cancel.
Format: |
|
| parent | string | Project owning the experiment.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to compare two-or-more experiments.
| Field | Type | Label | Description |
| llm_evaluation_experiment_names | string | repeated | Resource names of the experiments to compare (two-or-more).
Format: |
| llm_evaluation_baseline_experiment_name | string | Optional. Resource name of the baseline experiment used for delta computation.
Format: |
|
| parent | string | Project owning the experiments.
Format: |
|
| language_code | string | BCP-47 language-code scope (required, all experiments must share the same). |
Request to create a new A/B experiment.
| Field | Type | Label | Description |
| llm_evaluation_ab_experiment | LlmEvaluationAbExperiment | A/B experiment payload (name / status / audit fields are server-populated). |
|
| parent | string | Project owning the experiment.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to create a new evaluation dataset.
| Field | Type | Label | Description |
| parent | string | Project owning the dataset.
Format: |
|
| 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. |
Request to convert a recorded session into evaluation examples ("golden transcripts").
| Field | Type | Label | Description |
| parent | string | Project owning the session and the dataset.
Format: |
|
| session_name | string | Resource name of the recorded session to convert.
Format: |
|
| llm_evaluation_dataset_name | string | Resource name of the dataset receiving the created examples.
Format: |
|
| session_step_names | string | repeated | Optional. Session steps to convert (resource names). Empty = all steps, in session order. |
| llm_evaluation_example_extraction_mode | LlmEvaluationExampleExtractionMode | How the selected steps are turned into examples. |
|
| display_name | string | Optional. Display-name prefix for the created example(s); the server appends a per-example suffix. |
|
| language_code | string | BCP-47 language-code scope (required, must match the dataset's). |
|
| include_tool_calls | bool | When true, tool calls recorded in the session's telemetry are captured as expected tool calls on the created examples. |
|
| include_retrieval_context | bool | When true, retrieved chunks recorded by retriever spans are captured as frozen retrieval context on the created examples. |
Response for CreateExamplesFromSession.
| Field | Type | Label | Description |
| llm_evaluation_examples | LlmEvaluationExample | repeated | Example records created. |
Request to create a new online-evaluation config.
| Field | Type | Label | Description |
| llm_evaluation_online_config | LlmEvaluationOnlineConfig | Config payload (name / audit / last-evaluated fields are server-populated). |
|
| parent | string | Project owning the config.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to create a new release gate.
| Field | Type | Label | Description |
| llm_evaluation_release_gate | LlmEvaluationReleaseGate | Release gate payload (name / revision / audit fields are server-populated). |
|
| parent | string | Project owning the gate.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to persist a generated report.
| Field | Type | Label | Description |
| llm_evaluation_report | LlmEvaluationReport | Report payload (name / audit fields are server-populated). |
|
| parent | string | Project owning the report.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to create a new schedule.
| Field | Type | Label | Description |
| llm_evaluation_schedule | LlmEvaluationSchedule | Schedule payload (name / audit / last-next-run fields are server-populated). |
|
| parent | string | Project owning the schedule.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to create a new scorecard.
| Field | Type | Label | Description |
| llm_evaluation_scorecard | LlmEvaluationScorecard | Scorecard payload (name / audit fields are server-populated). |
|
| parent | string | Project owning the scorecard.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to delete an A/B experiment and all owned sticky-assignment rows.
| Field | Type | Label | Description |
| name | string | Resource name of the experiment to delete.
Format: |
|
| parent | string | Project owning the experiment.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to delete a dataset and all owned examples.
| Field | Type | Label | Description |
| name | string | Resource name of the dataset to delete.
Format: |
|
| parent | string | Project owning the dataset.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to delete an example.
| Field | Type | Label | Description |
| name | string | Resource name of the example to delete.
Format: |
|
| parent | string | Project owning the example.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to delete an experiment.
| Field | Type | Label | Description |
| name | string | Resource name of the experiment to delete.
Format: |
|
| parent | string | Project owning the experiment.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to delete a single feedback record.
| Field | Type | Label | Description |
| name | string | Resource name of the feedback record to delete.
Format: |
|
| parent | string | Project owning the feedback.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to delete an online-evaluation config.
| Field | Type | Label | Description |
| name | string | Resource name of the config to delete.
Format: |
|
| parent | string | Project owning the config.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to delete a release gate and all owned gate runs.
| Field | Type | Label | Description |
| name | string | Resource name of the gate to delete.
Format: |
|
| parent | string | Project owning the gate.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to delete a report.
| Field | Type | Label | Description |
| name | string | Resource name of the report to delete.
Format: |
|
| parent | string | Project owning the report.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to delete a schedule.
| Field | Type | Label | Description |
| name | string | Resource name of the schedule to delete.
Format: |
|
| parent | string | Project owning the schedule.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to delete a scorecard.
| Field | Type | Label | Description |
| name | string | Resource name of the scorecard to delete.
Format: |
|
| parent | string | Project owning the scorecard.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to get a single A/B experiment.
| Field | Type | Label | Description |
| name | string | Resource name of the experiment to fetch.
Format: |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| parent | string | Project owning the experiment.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to compute per-variant telemetry rollups for an A/B experiment.
| Field | Type | Label | Description |
| name | string | Resource name of the experiment whose results to compute.
Format: |
|
| parent | string | Project owning the experiment.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Response for GetAbExperimentResults: one rollup per variant.
| Field | Type | Label | Description |
| llm_evaluation_ab_experiment_name | string | Resource name of the experiment these results belong to.
Format: |
|
| variant_results | LlmEvaluationAbVariantResult | repeated | Per-variant telemetry rollups (one entry per variant). |
Request to get a single A/B rollout decision (the applied audit record) for an
experiment.
| Field | Type | Label | Description |
| name | string | Resource name of the rollout decision to fetch.
Format: |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| parent | string | Project owning the decision.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to compute a rollout recommendation for an A/B experiment. Read-only /
stateless — computes the winner-vs-control statistics on demand under the
supplied guard-rails and returns a LlmEvaluationAbRolloutRecommendation
without mutating anything.
| Field | Type | Label | Description |
| name | string | Resource name of the experiment to evaluate.
Format: |
|
| optimize_metric | LlmEvaluationAbOptimizeMetric | Required. The metric to optimize when picking the winner. |
|
| confidence_level | double | Optional. Confidence level for the significance test in |
|
| min_sessions_per_variant | int32 | Optional. Minimum number of sessions required per variant before a winner
may be called; below it the recommendation reports
|
|
| min_effect_size | double | Optional. Minimum absolute effect size required to call a winner; guards against statistically-significant-but-trivial differences. Unset / 0 applies the server default. |
|
| parent | string | Project owning the experiment.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to get a single annotation-queue item.
| Field | Type | Label | Description |
| name | string | Resource name of the item to fetch.
Format: |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| parent | string | Project owning the item.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to get a single evaluation dataset.
| Field | Type | Label | Description |
| name | string | Resource name of the dataset to fetch.
Format: |
|
| 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: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to get a single example.
| Field | Type | Label | Description |
| name | string | Resource name of the example to fetch.
Format: |
|
| 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: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to fetch a previously-run experiment.
| Field | Type | Label | Description |
| name | string | Resource name of the experiment to fetch.
Format: |
|
| 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: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to get a single online-evaluation config.
| Field | Type | Label | Description |
| name | string | Resource name of the config to fetch.
Format: |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| parent | string | Project owning the config.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to get a single online-evaluation result.
| Field | Type | Label | Description |
| name | string | Resource name of the result to fetch.
Format: |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| parent | string | Project owning the result.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to get the evaluation settings singleton.
| Field | Type | Label | Description |
| parent | string | Project owning the settings.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
Request to get a single release gate.
| Field | Type | Label | Description |
| name | string | Resource name of the gate to fetch.
Format: |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| parent | string | Project owning the gate.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to get a single release gate run.
| Field | Type | Label | Description |
| name | string | Resource name of the gate run to fetch.
Format: |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| parent | string | Project owning the gate run.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to get a single report (incl. payload bytes).
| Field | Type | Label | Description |
| name | string | Resource name of the report to fetch.
Format: |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| parent | string | Project owning the report.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to get a single schedule.
| Field | Type | Label | Description |
| name | string | Resource name of the schedule to fetch.
Format: |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| parent | string | Project owning the schedule.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to get a single scorecard.
| Field | Type | Label | Description |
| name | string | Resource name of the scorecard to fetch.
Format: |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| parent | string | Project owning the scorecard.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to list A/B experiments within a project.
| Field | Type | Label | Description |
| parent | string | Project owning the experiments.
Format: |
|
| 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:
|
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| language_code | string | BCP-47 language-code scope (required). |
|
| llm_evaluation_ab_experiment_filter | LlmEvaluationAbExperimentFilter | Optional. Filter conditions to narrow the returned experiments. |
Response for ListAbExperiments.
| Field | Type | Label | Description |
| llm_evaluation_ab_experiments | LlmEvaluationAbExperiment | repeated | A/B experiments matching the request. |
| next_page_token | string | Pagination token for the next page (empty if this is the last page). |
Request to list A/B rollout decisions within a project, optionally narrowed by
filter (typically by experiment).
| Field | Type | Label | Description |
| parent | string | Project owning the decisions.
Format: |
|
| 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:
|
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| language_code | string | BCP-47 language-code scope (required). |
|
| llm_evaluation_ab_rollout_decision_filter | LlmEvaluationAbRolloutDecisionFilter | Optional. Filter conditions to narrow the returned decisions. |
Response for ListAbRolloutDecisions.
| Field | Type | Label | Description |
| llm_evaluation_ab_rollout_decisions | LlmEvaluationAbRolloutDecision | repeated | Rollout decisions matching the request. |
| next_page_token | string | Pagination token for the next page (empty if this is the last page). |
Request to list annotation-queue items within a project.
| Field | Type | Label | Description |
| parent | string | Project owning the items.
Format: |
|
| 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:
|
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| language_code | string | BCP-47 language-code scope (required). |
|
| llm_evaluation_annotation_queue_item_filter | LlmEvaluationAnnotationQueueItemFilter | Optional. Filter conditions to narrow the returned items. |
Response for ListAnnotationQueueItems.
| Field | Type | Label | Description |
| llm_evaluation_annotation_queue_items | LlmEvaluationAnnotationQueueItem | repeated | Items matching the request. |
| next_page_token | string | Pagination token for the next page (empty if this is the last page). |
Request to list evaluation datasets within a project.
| Field | Type | Label | Description |
| parent | string | Project owning the datasets.
Format: |
|
| 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:
|
|
| 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. |
Response for ListDatasets.
| Field | Type | Label | Description |
| 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). |
Request to list available evaluators.
| Field | Type | Label | Description |
| parent | string | Project scope (registry may be filtered by project capabilities).
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Response for ListEvaluators.
| Field | Type | Label | Description |
| llm_evaluation_evaluator_specs | LlmEvaluationEvaluatorSpec | repeated | Available evaluators with metadata. |
Request to list examples in a dataset.
| Field | Type | Label | Description |
| llm_evaluation_dataset_name | string | Resource name of the dataset to enumerate examples from.
Format: |
|
| 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:
|
|
| 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: |
|
| language_code | string | BCP-47 language-code scope (required). |
|
| llm_evaluation_example_filter | LlmEvaluationExampleFilter | Optional. Filter conditions to narrow the returned examples. |
Response for ListExamples.
| Field | Type | Label | Description |
| 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). |
Request to list experiments in a project, optionally narrowed by filter.
| Field | Type | Label | Description |
| parent | string | Project owning the experiments.
Format: |
|
| 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:
|
|
| 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. |
Response for ListExperiments.
| Field | Type | Label | Description |
| 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). |
Request to list feedback records, optionally narrowed by filter.
| Field | Type | Label | Description |
| 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:
|
|
| 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: |
|
| language_code | string | BCP-47 language-code scope (required). |
|
| llm_evaluation_feedback_filter | LlmEvaluationFeedbackFilter | Optional. Filter conditions to narrow the returned feedback records. |
Response for ListFeedback.
| Field | Type | Label | Description |
| 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). |
Request to list online-evaluation configs within a project.
| Field | Type | Label | Description |
| parent | string | Project owning the configs.
Format: |
|
| 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:
|
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| language_code | string | BCP-47 language-code scope (required). |
|
| llm_evaluation_online_config_filter | LlmEvaluationOnlineConfigFilter | Optional. Filter conditions to narrow the returned configs. |
Response for ListOnlineConfigs.
| Field | Type | Label | Description |
| llm_evaluation_online_configs | LlmEvaluationOnlineConfig | repeated | Configs matching the request. |
| next_page_token | string | Pagination token for the next page (empty if this is the last page). |
Request to list online-evaluation results within a project.
| Field | Type | Label | Description |
| parent | string | Project owning the results.
Format: |
|
| 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:
|
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| language_code | string | BCP-47 language-code scope (required). |
|
| llm_evaluation_online_result_filter | LlmEvaluationOnlineResultFilter | Optional. Filter conditions to narrow the returned results. |
Response for ListOnlineResults.
| Field | Type | Label | Description |
| llm_evaluation_online_results | LlmEvaluationOnlineResult | repeated | Results matching the request. |
| next_page_token | string | Pagination token for the next page (empty if this is the last page). |
Request to list release gate runs within a project.
| Field | Type | Label | Description |
| parent | string | Project owning the gate runs.
Format: |
|
| 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:
|
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| language_code | string | BCP-47 language-code scope (required). |
|
| llm_evaluation_release_gate_run_filter | LlmEvaluationReleaseGateRunFilter | Optional. Filter conditions to narrow the returned gate runs. |
Response for ListReleaseGateRuns.
| Field | Type | Label | Description |
| llm_evaluation_release_gate_runs | LlmEvaluationReleaseGateRun | repeated | Gate runs matching the request, newest first. |
| next_page_token | string | Pagination token for the next page (empty if this is the last page). |
Request to list release gates within a project.
| Field | Type | Label | Description |
| parent | string | Project owning the gates.
Format: |
|
| 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:
|
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| language_code | string | BCP-47 language-code scope (required). |
|
| llm_evaluation_release_gate_filter | LlmEvaluationReleaseGateFilter | Optional. Filter conditions to narrow the returned gates. |
Response for ListReleaseGates.
| Field | Type | Label | Description |
| llm_evaluation_release_gates | LlmEvaluationReleaseGate | repeated | Release gates matching the request. |
| next_page_token | string | Pagination token for the next page (empty if this is the last page). |
Request to list reports within a project.
| Field | Type | Label | Description |
| parent | string | Project owning the reports.
Format: |
|
| 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:
|
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data.
Payload bytes are omitted unless paths include
|
|
| language_code | string | BCP-47 language-code scope (required). |
|
| llm_evaluation_report_filter | LlmEvaluationReportFilter | Optional. Filter conditions to narrow the returned reports. |
Response for ListReports.
| Field | Type | Label | Description |
| llm_evaluation_reports | LlmEvaluationReport | repeated | Reports matching the request (payload omitted unless requested via field_mask). |
| next_page_token | string | Pagination token for the next page (empty if this is the last page). |
Request to list schedules within a project.
| Field | Type | Label | Description |
| parent | string | Project owning the schedules.
Format: |
|
| 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:
|
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| language_code | string | BCP-47 language-code scope (required). |
|
| llm_evaluation_schedule_filter | LlmEvaluationScheduleFilter | Optional. Filter conditions to narrow the returned schedules. |
Response for ListSchedules.
| Field | Type | Label | Description |
| llm_evaluation_schedules | LlmEvaluationSchedule | repeated | Schedules matching the request. |
| next_page_token | string | Pagination token for the next page (empty if this is the last page). |
Request to list scorecards within a project.
| Field | Type | Label | Description |
| parent | string | Project owning the scorecards.
Format: |
|
| 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:
|
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data. |
|
| language_code | string | BCP-47 language-code scope (required). |
|
| llm_evaluation_scorecard_filter | LlmEvaluationScorecardFilter | Optional. Filter conditions to narrow the returned scorecards. |
Response for ListScorecards.
| Field | Type | Label | Description |
| llm_evaluation_scorecards | LlmEvaluationScorecard | repeated | Scorecards matching the request. |
| next_page_token | string | Pagination token for the next page (empty if this is the last page). |
An A/B experiment: a set of routing variants split over live DetectIntent
traffic for a (project, language_code) scope.
| Field | Type | Label | Description |
| name | string | The unique resource name of the A/B experiment. Read-only; populated by the server.
Format: |
|
| display_name | string | Required. Human-readable display name (unique within the (project, language_code) tuple). |
|
| description | string | Free-form description. |
|
| status | LlmEvaluationAbExperimentStatus | Lifecycle status. Read-only; transitioned via Start / Stop RPCs. |
|
| variants | LlmEvaluationAbVariant | repeated | The routing variants of this experiment. |
| traffic_config | LlmEvaluationAbTrafficConfig | Traffic-splitting configuration (enrollment rate, assignment salt). |
|
| started_at | google.protobuf.Timestamp | Wall-clock time the experiment was started (set by Start). Read-only. |
|
| stopped_at | google.protobuf.Timestamp | Wall-clock time the experiment was stopped (set by Stop). Read-only. |
|
| created_at | google.protobuf.Timestamp | Creation date and time. Read-only field. |
|
| created_by | string | User id in form of a valid UUID. |
|
| 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 experiment.
Format: |
|
| language_code | string | BCP-47 language-code scope. |
|
| llm_evaluation_ab_rollout_decision_name | string | Optional. Resource name of the rollout decision that was applied to this
experiment (set once an operator explicitly applies a variant via
|
Filter conditions for ListAbExperiments. All fields are optional; multiple
fields set at the same time are combined via logical AND.
| Field | Type | Label | Description |
| display_name | string | Optional. Match only experiments whose display name contains this substring (case-insensitive). |
|
| status | LlmEvaluationAbExperimentStatus | Optional. Match only experiments with this status. |
The persisted audit record of an A/B rollout that an operator explicitly
applied: it captures which variant's config was promoted to the project's
classifier default, on which metric, and the statistics at the moment of
application. Written + returned by LlmEvaluationApplyAbRollout;
read back via LlmEvaluationGetAbRolloutDecision /
LlmEvaluationListAbRolloutDecisions. There is no auto-rollout —
every decision row corresponds to an explicit operator action.
| Field | Type | Label | Description |
| name | string | The unique resource name of the rollout decision. Read-only; populated by the server.
Format: |
|
| llm_evaluation_ab_experiment_name | string | Resource name of the A/B experiment this decision was applied to.
Format: |
|
| applied_variant_id | string | Variant slug whose config was promoted to the project classifier default. |
|
| optimize_metric | LlmEvaluationAbOptimizeMetric | The metric the rollout was decided on (recorded for the audit trail). |
|
| p_value | double | Two-sided p-value of the applied-variant-vs-control test at application time. |
|
| effect_size | double | Observed effect size (applied variant vs. control) at application time. |
|
| applied_at | google.protobuf.Timestamp | Wall-clock time the rollout was applied. Read-only. |
|
| applied_by | string | User id (in form of a valid UUID) of the operator who applied the rollout. |
|
| 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. |
|
| parent | string | Project owning the decision.
Format: |
|
| language_code | string | BCP-47 language-code scope. |
Filter conditions for ListAbRolloutDecisions. All fields are optional;
multiple fields set at the same time are combined via logical AND.
| Field | Type | Label | Description |
| llm_evaluation_ab_experiment_name | string | Optional. Match only decisions applied to this A/B experiment (resource name).
Format: |
|
| applied_by | string | Optional. Match only decisions applied by this user id (UUID). |
A computed, read-only rollout recommendation for an A/B experiment: which
variant currently wins against the control on the chosen optimize metric,
under the requested statistical guard-rails. Stateless — recomputed on demand
by LlmEvaluationGetAbRolloutRecommendation from the per-variant
results rollup; nothing is persisted and no traffic / config changes. The
operator decides whether to apply it via LlmEvaluationApplyAbRollout.
| Field | Type | Label | Description |
| optimize_metric | LlmEvaluationAbOptimizeMetric | The metric the recommendation was computed against (echoed from the request). |
|
| winner_variant_id | string | Variant slug that currently wins against the control on this metric, once
the guard-rails (significance, effect size, minimum sessions) are met.
Empty while |
|
| control_variant_id | string | Variant slug of the control (baseline) arm the winner was compared against. |
|
| p_value | double | Two-sided p-value of the winner-vs-control test on the optimize metric. |
|
| effect_size | double | Observed effect size between winner and control (absolute risk difference for rate metrics, standardized / raw mean difference for continuous metrics). |
|
| is_significant | bool | Whether the result is statistically significant at the requested confidence level AND clears the requested minimum effect size. |
|
| sessions_per_variant | LlmEvaluationAbRolloutRecommendation.SessionsPerVariantEntry | repeated | Number of sessions observed per variant in scope, keyed by variant slug. Used to surface the guard-rail check against the requested minimum. |
| needs_more_data | bool | True when at least one arm has not yet reached the requested minimum number of sessions, so no winner can be called yet (collect more traffic). |
|
| reason | string | Human-readable rationale for the recommendation (e.g. the winner and its margin, or "needs N more sessions on variant X", or "no variant beats control"). |
| Field | Type | Label | Description |
| key | string |
|
|
| value | int64 |
|
Traffic-splitting configuration for an A/B experiment.
| Field | Type | Label | Description |
| enrollment_rate | double | Fraction of eligible sessions (0.0-1.0) actually enrolled into the
experiment; the remainder use the project default path. |
|
| assignment_salt | string | Optional. Salt mixed into the deterministic session-bucketing hash so that re-running the same experiment id re-randomizes the assignment. |
One routing variant of an A/B experiment. The variant overrides the model used
for the sessions assigned to it. A variant is one of two shapes depending on
the project's classifier:
via ccai_service_names (+ optional model_name /
prompt_version).
IntentRagflowClassifier) — the variantoverrides the chat-assistant LLM CcaiService and retrieval parameters via
rag_variant_config.
The two override shapes are mutually exclusive per variant; the server applies
whichever matches the project's classifier type.
| Field | Type | Label | Description |
| variant_id | string | Required. Stable slug identifying the variant within its experiment (e.g. "control", "qwen3-fp8"). Lower-case, used as the assignment key. |
|
| display_name | string | Required. Human-readable display name. |
|
| ccai_service_names | string | repeated | CcaiService name(s) defining this variant's LLM connection (IntentAgent
projects). Mutually exclusive with |
| traffic_weight | double | Traffic weight for this variant. Expressed as a percentage in the
|
|
| is_control | bool | Whether this variant is the control (baseline) arm. |
|
| model_name | string | Optional. Concrete model identifier override (e.g. "Qwen/Qwen3-27b-fp8"). |
|
| prompt_version | string | Optional. Logical prompt version recorded for this variant. |
|
| config | google.protobuf.Struct | Optional. Free-form target descriptor (the serialized CcaiServiceList / routing override applied for sessions assigned to this variant). |
|
| rag_variant_config | RagVariantConfig | Optional. RAGFlow override for a RAG-classifier project: the chat-assistant
LLM CcaiService + retrieval parameters applied to sessions assigned to this
variant. Used instead of |
Per-variant rollup returned by GetAbExperimentResults. Stateless / computed.
| Field | Type | Label | Description |
| variant_id | string | Variant slug these results belong to. |
|
| session_count | int64 | Number of distinct sessions assigned to this variant in scope. |
|
| telemetry | google.protobuf.Struct | Aggregated LLM telemetry over this variant's sessions, as a JSON-encoded
|
|
| derived_metrics | google.protobuf.Struct | Optional. Derived comparison metrics (e.g. token / latency / error / cost deltas versus the control variant), keyed by metric name. |
A human-review annotation-queue item: one per failing session step enqueued by
the online-evaluation worker. The reviewer annotates (status / reason) and may
promote the offending session into a regression dataset.
| Field | Type | Label | Description |
| name | string | The unique resource name of the queue item. Read-only; populated by the server.
Format: |
|
| session_name | string | Resource name of the offending session.
Format: |
|
| session_step_name | string | Resource name of the offending session step.
Format: |
|
| llm_evaluation_online_result_name | string | Resource name of the online result that triggered the enqueue.
Format: |
|
| status | LlmEvaluationAnnotationStatus | Current lifecycle status. |
|
| assigned_to | string | Optional. User id (UUID) the item is assigned to for review. |
|
| reason | string | Human-readable reason / rationale (e.g. |
|
| llm_evaluation_dataset_name | string | Resource name of the dataset the item was promoted into. Set when the item
reaches PROMOTED status.
Format: |
|
| created_at | google.protobuf.Timestamp | Creation date and time. Read-only field. |
|
| created_by | string | User id in form of a valid UUID. |
|
| 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 item.
Format: |
|
| language_code | string | BCP-47 language-code scope. |
Filter conditions for ListAnnotationQueueItems. All fields are optional;
multiple fields set at the same time are combined via logical AND.
| Field | Type | Label | Description |
| status | LlmEvaluationAnnotationStatus | Optional. Match only items with this status. |
|
| assigned_to | string | Optional. Match only items assigned to this user id (UUID). |
Pairwise comparison report across multiple experiments.
| Field | Type | Label | Description |
| name | string | The unique resource name of the comparison. Read-only; populated by the server.
Format: |
|
| display_name | string | Human-readable display name. |
|
| llm_evaluation_experiment_names | string | repeated | Resource names of the experiments being compared (two-or-more).
Format: |
| llm_evaluation_baseline_experiment_name | string | Optional. Resource name of the baseline experiment used for delta computation.
Format: |
|
| 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. |
A dataset is a named collection of evaluation examples plus optional metadata.
| Field | Type | Label | Description |
| name | string | The unique resource name of the dataset. Read-only; populated by the server.
Format: |
|
| 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: |
|
| language_code | string | BCP-47 language code (e.g. |
|
| llm_evaluation_dataset_type | LlmEvaluationDatasetType | Kind of examples the dataset holds (single-turn, multi-turn conversation flow, RAG question-answering, adversarial red-team probes, simulated). |
Filter conditions for ListDatasets. All fields are optional; multiple fields
set at the same time are combined via logical AND.
| Field | Type | Label | Description |
| 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. |
| llm_evaluation_dataset_type | LlmEvaluationDatasetType | Optional. Match only datasets of this type. |
Specification of one configurable evaluator parameter.
| Field | Type | Label | Description |
| name | string | Parameter key (e.g. "criteria", "threshold", "expected_output_key"). |
|
| display_name | string | Human-readable display name. |
|
| description | string | Free-form description. |
|
| value_type | string | Value type: "string" | "double" | "bool" | "string_list" | "json". |
|
| default_value | string | JSON-encoded default value. |
|
| required | bool | Whether the parameter must be supplied. |
Result of running one evaluator against one example.
| Field | Type | Label | Description |
| name | string | The unique resource name of the evaluator run. Read-only; populated by the server.
Format: |
|
| display_name | string | Human-readable display name. |
|
| llm_evaluation_example_name | string | Resource name of the example the evaluator was run against.
Format: |
|
| 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: |
|
| 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. |
|
| llm_evaluation_turn_results | LlmEvaluationTurnResult | repeated | Per-turn results for multi-turn (conversation-flow) runs: one entry per executed conversation turn, carrying expected vs. actual outputs and the per-turn telemetry join key. Empty for single-turn runs. |
| repetition_index | int32 | Zero-based repetition index when the experiment ran with repetitions > 1. |
|
| actual_output | google.protobuf.Struct | Actual output produced by the target for this run (answer text, tool
calls, final state) — first-class so result views need not parse feedback
|
Server-side metadata describing one available evaluator.
| Field | Type | Label | Description |
| evaluator_name | string | Logical evaluator name used in RunExperiment requests (e.g. "faithfulness"). |
|
| display_name | string | Human-readable display name. |
|
| description | string | Free-form description of what the evaluator measures. |
|
| llm_evaluation_evaluator_type | LlmEvaluationEvaluatorType | Family of evaluator implementations. |
|
| llm_evaluation_evaluator_category | LlmEvaluationEvaluatorCategory | Category the evaluator belongs to. |
|
| required_example_fields | string | repeated | Dotted paths of example fields the evaluator requires (e.g. "inputs.question", "expected_outputs.answer", "inputs.turns"). |
| multi_turn | bool | True when the evaluator consumes multi-turn conversations. |
|
| default_threshold | double | Default pass threshold (0.0-1.0). |
|
| requires_judge | bool | True when the evaluator requires a judge LLM. |
|
| llm_evaluation_evaluator_parameter_specs | LlmEvaluationEvaluatorParameterSpec | repeated | Configurable parameters accepted via evaluator_configs / evaluator_overrides. |
A single example in an evaluation dataset.
| Field | Type | Label | Description |
| name | string | The unique resource name of the example. Read-only; populated by the server.
Format: |
|
| 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: |
|
| 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: |
|
| 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. |
Filter conditions for ListExamples. All fields are optional; multiple fields
set at the same time are combined via logical AND.
| Field | Type | Label | Description |
| display_name | string | Optional. Match only examples whose display name contains this substring (case-insensitive). |
A single experiment run over a dataset.
| Field | Type | Label | Description |
| name | string | The unique resource name of the experiment. Read-only; populated by the server.
Format: |
|
| llm_evaluation_dataset_name | string | Resource name of the source dataset.
Format: |
|
| 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: |
|
| parent | string | Project owning the experiment.
Format: |
|
| 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. |
|
| repetitions | int32 | Number of repetitions each (example, evaluator) pair was executed with (echoed from RunLlmEvaluationExperimentRequest; 0 is treated as 1). |
|
| llm_evaluation_schedule_name | string | Optional. Resource name of the schedule that created this experiment
(empty for manually-triggered experiments).
Format: |
|
| llm_evaluation_experiment_kind | LlmEvaluationExperimentKind | Kind of experiment (standard single-turn, multi-turn flow, red-team, gate candidate, gate safety, scheduled). |
|
| llm_evaluation_release_gate_run_name | string | Optional. Resource name of the release gate run this experiment belongs to
(set for gate-candidate and gate-safety experiments).
Format: |
Filter conditions for ListExperiments. All fields are optional; multiple
fields set at the same time are combined via logical AND.
| Field | Type | Label | Description |
| 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: |
|
| model_name | string | Optional. Match only experiments exercising this concrete model identifier. |
|
| llm_evaluation_schedule_name | string | Optional. Match only experiments created by this schedule (resource name).
Format: |
|
| llm_evaluation_experiment_kind | LlmEvaluationExperimentKind | Optional. Match only experiments of this kind. |
A single feedback record (score + optional categorical + comment + raw payload).
| Field | Type | Label | Description |
| name | string | The unique resource name of the feedback record. Read-only; populated by the server.
Format: |
|
| 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: |
|
| llm_evaluation_experiment_name | string | Resource name of the owning experiment.
Format: |
|
| llm_evaluation_example_name | string | Resource name of the example the feedback targets.
Format: |
|
| 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. |
Filter conditions for ListFeedback. All fields are optional; multiple fields
set at the same time are combined via logical AND.
| Field | Type | Label | Description |
| llm_evaluation_experiment_name | string | Optional. Match only feedback attached to this experiment (resource name).
Format: |
|
| llm_evaluation_example_name | string | Optional. Match only feedback targeting this example (resource name).
Format: |
|
| llm_evaluation_evaluator_run_name | string | Optional. Match only feedback produced by this evaluator run (resource name).
Format: |
|
| 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). |
Judge-LLM configuration used by LLM-as-judge evaluators.
| Field | Type | Label | Description |
| ccai_service_name | string | Resource name of the CcaiService whose LLM connection details (host / port / model / auth) the judge uses. Preferred over free-form model_name. |
|
| model_name | string | Free-form judge model label (fallback / display). |
|
| temperature | double | Sampling temperature for the judge model. |
|
| verbose_reasoning | bool | When true, the judge's full reasoning is kept in feedback
|
|
| evaluator_overrides | google.protobuf.Struct | Per-evaluator overrides keyed by evaluator name. Values are objects
matching the evaluator's parameter specs from LlmEvaluationListEvaluators
(e.g. |
An online-evaluation config: a per-(project, language_code) definition that a
swarm-safe background worker uses to sample already-persisted live session
steps, score the recorded answer with a reference-free evaluator set, and
enqueue failing steps into the annotation queue. Mirrors the LlmEvaluationSchedule
scoping / audit / enabled-flag shape.
| Field | Type | Label | Description |
| name | string | The unique resource name of the online config. Read-only; populated by the server.
Format: |
|
| display_name | string | Required. Human-readable display name (unique within the (project, language_code) tuple). |
|
| description | string | Free-form description. |
|
| evaluator_names | string | repeated | Reference-free evaluator names the worker runs on each sampled step (e.g.
|
| sample_rate | double | Fraction of candidate steps to score, in the range 0.0-1.0. Applied deterministically per step. |
|
| enabled | bool | Whether the worker samples for this config. Disabled configs keep their configuration. |
|
| target_dataset_name | string | Optional. Default promotion target dataset for steps enqueued by this config.
Format: |
|
| fail_threshold | double | Score cutoff (0.0-1.0). Scored steps whose aggregate score is below this threshold are enqueued into the annotation queue. Defaults to 0.5. |
|
| settle_seconds | int32 | Settle window in seconds: the worker only considers steps older than this, so per-step telemetry has landed before scoring. Defaults to 30. |
|
| require_telemetry | bool | When true, only steps with recorded LLM telemetry are sampled (shorthand for the session-filter flag of the same name). |
|
| llm_evaluation_online_session_filter | LlmEvaluationOnlineSessionFilter | Optional. Filter narrowing which session steps are sampled. |
|
| last_evaluated_at | google.protobuf.Timestamp | Wall-clock time of the worker's most recent evaluation pass for this config. Read-only; set by the worker. |
|
| n_sessions_evaluated | int64 | Running count of session steps this config has scored. Read-only; set by the worker. |
|
| created_at | google.protobuf.Timestamp | Creation date and time. Read-only field. |
|
| created_by | string | User id in form of a valid UUID. |
|
| 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 config.
Format: |
|
| language_code | string | BCP-47 language-code scope. |
Filter conditions for ListOnlineConfigs. All fields are optional; multiple
fields set at the same time are combined via logical AND.
| Field | Type | Label | Description |
| display_name | string | Optional. Match only configs whose display name contains this substring (case-insensitive). |
|
| enabled_only | bool | Optional. When true, match only enabled configs. |
A self-contained online-evaluation result: one row per scored session step.
Per-criterion feedbacks are stored as an embedded repeated LlmEvaluationFeedback
list (exactly like LlmEvaluationTurnResult.feedbacks — NOT persisted into the
experiment-scoped llm_feedback table). Produced by the online-evaluation worker;
read-only over the API.
| Field | Type | Label | Description |
| name | string | The unique resource name of the result. Read-only; populated by the server.
Format: |
|
| llm_evaluation_online_config_name | string | Resource name of the online config that produced this result.
Format: |
|
| session_name | string | Resource name of the scored session.
Format: |
|
| session_step_name | string | Resource name of the scored session step.
Format: |
|
| llm_evaluation_feedbacks | LlmEvaluationFeedback | repeated | Per-criterion feedback records, one per configured evaluator (embedded list; the same LlmEvaluationFeedback message reused as the per-criterion result element). |
| passed | bool | Whether the step passed every criterion (aggregate_score >= the config's fail_threshold and no criterion failed). |
|
| aggregate_score | double | Aggregate roll-up score across the criteria (0.0-1.0). |
|
| evaluated_at | google.protobuf.Timestamp | Wall-clock time the worker scored this step. Read-only. |
|
| created_at | google.protobuf.Timestamp | Creation date and time. Read-only field. |
|
| created_by | string | User id in form of a valid UUID (the worker / system identity). |
|
| parent | string | Project owning the result.
Format: |
|
| language_code | string | BCP-47 language-code scope. |
Filter conditions for ListOnlineResults. All fields are optional; multiple
fields set at the same time are combined via logical AND.
| Field | Type | Label | Description |
| llm_evaluation_online_config_name | string | Optional. Match only results produced by this online config.
Format: |
|
| passed | bool | Optional. Match only results with this pass-state. |
|
| filter_by_passed | bool | Optional. When true, the |
Optional filter narrowing which already-persisted live session steps an
online-evaluation config samples. All fields are optional; multiple fields set
at the same time are combined via logical AND.
| Field | Type | Label | Description |
| labels | string | repeated | Optional. Match only session steps whose session carries every one of these
labels (e.g. |
| language_codes | string | repeated | Optional. Restrict sampling to these BCP-47 language codes. Empty = the owning config's language_code only. |
| platforms | string | repeated | Optional. Restrict sampling to these integration platforms. |
| require_telemetry | bool | Optional. When true, only sample steps that have recorded LLM telemetry
(a |
Per-example pairwise comparison entry.
| Field | Type | Label | Description |
| llm_evaluation_example_name | string | Resource name of the example being compared.
Format: |
|
| llm_evaluation_winner_experiment_name | string | Resource name of the winning experiment.
Format: |
|
| score_delta | double | Score delta against the baseline (positive means winner improved). |
|
| reason | string | Free-form reason / rationale. |
Per-(project, language_code) evaluation settings singleton.
| Field | Type | Label | Description |
| name | string | The unique resource name of the settings singleton. Read-only.
Format: |
|
| llm_evaluation_judge_config | LlmEvaluationJudgeConfig | Judge-LLM configuration for LLM-as-judge evaluators. |
|
| default_weights | google.protobuf.Struct | Default per-criterion weights (criterion name -> numeric weight) applied by comparison / scorecard views when no explicit weights are configured. |
|
| default_pass_cutoff_score | double | Default score cutoff (0.0-1.0) above which an evaluator run counts as passed. |
|
| default_scorecard_name | string | Optional. Resource name of the default scorecard.
Format: |
|
| created_at | google.protobuf.Timestamp | Creation date and time. Read-only field. |
|
| created_by | string | User id in form of a valid UUID. |
|
| 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 settings.
Format: |
|
| language_code | string | BCP-47 language-code scope. |
A release gate: a named set of thresholds over evaluator scores, regression
deltas and telemetry that decides whether a candidate configuration ships.
| Field | Type | Label | Description |
| name | string | The unique resource name of the release gate. Read-only; populated by the server.
Format: |
|
| display_name | string | Required. Human-readable display name (unique within the (project, language_code) tuple). |
|
| description | string | Free-form description. |
|
| revision | int32 | Server-managed revision counter, incremented on semantic updates (suite, baseline, evaluators, thresholds, weights, safety). Read-only. |
|
| llm_evaluation_dataset_name | string | Resource name of the benchmark suite (dataset) the gate runs.
Format: |
|
| llm_evaluation_baseline_experiment_name | string | Optional. Resource name of the baseline experiment for regression checks.
Format: |
|
| llm_evaluation_evaluator_names | string | repeated | Logical names of the evaluators the gate runs against the suite. |
| thresholds | LlmEvaluationReleaseGateThresholds | Threshold set evaluated against the candidate experiment. |
|
| safety | LlmEvaluationReleaseGateSafetyConfig | Optional safety section (separate adversarial experiment). |
|
| weights | google.protobuf.Struct | Per-criterion weights used for the weighted composite score (criterion name -> numeric weight; normalized server-side). |
|
| pass_cutoff_score | double | Score cutoff (0.0-1.0) above which an evaluator run counts as passed. |
|
| staleness_window_days | int32 | Number of days after which a gate verdict is considered stale. |
|
| ccai_service_names | string | repeated | Default CcaiService name(s) defining the candidate target's LLM connection (can be overridden per run). |
| created_at | google.protobuf.Timestamp | Creation date and time. Read-only field. |
|
| created_by | string | User id in form of a valid UUID. |
|
| 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 release gate.
Format: |
|
| language_code | string | BCP-47 language-code scope. |
One evaluated check inside a release gate run verdict.
| Field | Type | Label | Description |
| id | string | Stable check identifier, e.g. "pass_rate", "criterion.<name>", "regression.<name>", "latency_p95_seconds", "safety.<name>", "acceptance_must_pass". |
|
| threshold | double | Threshold the check compared against. |
|
| actual | double | Actual value observed. |
|
| actual_available | bool | False when the input needed for the check was unavailable (e.g. telemetry
not recorded); |
|
| passed | bool | Whether the check passed. |
|
| partial | bool | True when the actual value was only window-attributed (partial telemetry). |
|
| provenance | string | Where the actual value came from: "LIVE" | "DERIVED" | "TELEMETRY". |
Filter conditions for ListReleaseGates. All fields are optional; multiple
fields set at the same time are combined via logical AND.
| Field | Type | Label | Description |
| display_name | string | Optional. Match only gates whose display name contains this substring (case-insensitive). |
|
| llm_evaluation_dataset_name | string | Optional. Match only gates running this suite (dataset resource name).
Format: |
One persisted execution of a release gate: experiments + computed verdict.
| Field | Type | Label | Description |
| name | string | The unique resource name of the gate run. Read-only; populated by the server.
Format: |
|
| llm_evaluation_release_gate_name | string | Resource name of the gate this run belongs to.
Format: |
|
| gate_revision | int32 | Gate revision at run time. |
|
| gate_snapshot | google.protobuf.Struct | Full gate document snapshot taken at run time, so the verdict stays interpretable after later gate edits. |
|
| llm_evaluation_experiment_name | string | Resource name of the candidate experiment.
Format: |
|
| llm_evaluation_safety_experiment_name | string | Optional. Resource name of the safety (adversarial) experiment.
Format: |
|
| llm_evaluation_baseline_experiment_name | string | Optional. Resource name of the baseline experiment used for regression checks.
Format: |
|
| llm_evaluation_release_gate_verdict | LlmEvaluationReleaseGateVerdict | Computed verdict. Read-only; persisted server-side. |
|
| checks | LlmEvaluationReleaseGateCheck | repeated | Individual checks the verdict was derived from. Read-only. |
| started_at | google.protobuf.Timestamp | Wall-clock start of the gate run. |
|
| finished_at | google.protobuf.Timestamp | Wall-clock end of the gate run (verdict computation finished). |
|
| created_at | google.protobuf.Timestamp | Creation date and time. Read-only field. |
|
| created_by | string | User id in form of a valid UUID. |
|
| 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 gate run.
Format: |
|
| language_code | string | BCP-47 language-code scope. |
Filter conditions for ListReleaseGateRuns. All fields are optional; multiple
fields set at the same time are combined via logical AND.
| Field | Type | Label | Description |
| llm_evaluation_release_gate_name | string | Optional. Match only runs of this gate (resource name).
Format: |
|
| llm_evaluation_release_gate_verdict | LlmEvaluationReleaseGateVerdict | Optional. Match only runs with this verdict. |
Safety section of a release gate: a separate adversarial experiment scored
with safety evaluators.
| Field | Type | Label | Description |
| enabled | bool | Whether the safety section is evaluated as part of gate runs. |
|
| adversarial_dataset_name | string | Resource name of the adversarial (red-team) dataset to run.
Format: |
|
| evaluator_names | string | repeated | Logical names of safety evaluators to run (e.g. "toxicity", "bias", "pii_leakage"). |
| max_toxicity | double | Maximum tolerated mean toxicity score (0.0-1.0). |
|
| max_bias | double | Maximum tolerated mean bias score (0.0-1.0). |
Threshold set evaluated by a release gate. Nested in a dedicated message so
presence can be detected at the message level (proto3 scalars carry no presence).
| Field | Type | Label | Description |
| min_pass_rate | double | Minimum pass rate (0.0-1.0) the candidate experiment must reach. |
|
| max_regression_per_criterion | double | Maximum tolerated per-criterion mean-score regression (0.0-1.0) versus the baseline experiment. |
|
| max_p95_latency_seconds | double | Maximum tolerated p95 latency in seconds (requires telemetry join). |
|
| acceptance_must_pass | bool | If true, every example tagged "acceptance" must pass for the gate to pass. |
An immutable persisted report artifact (release summaries, gate sign-offs,
exported evaluation snapshots).
| Field | Type | Label | Description |
| name | string | The unique resource name of the report. Read-only; populated by the server.
Format: |
|
| display_name | string | Required. Human-readable display name. |
|
| description | string | Free-form description. |
|
| report_type | string | Logical report type identifier (e.g. |
|
| mime_type | string | MIME type of the payload
(e.g. |
|
| payload | bytes | Report payload. Omitted from List responses unless explicitly requested via field_mask. |
|
| metadata | google.protobuf.Struct | Source references (gate runs, experiments, filters) captured at creation time. |
|
| created_at | google.protobuf.Timestamp | Creation date and time. Read-only field. |
|
| created_by | string | User id in form of a valid UUID. |
|
| 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 report.
Format: |
|
| language_code | string | BCP-47 language-code scope. |
Filter conditions for ListReports. All fields are optional; multiple fields
set at the same time are combined via logical AND.
| Field | Type | Label | Description |
| display_name | string | Optional. Match only reports whose display name contains this substring (case-insensitive). |
|
| report_type | string | Optional. Match only reports of this logical type. |
A schedule for recurring experiment / release gate runs.
| Field | Type | Label | Description |
| name | string | The unique resource name of the schedule. Read-only; populated by the server.
Format: |
|
| display_name | string | Required. Human-readable display name (unique within the (project, language_code) tuple). |
|
| description | string | Free-form description. |
|
| cron_expression | string | 5-field cron expression in UTC (e.g. |
|
| interval_seconds | int32 | Fixed interval between runs in seconds. Exactly one of
|
|
| enabled | bool | Whether the schedule fires. Disabled schedules keep their configuration. |
|
| llm_evaluation_schedule_action | LlmEvaluationScheduleAction | What the schedule executes when it fires. |
|
| run_llm_evaluation_experiment_request | RunLlmEvaluationExperimentRequest | RUN_EXPERIMENT only. Template request dispatched on every firing (display_name is suffixed with the firing timestamp). |
|
| llm_evaluation_release_gate_name | string | RUN_RELEASE_GATE only. Resource name of the gate to run.
Format: |
|
| last_run_at | google.protobuf.Timestamp | Wall-clock time of the most recent firing. Read-only. |
|
| next_run_at | google.protobuf.Timestamp | Wall-clock time of the next planned firing. Read-only. |
|
| last_run_resource_name | string | Resource name created by the most recent firing (experiment or gate run). Read-only. |
|
| last_run_status | LlmEvaluationExperimentStatus | Status of the experiment created by the most recent firing. Read-only. |
|
| created_at | google.protobuf.Timestamp | Creation date and time. Read-only field. |
|
| created_by | string | User id in form of a valid UUID. |
|
| 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 schedule.
Format: |
|
| language_code | string | BCP-47 language-code scope. |
Filter conditions for ListSchedules. All fields are optional; multiple fields
set at the same time are combined via logical AND.
| Field | Type | Label | Description |
| display_name | string | Optional. Match only schedules whose display name contains this substring (case-insensitive). |
|
| enabled_only | bool | Optional. When true, match only enabled schedules. |
|
| llm_evaluation_schedule_action | LlmEvaluationScheduleAction | Optional. Match only schedules with this action. |
A scorecard: a named weighted multi-criteria roll-up definition applied to
experiments for release reporting.
| Field | Type | Label | Description |
| name | string | The unique resource name of the scorecard. Read-only; populated by the server.
Format: |
|
| display_name | string | Required. Human-readable display name (unique within the (project, language_code) tuple). |
|
| description | string | Free-form description. |
|
| llm_evaluation_scorecard_components | LlmEvaluationScorecardComponent | repeated | Weighted criterion components. |
| created_at | google.protobuf.Timestamp | Creation date and time. Read-only field. |
|
| created_by | string | User id in form of a valid UUID. |
|
| 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 scorecard.
Format: |
|
| language_code | string | BCP-47 language-code scope. |
One weighted criterion row of a scorecard.
| Field | Type | Label | Description |
| criterion | string | Criterion label the component aggregates (e.g. "faithfulness"). |
|
| weight | double | Relative weight of the component (normalized server-side). |
|
| target_score | double | Target score (0.0-1.0) the criterion should reach. |
|
| evaluator_name | string | Optional. Logical evaluator name backing the criterion. |
Filter conditions for ListScorecards. All fields are optional; multiple
fields set at the same time are combined via logical AND.
| Field | Type | Label | Description |
| display_name | string | Optional. Match only scorecards whose display name contains this substring (case-insensitive). |
One simulated user persona.
| Field | Type | Label | Description |
| persona | string | Short persona label (e.g. "impatient customer"). |
|
| scenario | string | Scenario the simulated user pursues (e.g. "wants a refund for a double charge"). |
|
| expected_outcome | string | Expected outcome of a successful conversation (used as expected output on generated examples). |
|
| user_description | string | Free-form additional description of the simulated user's behavior. |
Result of executing one conversation turn of a multi-turn (flow) example.
| Field | Type | Label | Description |
| turn_index | int32 | Zero-based index of the turn within the example's scripted conversation. |
|
| user_input | google.protobuf.Struct | The user input that was sent for this turn (text, contexts, parameters). |
|
| expected_output | google.protobuf.Struct | Expected output for this turn as authored in the example (expected tool calls, final state, answer). |
|
| actual_output | google.protobuf.Struct | Actual output produced by the target for this turn (answer text, tool calls, final state). |
|
| llm_telemetry_run_id | string | Ties this turn back to the LlmTelemetry produced when running the target for this turn (per-turn telemetry join key). |
|
| session_step_name | string | Optional. Resource name of the session step created by executing this turn against the live target (deep link into trace views). |
|
| llm_evaluation_feedbacks | LlmEvaluationFeedback | repeated | Per-turn feedback records produced by turn-aware evaluators. |
| duration_in_s | double | Wall-clock duration of this turn in seconds. |
Request to promote an annotation-queue item into a regression dataset. Thin
server-side composition over LlmEvaluationCreateExamplesFromSession; the item
status is flipped to PROMOTED and the dataset name stamped on success.
| Field | Type | Label | Description |
| name | string | Resource name of the item to promote.
Format: |
|
| target_dataset_name | string | Resource name of the dataset receiving the created example(s).
Format: |
|
| llm_evaluation_example_extraction_mode | LlmEvaluationExampleExtractionMode | How the item's session steps are turned into examples (reused mode enum). |
|
| include_tool_calls | bool | When true, tool calls recorded in the session's telemetry are captured as expected tool calls on the created examples. |
|
| include_retrieval_context | bool | When true, retrieved chunks recorded by retriever spans are captured as frozen retrieval context on the created examples. |
|
| parent | string | Project owning the item and the dataset.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Response for PromoteAnnotationQueueItem.
| Field | Type | Label | Description |
| llm_evaluation_examples | LlmEvaluationExample | repeated | Example record(s) created in the target dataset. |
| llm_evaluation_annotation_queue_item | LlmEvaluationAnnotationQueueItem | The promoted queue item (status flipped to PROMOTED, dataset name stamped). |
RAGFlow variant override for an A/B experiment running on a RAG-classifier
project (IntentRagflowClassifier). Where an IntentAgent variant
overrides the LLM via ccai_service_names, a RAG variant overrides
the project's chat-assistant LLM CcaiService and the retrieval parameters used
when answering the assigned sessions. Override-or-inherit semantics apply per
field: an empty / zero value means "inherit the project's base
IntentRagflowClassifier config for this field".
| Field | Type | Label | Description |
| chat_assistant_llm_ccai_service_name | string | CcaiService name whose LLM connection details back the chat-assistant LLM
for sessions assigned to this variant (overrides the project's
|
|
| top_k | int32 | Retrieval top_k: the maximum number of chunks retrieved per turn (overrides
the project's |
|
| similarity_threshold | double | Retrieval similarity threshold in |
|
| vector_similarity_weight | double | Vector-vs-keyword similarity weight in |
|
| rerank_model_ccai_service_name | string | Optional. CcaiService name backing the rerank model for sessions assigned to
this variant (overrides the project's
|
Request to run a fresh experiment.
| Field | Type | Label | Description |
| parent | string | Project owning the experiment.
Format: |
|
| llm_evaluation_dataset_name | string | Resource name of the dataset to evaluate against.
Format: |
|
| 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: |
|
| 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 |
| repetitions | int32 | Optional. Number of repetitions per (example, evaluator) pair for consistency / dispersion analysis. 0 is treated as 1. |
|
| llm_evaluation_experiment_kind | LlmEvaluationExperimentKind | Optional. Kind of experiment to run. Unspecified defaults to STANDARD (or FLOW when the dataset type is FLOW). |
|
| evaluator_configs | google.protobuf.Struct | Optional. Per-evaluator parameter overrides for this run, keyed by
evaluator name. Values are objects matching the evaluator's parameter
specs from LlmEvaluationListEvaluators
(e.g. |
Request to run a release gate against a candidate target.
| Field | Type | Label | Description |
| name | string | Resource name of the gate to run.
Format: |
|
| parent | string | Project owning the gate.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
|
| ccai_service_names | string | repeated | Optional. CcaiService name(s) defining the candidate target's LLM
connection; overrides the gate's default |
| git_sha | string | Optional. Source-tree revision pin recorded on the candidate experiment. |
|
| prompt_version | string | Optional. Logical prompt version recorded on the candidate experiment. |
Request to generate synthetic multi-turn evaluation conversations.
| Field | Type | Label | Description |
| parent | string | Project owning the dataset.
Format: |
|
| llm_evaluation_dataset_name | string | Resource name of the dataset receiving the generated examples.
Format: |
|
| llm_evaluation_simulation_personas | LlmEvaluationSimulationPersona | repeated | Personas to simulate. At least one is required for STANDARD simulations. |
| num_conversations | int32 | Number of conversations to generate (across all personas). |
|
| max_turns | int32 | Maximum number of user turns per generated conversation. |
|
| ccai_service_names | string | repeated | CcaiService name(s) defining the LLM connection used to simulate the user side of the conversations. |
| language_code | string | BCP-47 language-code scope (required, must match the dataset's). |
|
| config | google.protobuf.Struct | Arbitrary simulator configuration captured for reproducibility. |
|
| llm_evaluation_simulation_kind | LlmEvaluationSimulationKind | Kind of simulation (standard persona-driven vs adversarial red-teaming). |
|
| attack_types | string | repeated | ADVERSARIAL only. Attack types to probe (e.g. "prompt_injection", "pii_extraction", "jailbreak", "off_topic_drift"). Empty = all built-in types. |
Request to start an A/B experiment (validates weights, sets RUNNING).
| Field | Type | Label | Description |
| name | string | Resource name of the experiment to start.
Format: |
|
| parent | string | Project owning the experiment.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to stop a running A/B experiment (sets STOPPED).
| Field | Type | Label | Description |
| name | string | Resource name of the experiment to stop.
Format: |
|
| parent | string | Project owning the experiment.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to submit a single feedback record.
| Field | Type | Label | Description |
| llm_evaluation_experiment_name | string | Resource name of the experiment the feedback applies to.
Format: |
|
| 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: |
|
| llm_evaluation_feedback | LlmEvaluationFeedback | Feedback payload. |
|
| parent | string | Project owning the experiment.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to update an existing A/B experiment.
| Field | Type | Label | Description |
| llm_evaluation_ab_experiment | LlmEvaluationAbExperiment | Experiment payload (only fields covered by |
|
| update_mask | google.protobuf.FieldMask | Mask of fields to update on the experiment record. |
|
| 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: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to update an annotation-queue item (status / assignee / reason transitions).
| Field | Type | Label | Description |
| llm_evaluation_annotation_queue_item | LlmEvaluationAnnotationQueueItem | Item payload (only fields covered by |
|
| update_mask | google.protobuf.FieldMask | Mask of fields to update on the item record. |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data on the returned item. |
|
| parent | string | Project owning the item.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to update an existing dataset.
| Field | Type | Label | Description |
| llm_evaluation_dataset | LlmEvaluationDataset | Dataset payload (only fields covered by |
|
| 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: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to update an existing example.
| Field | Type | Label | Description |
| llm_evaluation_example | LlmEvaluationExample | Example payload (only fields covered by |
|
| 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: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to update an experiment's metadata.
| Field | Type | Label | Description |
| llm_evaluation_experiment | LlmEvaluationExperiment | Experiment payload (only fields covered by |
|
| 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: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to update an existing feedback record.
| Field | Type | Label | Description |
| llm_evaluation_feedback | LlmEvaluationFeedback | Feedback payload (only fields covered by |
|
| update_mask | google.protobuf.FieldMask | Mask of fields to update on the feedback record. |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data on the returned feedback record. |
|
| parent | string | Project owning the feedback.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to update an existing online-evaluation config.
| Field | Type | Label | Description |
| llm_evaluation_online_config | LlmEvaluationOnlineConfig | Config payload (only fields covered by |
|
| update_mask | google.protobuf.FieldMask | Mask of fields to update on the config record. |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data on the returned config. |
|
| parent | string | Project owning the config.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to update the evaluation settings singleton.
| Field | Type | Label | Description |
| llm_evaluation_project_settings | LlmEvaluationProjectSettings | Settings payload (only fields covered by |
|
| update_mask | google.protobuf.FieldMask | Mask of fields to update on the settings record. |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data on the returned settings. |
|
| parent | string | Project owning the settings.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to update an existing release gate.
| Field | Type | Label | Description |
| llm_evaluation_release_gate | LlmEvaluationReleaseGate | Gate payload (only fields covered by |
|
| update_mask | google.protobuf.FieldMask | Mask of fields to update on the gate record. |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data on the returned gate. |
|
| parent | string | Project owning the gate.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to update an existing schedule.
| Field | Type | Label | Description |
| llm_evaluation_schedule | LlmEvaluationSchedule | Schedule payload (only fields covered by |
|
| update_mask | google.protobuf.FieldMask | Mask of fields to update on the schedule record. |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data on the returned schedule. |
|
| parent | string | Project owning the schedule.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Request to update an existing scorecard.
| Field | Type | Label | Description |
| llm_evaluation_scorecard | LlmEvaluationScorecard | Scorecard payload (only fields covered by |
|
| update_mask | google.protobuf.FieldMask | Mask of fields to update on the scorecard record. |
|
| field_mask | google.protobuf.FieldMask | Optional. The mask to control which fields will be filled with data on the returned scorecard. |
|
| parent | string | Project owning the scorecard.
Format: |
|
| language_code | string | BCP-47 language-code scope (required). |
Lifecycle status of an A/B experiment.
| Name | Number | Description |
| LLM_EVALUATION_AB_EXPERIMENT_STATUS_UNSPECIFIED | 0 | Default / unset. |
| LLM_EVALUATION_AB_EXPERIMENT_STATUS_DRAFT | 1 | Defined but not yet started; no traffic is split. |
| LLM_EVALUATION_AB_EXPERIMENT_STATUS_RUNNING | 2 | Started; live DetectIntent traffic is being split across the variants. |
| LLM_EVALUATION_AB_EXPERIMENT_STATUS_STOPPED | 3 | Stopped; traffic split has ended. Sticky assignments and results are retained. |
| LLM_EVALUATION_AB_EXPERIMENT_STATUS_ARCHIVED | 4 | Archived; read-only, hidden from the default list. |
The metric an A/B rollout optimizes when comparing each variant against the
control. Each value maps to a quantity already produced by the per-variant
results rollup (see GetAbExperimentResults). Higher-is-better vs.
lower-is-better is implied by the metric (e.g. PASS_RATE / CRITERION_SCORE /
SAFETY_SCORE are higher-is-better; ERROR_RATE / MEAN_LATENCY are
lower-is-better) and applied server-side when picking the winner.
| Name | Number | Description |
| LLM_EVALUATION_AB_OPTIMIZE_METRIC_UNSPECIFIED | 0 | Default / unset. |
| LLM_EVALUATION_AB_OPTIMIZE_METRIC_PASS_RATE | 1 | Fraction of sessions that passed (1 - error_rate). Higher is better. |
| LLM_EVALUATION_AB_OPTIMIZE_METRIC_ERROR_RATE | 2 | Fraction of sessions that errored. Lower is better. |
| LLM_EVALUATION_AB_OPTIMIZE_METRIC_MEAN_LATENCY | 3 | Mean first-token / response latency in seconds. Lower is better. |
| LLM_EVALUATION_AB_OPTIMIZE_METRIC_CRITERION_SCORE | 4 | Mean offline-criterion score in |
| LLM_EVALUATION_AB_OPTIMIZE_METRIC_SAFETY_SCORE | 5 | Mean native-safety score in |
Lifecycle status of an annotation-queue item.
| Name | Number | Description |
| LLM_EVALUATION_ANNOTATION_STATUS_UNSPECIFIED | 0 | Default / unset. |
| LLM_EVALUATION_ANNOTATION_STATUS_PENDING | 1 | Enqueued, awaiting human review. |
| LLM_EVALUATION_ANNOTATION_STATUS_REVIEWED | 2 | Reviewed by a human (verdict / reason recorded), not yet promoted or dismissed. |
| LLM_EVALUATION_ANNOTATION_STATUS_PROMOTED | 3 | Promoted into a regression dataset (promoted_dataset_name stamped). |
| LLM_EVALUATION_ANNOTATION_STATUS_DISMISSED | 4 | Dismissed (not a genuine failure; will not be promoted). |
Kind of examples an evaluation dataset holds.
| Name | Number | Description |
| LLM_EVALUATION_DATASET_TYPE_UNSPECIFIED | 0 | Default / unset (treated as SINGLE_TURN). |
| LLM_EVALUATION_DATASET_TYPE_SINGLE_TURN | 1 | Single-turn examples (one input, one expected output). |
| LLM_EVALUATION_DATASET_TYPE_FLOW | 2 | Multi-turn conversation-flow examples (scripted user turns with expected tool calls / final state / answers per turn). |
| LLM_EVALUATION_DATASET_TYPE_RAG | 3 | RAG question-answering examples (question, gold answer, expected sources). |
| LLM_EVALUATION_DATASET_TYPE_RED_TEAM | 4 | Adversarial red-team probes (prompt injection, PII extraction, jailbreaks, ...). |
| LLM_EVALUATION_DATASET_TYPE_SIMULATED | 5 | Synthetically generated examples (conversation simulator output). |
Category an evaluator belongs to.
| Name | Number | Description |
| LLM_EVALUATION_EVALUATOR_CATEGORY_UNSPECIFIED | 0 | Default / unset. |
| LLM_EVALUATION_EVALUATOR_CATEGORY_RAG | 1 | Retrieval-augmented-generation quality (faithfulness, contextual precision, ...). |
| LLM_EVALUATION_EVALUATOR_CATEGORY_AGENTIC | 2 | Agentic behavior (tool correctness, task completion, MCP usage, ...). |
| LLM_EVALUATION_EVALUATOR_CATEGORY_CONVERSATIONAL | 3 | Multi-turn conversational quality (knowledge retention, role adherence, ...). |
| LLM_EVALUATION_EVALUATOR_CATEGORY_SAFETY | 4 | Safety (toxicity, bias, PII leakage, hallucination, ...). |
| LLM_EVALUATION_EVALUATOR_CATEGORY_HEURISTIC | 5 | Deterministic heuristics (exact match, embedding distance, JSON validity, ...). |
| LLM_EVALUATION_EVALUATOR_CATEGORY_CUSTOM | 6 | User-configurable custom metrics (G-Eval rubrics, DAG metrics, ...). |
Family of evaluator implementations.
| Name | Number | Description |
| 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. |
How session steps are converted into evaluation examples.
| Name | Number | Description |
| LLM_EVALUATION_EXAMPLE_EXTRACTION_MODE_UNSPECIFIED | 0 | Default / unset (treated as SINGLE_TURN). |
| LLM_EVALUATION_EXAMPLE_EXTRACTION_MODE_SINGLE_TURN | 1 | One single-turn example per selected session step. |
| LLM_EVALUATION_EXAMPLE_EXTRACTION_MODE_MULTI_TURN_FLOW | 2 | One multi-turn (conversation-flow) example with one turn per selected session step, in session order. |
Kind of an experiment run.
| Name | Number | Description |
| LLM_EVALUATION_EXPERIMENT_KIND_UNSPECIFIED | 0 | Default / unset (treated as STANDARD). |
| LLM_EVALUATION_EXPERIMENT_KIND_STANDARD | 1 | Standard single-turn evaluation run. |
| LLM_EVALUATION_EXPERIMENT_KIND_FLOW | 2 | Multi-turn conversation-flow run (per-turn results populated). |
| LLM_EVALUATION_EXPERIMENT_KIND_RED_TEAM | 3 | Red-team / adversarial safety run. |
| LLM_EVALUATION_EXPERIMENT_KIND_GATE_CANDIDATE | 4 | Candidate experiment dispatched by a release gate run. |
| LLM_EVALUATION_EXPERIMENT_KIND_GATE_SAFETY | 5 | Safety experiment dispatched by a release gate run. |
| LLM_EVALUATION_EXPERIMENT_KIND_SCHEDULED | 6 | Experiment dispatched by a recurring schedule. |
Lifecycle status of an experiment.
| Name | Number | Description |
| 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. |
Verdict of a release gate run.
| Name | Number | Description |
| LLM_EVALUATION_RELEASE_GATE_VERDICT_UNSPECIFIED | 0 | Default / unset. |
| LLM_EVALUATION_RELEASE_GATE_VERDICT_PENDING | 1 | Experiments still running; verdict not yet computed. |
| LLM_EVALUATION_RELEASE_GATE_VERDICT_PASS | 2 | All checks passed. |
| LLM_EVALUATION_RELEASE_GATE_VERDICT_FAIL | 3 | At least one check failed. |
| LLM_EVALUATION_RELEASE_GATE_VERDICT_STALE | 4 | Verdict is older than the gate's staleness window. |
What a schedule executes when it fires.
| Name | Number | Description |
| LLM_EVALUATION_SCHEDULE_ACTION_UNSPECIFIED | 0 | Default / unset. |
| LLM_EVALUATION_SCHEDULE_ACTION_RUN_EXPERIMENT | 1 | Run the experiment template (recurring regression run). |
| LLM_EVALUATION_SCHEDULE_ACTION_RUN_RELEASE_GATE | 2 | Run the referenced release gate. |
Kind of conversation simulation.
| Name | Number | Description |
| LLM_EVALUATION_SIMULATION_KIND_UNSPECIFIED | 0 | Default / unset (treated as STANDARD). |
| LLM_EVALUATION_SIMULATION_KIND_STANDARD | 1 | Persona-driven user simulation for coverage / stress testing. |
| LLM_EVALUATION_SIMULATION_KIND_ADVERSARIAL | 2 | Adversarial (red-team) simulation probing safety weaknesses. |
Represents the metadata of the long-running operation that can be a parent operation for sub-operations or
can be a sub-operation itself
| Field | Type | Label | Description |
| 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. |
Type of operation.
It can be creating, importing, exporting, deleting, restoring, building cache, training or exporting benchmark an agent
| Name | Number | Description |
| 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 |
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.
| Name | Number | Description |
| 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 |
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.
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.
name binding below allows API services to override the binding
to use different resource name schemes, such as users/*/operations.
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.
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
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.
| 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 | * |
The request message for Operations.CancelOperation.
| Field | Type | Label | Description |
| name | string | The name of the operation resource to be cancelled. |
The request message for Operations.DeleteOperation.
| Field | Type | Label | Description |
| name | string | The name of the operation resource to be deleted. |
The request message for Operations.GetOperation.
| Field | Type | Label | Description |
| name | string | The name of the operation resource. |
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
The request message for Operations.ListOperations.
| Field | Type | Label | Description |
| 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:
|
|
| 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. |
The response message for Operations.ListOperations.
| Field | Type | Label | Description |
| 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 |
This resource represents a long-running operation that is the result of a network API call.
| Field | Type | Label | Description |
| 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
|
|
| 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 |
|
| 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 |
This message contains an operation filter
| Field | Type | Label | Description |
| 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. |
Project roles
rpc CreateProjectRole (CreateProjectRoleRequest) returns (ProjectRole)Creates a project role by creating the knowledge base master
rpc GetProjectRole (GetProjectRoleRequest) returns (ProjectRole)Creates a project role by getting the knowledge base master
rpc DeleteProjectRole (DeleteProjectRoleRequest) returns (.google.protobuf.Empty)Deletes project role
rpc UpdateProjectRole (UpdateProjectRoleRequest) returns (ProjectRole)Updates project role
rpc ListProjectRoles (ListProjectRolesRequest) returns (ListProjectRolesResponse)List project roles
| 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 |
This message is a request to create project role
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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 |
This message is a request to delete project role
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| role_id | uint32 | role is identified by role id, if empty will throw an error in the backend |
This message is a request to get project role
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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. |
This message is a request to list project role
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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:
|
|
| 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. |
This message is a response of listing project role
| Field | Type | Label | Description |
| 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 |
Project Role messages
| Field | Type | Label | Description |
| 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. |
This message is a request to update project role
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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 |
Structure of project role
| Name | Number | Description |
| 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 |
Structure of project role view
| Name | Number | Description |
| PROJECT_ROLE_VIEW_UNSPECIFIED | 0 | The view depends on the endpoint:
|
| PROJECT_ROLE_VIEW_SHALLOW | 1 | only role ID and name fields are populated |
| PROJECT_ROLE_VIEW_FULL | 2 | all fields including permissions are populated |
Project Root Statistics
rpc GetIntentCount (GetIntentCountRequest) returns (StatResponse)Returns the intent count within a project
rpc GetEntityTypeCount (GetEntityTypeCountRequest) returns (StatResponse)Returns the entity types count within a project
rpc GetUserCount (GetProjectStatRequest) returns (StatResponse)Returns the users count within a project
rpc GetSessionCount (GetProjectStatRequest) returns (StatResponse)Returns the sessions count within a project
rpc GetTrainingPhraseCount (GetProjectElementStatRequest) returns (StatResponse)Returns the training phrases count within a project
rpc GetResponseCount (GetProjectElementStatRequest) returns (StatResponse)Returns the responses count within a project
rpc GetEntityValueCount (GetProjectElementStatRequest) returns (StatResponse)Returns the entity value count within a project
rpc GetEntitySynonymCount (GetProjectElementStatRequest) returns (StatResponse)Returns the entity synonyms count within a project
| 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 |
Request to get entity type count
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| filter_by_category | EntityTypeCategory | Optional. Applies a filter to the list to be counted. Default, no filter. |
Request to get the intent count
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| filter_by_category | IntentCategory | Optional. Applies a filter to the list to be counted. Default, no filter. |
Request to get project element statistics
| Field | Type | Label | Description |
| name | string | Required. The name/path of the concept to get the statistic from. Example:
|
|
| language_code | string | Language code |
Request to get project statistics
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
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.
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
rpc RagCreateDataset (RagCreateDatasetRequest) returns (RagDataset)Create a new dataset (knowledge base).
rpc RagUpdateDataset (RagUpdateDatasetRequest) returns (RagDataset)Update an existing dataset's configuration.
rpc RagDeleteDatasets (RagDeleteRequest) returns (RagPartialSuccess)Delete one or more datasets (batch operation).
rpc RagListDatasets (RagListDatasetsRequest) returns (RagDatasetList)List datasets with pagination and filtering.
rpc RagUploadDocument (stream RagUploadDocumentRequest) returns (RagDocument)Uploads a document to a dataset and starts parsing it.
run field of the returned document is not RAG_DOCUMENT_STATUS_RUNNING this indicates a failure to start parsing the document.
rpc RagUpdateDocument (RagUpdateDocumentRequest) returns (RagDocument)Update document metadata and configuration.
run field of the returned document is not RAG_DOCUMENT_STATUS_RUNNING this indicates a failure to start parsing the document.
rpc RagDownloadDocument (RagDownloadDocumentRequest) returns (stream RagFileChunk)Download the original document file.
rpc RagListDocuments (RagListDocumentsRequest) returns (RagDocumentList)List documents in a dataset with pagination and filtering.
rpc RagDeleteDocuments (RagDeleteDocumentsRequest) returns (RagPartialSuccess)Delete one or more documents from a dataset (batch operation).
rpc RagRetrieval (RagRetrievalRequest) returns (RagRetrievalResponse)Retrieve chunks using vector similarity search.
rpc RagParseDocuments (RagDocumentIdsRequest) returns (RagPartialSuccess)Start parsing documents into chunks.
rpc RagStopParsing (RagDocumentIdsRequest) returns (RagPartialSuccess)Stop parsing documents.
rpc RagCreateCrawler (RagCreateCrawlerRequest) returns (RagCrawler)Create a rag crawler for a dataset of an agent.
rpc RagGetCrawler (RagGetCrawlerRequest) returns (RagCrawler)Get a rag crawler by resource name.
rpc RagListCrawlers (RagListCrawlersRequest) returns (RagListCrawlersResponse)List rag crawlers of a dataset for the specified agent.
rpc RagUpdateCrawler (RagUpdateCrawlerRequest) returns (RagCrawler)Update a rag crawler (partial update of configuration fields).
rpc RagDeleteCrawler (RagDeleteCrawlerRequest) returns (RagDeleteCrawlerResponse)Delete a rag crawler of a dataset for the specified agent.
rpc RagStartCrawler (RagStartCrawlerRequest) returns (Operation)Run a crawler.
rpc RagStopCrawler (RagStopCrawlerRequest) returns (RagStopCrawlerResponse)Stop a pending or running crawler run.
rpc RagGetCrawlerRun (RagGetCrawlerRunRequest) returns (Operation)Get a crawler run by resource name.
rpc RagListCrawlerRuns (RagListCrawlerRunsRequest) returns (RagListCrawlerRunsResponse)List crawler runs for a crawler.
rpc RagDeleteCrawlerRuns (RagDeleteCrawlerRunsRequest) returns (RagDeleteCrawlerRunsResponse)Delete crawler runs by explicit run names and/or crawler names.
rpc RagGetCrawlerResult (RagGetCrawlerResultRequest) returns (RagCrawlerResult)Get a single crawler result by crawler run resource name and URL.
rpc RagGetCrawlerResults (RagGetCrawlerResultsRequest) returns (RagGetCrawlerResultsResponse)Get crawler results by crawler run resource name.
rpc RagAddCrawlerResultsToDatasets (RagAddCrawlerResultsToDatasetsRequest) returns (Operation)Add rag crawler output to one or more datasets.
rpc RagRemoveCrawlerResultsFromDatasets (RagRemoveCrawlerResultsFromDatasetsRequest) returns (Operation)Remove previously imported crawler output from one or more datasets.
rpc RagGetCrawlerAttachedDatasets (RagGetCrawlerAttachedDatasetsRequest) returns (RagGetCrawlerAttachedDatasetsResponse)Get datasets currently attached to a crawler.
rpc RagDeleteCrawlers (RagDeleteCrawlersRequest) returns (RagDeleteCrawlersResponse)Delete multiple crawlers.
rpc RagGetCrawlerRunLogs (RagGetCrawlerRunLogsRequest) returns (RagGetCrawlerRunLogsResponse)Get crawler run logs.
Request message for adding crawler output to one or more datasets.
Either crawler_names or crawler_result_names (or both) must be provided.
| Field | Type | Label | Description |
| parent | string | Required. The agent that owns the crawler. Format: |
|
| 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. |
| crawler_result_names | string | repeated | Optional. Resource names of crawler results to upload in addition to the results of the crawlers specified in |
| dataset_ids | string | repeated | Required. IDs of the datasets to add the crawl results to. |
Chunk of text extracted from a document.
Chunks are the basic retrieval units used for vector similarity search in RAG.
| Field | Type | Label | Description |
| 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 |
| image_id | string | Associated image ID if this chunk references an image. |
|
| positions | google.protobuf.ListValue | repeated | Position information in the original document. |
| 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 |
RagCrawler definition.
This object represents a reusable crawler profile that can be run multiple times.
It is modeled after Crawl4AI concepts:
RagCrawlerSources)RagCrawlerFilters)RagCrawlerAuth, RagCrawlerBrowserConfig)RagCrawlerConfig)The same crawler can be executed multiple times; each execution creates
a separate crawler run and result set.
| Field | Type | Label | Description |
| name | string | Resource name of the RagCrawler Format:
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 |
| crawler_config | RagCrawlerConfig | optional | Optional. Crawl execution behavior and extraction settings.
Roughly corresponds to Crawl4AI |
| retry_config | RagCrawlerRetryConfig | optional | Optional. Retry configuration for crawler runs. |
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.
| Field | Type | Label | Description |
| http_auth | RagCrawlerHttpAuth | optional | Optional. HTTP Basic auth settings. |
| html_auth | RagCrawlerHtmlAuth | optional | Optional. Form/HTML login selector and credential settings. |
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).
| Field | Type | Label | Description |
| 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. |
Concurrency and pacing controls for crawler runs.
| Field | Type | Label | Description |
| 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. |
Crawl run behavior.
This block controls scheduling, traversal, extraction outputs, retries,
diagnostics capture, and deep crawling options for each crawler run.
| Field | Type | Label | Description |
| 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). |
| Field | Type | Label | Description |
| metadata | google.protobuf.Struct | optional | Optional. Extracted page metadata.
Includes only fields configured in |
| markdown | string | optional | Optional. Extracted markdown output. |
Cookie representation for initial browser session state.
| Field | Type | Label | Description |
| cookie_name | string | Required. Cookie name. |
|
| cookie_value | string | Required. Cookie value. |
|
| cookie_domain | string | optional | Optional. Cookie domain. |
Deep crawler options grouped under one config node.
| Field | Type | Label | Description |
| is_active | bool | optional | Optional. Enable deep crawler behavior (link following beyond seeds).
Default |
| crawl_strategy | RagCrawlerCrawlStrategy | optional | Optional. Crawl traversal strategy.
BFS is often best for broad site coverage; DFS for deep section traversal.
Default |
| max_depth | int32 | optional | Optional. Maximum link depth from seed URLs.
|
| max_pages | int32 | optional | Optional. Hard cap on total processed pages for this run. |
| deep_crawler_filters | RagCrawlerFilters | optional | Optional. URL and domain restrictions. |
Consolidated diagnostics and HTTP execution metadata for a crawl result.
| Field | Type | Label | Description |
| 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. |
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.
| Field | Type | Label | Description |
| 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 |
|
Form/HTML login configuration.
Selector types and selector strings identify login form fields in the page
DOM. Credentials are then filled before form submission.
| Field | Type | Label | Description |
| 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 |
HTTP Basic authentication settings.
| Field | Type | Label | Description |
| http_auth_username | string | HTTP Basic Authentication username. |
|
| http_auth_password | string | HTTP Basic Authentication password. |
Metadata extractor configuration.
| Field | Type | Label | Description |
| 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). |
Crawler result entity.
Each result corresponds to one crawled URL in a crawler run and includes
extracted content, metadata, diagnostics, and optional binary artifacts.
| Field | Type | Label | Description |
| name | string | Resource name of the crawler result. Format: |
|
| 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 |
Structured output configuration.
Use this block to define result payload shape and metadata behavior,
similar to Crawl4AI markdown/output-generation toggles.
| Field | Type | Label | Description |
| 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 |
| meta_data_extractors | RagCrawlerMetaDataExtractor | repeated | Optional. Metadata extractors. |
Timeout settings for crawler operations.
| Field | Type | Label | Description |
| 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. |
| Field | Type | Label | Description |
| 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. |
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)
| Field | Type | Label | Description |
| urls | string | repeated | Direct seed URLs to enqueue as starting points. |
| sitemaps | string | repeated | Sitemap URLs used for URL discovery.
Typical values are |
Request message for creating a crawler for a dataset of an agent.
| Field | Type | Label | Description |
| parent | string | Required. The agent to create crawlers for. Format: |
|
| language_code | string | Required. The language of the project to use. |
|
| crawler | RagCrawler | Required. Crawler definition to create.
If |
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which RagCrawler fields get returned. |
Request message for creating a new dataset.
| Field | Type | Label | Description |
| parent | string | Required. The agent to create the dataset for. Format: |
|
| 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:
|
|
| description | string | Optional. Dataset description. Maximum 65,535 characters. |
|
| avatar | string | Optional. Base64-encoded avatar image in the format |
|
| 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 |
|
| embedding_model_ccai_service_name | string | Optional if |
Dataset containing documents for RAG.
| Field | Type | Label | Description |
| 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. |
Response message for listing datasets.
| Field | Type | Label | Description |
| 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 |
Parsing status statistics of all documents in a dataset
| Field | Type | Label | Description |
| 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. |
Request message for deleting a crawler of a dataset for the specified agent.
| Field | Type | Label | Description |
| name | string | Resource name of the RagCrawler Format: |
|
| parent | string | Required. The agent owning the crawler. Format: |
|
| language_code | string | Required. The language of the project to use. |
Response message for deleting a crawler of a dataset for the specified agent.
| Field | Type | Label | Description |
| name | string | Resource name of the RagCrawler Format: |
|
| error_message | string | Error message if there are any. |
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.
| Field | Type | Label | Description |
| parent | string | Required. The agent that owns the crawler runs. Format: |
|
| language_code | string | Required. The language of the project to use. |
|
| crawler_run_names | string | repeated | Optional. Explicit crawler run names to delete. Format: |
| crawler_names | string | repeated | Optional. Crawler names whose runs should be deleted. Format: |
Response message for deleting crawler runs.
| Field | Type | Label | Description |
| deleted_count | int32 | Number of deleted crawler runs. |
|
| deleted_run_names | string | repeated | Resource names of deleted crawler runs. |
Request message for deleting multiple crawlers of a dataset for the specified agent.
| Field | Type | Label | Description |
| parent | string | Required. The agent owning the crawlers. Format: |
|
| language_code | string | Required. The language of the project to use. |
|
| names | string | repeated | Optional. Crawler resource names to delete. Format: |
Response message for deleting multiple crawlers of a dataset for the specified agent.
| Field | Type | Label | Description |
| delete_crawler_responses | RagDeleteCrawlerResponse | repeated | responses to delete crawlers |
| error_message | string | error message if there are any |
Request message for deleting one or more documents of a single dataset.
| Field | Type | Label | Description |
| parent | string | Required. The agent to delete datasets from. Format: |
|
| 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 |
Request message for deleting one or more of a RAGFlow resource.
| Field | Type | Label | Description |
| parent | string | Required. The agent to delete datasets from. Format: |
|
| 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 |
Aggregated document retrieval results containing how many chunks of the given document where retrieved
| Field | Type | Label | Description |
| doc_name | string | Document name |
|
| doc_id | string | Document ID |
|
| count | int32 | Number of retrieved chunks |
Document uploaded to a dataset.
| Field | Type | Label | Description |
| id | string | Document UUID. |
|
| thumbnail | string | Base64-encoded thumbnail image in the format |
|
| 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 |
| token_count | int32 | optional | Number of tokens across all chunks in this document. |
| progress | float | optional | Processing progress as a decimal value between |
| 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 ( |
|
| create_time | google.protobuf.Timestamp | Creation date and time. |
|
| update_time | google.protobuf.Timestamp | Last update date and time. |
Request message for any endpoints that need a list of document IDs as input, e.g. delete documents, parse documents, stop parsing documents.
| Field | Type | Label | Description |
| parent | string | Required. The agent to delete documents from. Format: |
|
| 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 | string | repeated | Optional. Document IDs for the request. |
Response message for listing documents.
| Field | Type | Label | Description |
| 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 |
Request message for downloading the document file.
| Field | Type | Label | Description |
| parent | string | Required. The agent to download the document from. Format: |
|
| 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. |
File chunk for streaming downloads.
First chunk contains metadata, subsequent chunks only contain data.
| Field | Type | Label | Description |
| metadata | RagFileMetadata | Required in first chunk, ignored in later chunks. File metadata. |
|
| data | bytes | Optional. Chunk of file content. |
File metadata for streaming uploads/downloads.
| Field | Type | Label | Description |
| file_name | string | Required. Filename. Maximum length 255. |
|
| content_type | string | Optional. MIME type (e.g., |
|
| size | int64 | Optional. Minimum 0. File size in bytes (if known, 0 if unknown). |
Request message for getting datasets attached to a crawler.
| Field | Type | Label | Description |
| parent | string | Required. The agent owning the crawler. Format: |
|
| language_code | string | Required. The language of the project to use. |
|
| crawler_name | string | Required. Resource name of the crawler. Format: |
|
| 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
<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
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which |
| orderby | string | optional | Optional. Sort field (default: |
| sorting_mode | SortingMode | optional | Optional. Sort descending (default: |
Response message for getting datasets attached to a crawler.
| Field | Type | Label | Description |
| datasets | RagDataset | repeated | Datasets attached to the crawler. |
| next_page_token | string | Page token string (following the format described in |
Request message for getting a crawler.
| Field | Type | Label | Description |
| name | string | Required. Resource name of the RagCrawler. Format: |
|
| parent | string | Required. The agent owning the crawler. Format: |
|
| 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. |
Request message for getting a single crawler result from a crawler run.
| Field | Type | Label | Description |
| parent | string | Required. The agent that owns the crawler run. Format: |
|
| language_code | string | Required. The language of the project to use. |
|
| operation_name | string | Required. Resource name of the crawler run. Format: |
|
| 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. |
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="...")
| Field | Type | Label | Description |
| parent | string | Required. The agent that owns the crawler run. Format: |
|
| language_code | string | Required. The language of the project to use. |
|
| operation_name | string | Required. Resource name of the crawler run. Format: |
|
| page_token | string | optional | Optional. Specifies which page to return. The page token is a string of the format
<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
|
| url_query | string | optional | Optional. Filter by URL substring. |
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which |
| orderby | string | optional | Optional. Sort field (default: |
| sorting_mode | SortingMode | optional | Optional. Sort descending. |
Response message for getting crawler results.
| Field | Type | Label | Description |
| crawler_results | RagCrawlerResult | repeated | List of crawler results for the crawler run. |
| next_page_token | string | Page token string (following the format described in |
|
| total_size | int32 | Total number of crawler results available after applying request filters
(for example |
Request message for getting crawler run logs.
| Field | Type | Label | Description |
| parent | string | Required. The agent that owns the crawler run. Format: |
|
| language_code | string | Required. The language of the project to use. |
|
| operation_name | string | Required. Resource name of the crawler run. Format: |
|
| 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 |
| sorting_mode | SortingMode | optional | Optional. Sort descending. |
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which |
Response message for getting crawler run logs.
| Field | Type | Label | Description |
| 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. |
Request message for getting a crawler run.
| Field | Type | Label | Description |
| parent | string | Required. The agent that owns the crawler run. Format: |
|
| language_code | string | Required. The language of the project to use. |
|
| crawler_run_name | string | Required. Resource name of the crawler run. Format: |
GraphRAG configuration.
| Field | Type | Label | Description |
| use_graphrag | bool | optional | Optional. Default |
| entity_types | string | repeated | Optional. Default |
| method | RagGraphRagMethod | optional | Optional. Default |
| community | bool | optional | Optional. Default |
| resolution | bool | optional | Optional. Default |
Request message for listing crawler runs.
| Field | Type | Label | Description |
| parent | string | Required. The agent that owns the crawler runs. Format: |
|
| language_code | string | Required. The language of the project to use. |
|
| crawler_name | string | optional | Optional. Restrict to one crawler. Format: |
| page_token | string | optional | Optional. Specifies which page to return. The page token is a string of the format
<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
|
| status | OperationMetadata.Status | optional | Optional. Filter by operation status. |
| orderby | string | optional | Optional. Sort field (default: |
| sorting_mode | SortingMode | optional | Optional. Sort descending. |
Response message for listing crawler runs.
| Field | Type | Label | Description |
| crawler_runs | Operation | repeated | List of crawler run operations. |
| next_page_token | string | Page token string (following the format described in |
Request message for listing crawlers of a dataset for the specified agent.
| Field | Type | Label | Description |
| parent | string | Required. The agent to list crawlers for. Format: |
|
| 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
<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
|
| 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: |
| 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. |
Response message for listing crawlers.
| Field | Type | Label | Description |
| crawlers | RagCrawler | repeated | List of crawlers. |
| next_page_token | string | Page token string (following the format described in |
Request message for listing datasets with pagination and filtering.
| Field | Type | Label | Description |
| parent | string | Required. The agent to list all datasets from. Format: |
|
| 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
<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
|
|
| id | string | Optional. Filter by dataset ID. |
|
| name | string | Optional. Filter by dataset name. |
|
| orderby | string | Optional. Sort field. Can be one of
create_time). |
|
| desc | bool | optional | Deprecated. Optional. Sort descending (default: |
| 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 |
| Name | Option |
| desc | true |
Request message for listing documents in a dataset with pagination and filtering.
| Field | Type | Label | Description |
| parent | string | Required. The agent to list documents from. Format: |
|
| 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
<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
|
|
| orderby | string | Optional. Sort field (default: |
|
| desc | bool | optional | Deprecated. Optional. Sort in descending order (default: |
| keywords | string | Optional. Filter by document names containing |
|
| suffix | string | repeated | Optional. Suffixes to filter by (e.g. |
| 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 |
| Name | Option |
| desc | true |
Condition to filter document metadata on.
String comparison is always case-insensitive.
| Field | Type | Label | Description |
| name | string | Required. Metadata field name. |
|
| comparison_operator | RagComparisonOperator | Required. Comparison operator. |
|
| value | string | Required. Value to compare to. |
List of document metadata conditions.
| Field | Type | Label | Description |
| logic | RagLogic | Optional. Whether to apply the conditions with a logical and or logical or. |
|
| conditions | RagMetadataCondition | repeated | Optional. List of conditions. |
Document parser configuration.
Used fields depend on the chunking method of the document.
naive: uses the following fields (all optional)auto_keywordsauto_questionschunk_token_numdelimiterhtml4excellayout_recognizetag_kb_idstask_page_sizeraptorgraphragqa, manual, paper, book, laws, presentation: uses only the raptor fieldtable, picture, one, email: does not use any field (expects empty message)| Field | Type | Label | Description |
| 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 |
|
| html4excel | bool | optional | Optional. Convert Excel documents to HTML. Default |
| layout_recognize | string | Optional. Default |
|
| 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 |
|
| graphrag | RagGraphRagConfig | Optional. GRAPHRAG-specific settings. Default |
On complete success: no fields set (empty message).
On partial success/failure: both fields set.
| Field | Type | Label | Description |
| success_count | int32 | Number of successful operations. |
|
| errors | string | repeated | Error messages for failed operations. |
RAPTOR configuration. Refer to RAPTOR paper for more information about RAPTOR.
| Field | Type | Label | Description |
| use_raptor | bool | optional | Optional. Default |
| prompt | string | Optional. Prompt to use for RAPTOR. Default: |
|
| 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. |
Request message for removing previously imported crawler output from one or more datasets.
| Field | Type | Label | Description |
| parent | string | Required. The agent that owns the crawler. Format: |
|
| 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: |
|
| crawler_result_names | string | repeated | Required. Resource names of crawler results to remove. Format: |
| dataset_ids | string | repeated | Required. Dataset IDs from which the crawler outputs should be removed. Example: |
Request message for retrieving chunks using vector similarity search.
Supports hybrid search combining vector similarity with keyword matching.
| Field | Type | Label | Description |
| parent | string | Required. The agent to retrieve chunks for. Format: |
|
| 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
<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
|
|
| 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. |
| metadata_condition | RagMetadataConditions | Optional. Metadata filter condition to restrict results based on document metadata. |
|
| similarity_threshold | float | optional | Optional. Minimum similarity score threshold between |
| vector_similarity_weight | float | optional | Optional. Weight for vector similarity versus keyword matching between |
| top_k | int32 | Optional. Minimum 1. Maximum number of chunks to retrieve before reranking (default: |
|
| 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 |
| 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. |
Response message for chunk retrieval.
| Field | Type | Label | Description |
| 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 |
Request message for running a crawler.
This starts a long-running operation and returns immediately.
Clients should poll operation status via RagGetCrawlerRun.
| Field | Type | Label | Description |
| parent | string | Required. The agent that owns the crawler. Format: |
|
| language_code | string | Required. The language of the project to use. |
|
| crawler_name | string | Required. Resource name of the crawler to run. Format: |
Request message for stopping a crawler run.
| Field | Type | Label | Description |
| parent | string | Required. The agent that owns the crawler run. Format: |
|
| language_code | string | Required. The language of the project to use. |
|
| name | string | Required. Resource name of the crawler run. Format: |
Result of stopping a crawler run
| Field | Type | Label | Description |
| name | string | Resource name of the crawler run that was stopped. Format: |
|
| error_message | string | Error message if there are any; empty when the stop request was accepted successfully. |
Request message for updating a crawler (partial update).
| Field | Type | Label | Description |
| 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: |
|
| 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. |
Request message for updating an existing dataset.
The same field constraints as for RagCreateDatasetRequest apply here.
| Field | Type | Label | Description |
| parent | string | Required. The agent to update the dataset for. Format: |
|
| 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 |
| embedding_model_ccai_service_name | string | Optional. CCAI service to use for embedding the documents in the dataset. |
Request message for updating an existing document's metadata and configuration.
| Field | Type | Label | Description |
| parent | string | Required. The agent to update the document for. Format: |
|
| 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 |
|
| 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 |
Request message for uploading a document to a dataset.
| Field | Type | Label | Description |
| parent | string | Required in first chunk, ignored in later chunks. The agent to upload documents for. Format: |
|
| 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. |
Chunking method for documents. See https://ragflow.io/docs/dev/configure_knowledge_base#select-chunking-method for details.
| Name | Number | Description |
| RAG_CHUNK_METHOD_UNSPECIFIED | 0 | Unspecified. Defaults to |
| 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. |
Valid metadata condition comparison operators
| Name | Number | Description |
| RAG_COMPARISON_OPERATOR_UNSPECIFIED | 0 | Unspecified. Must never be used. |
| RAG_COMPARISON_OPERATOR_CONTAINS | 1 | String representation of metadata field contains value. |
| RAG_COMPARISON_OPERATOR_NOT_CONTAINS | 2 | String representation of metadata field does not contain value. |
| RAG_COMPARISON_OPERATOR_IN | 3 | Checks with Python's |
| RAG_COMPARISON_OPERATOR_NOT_IN | 4 | Checks with Python's |
| RAG_COMPARISON_OPERATOR_START_WITH | 5 | String representation of metadata field starts with value. |
| RAG_COMPARISON_OPERATOR_END_WITH | 6 | String representation of metadata field ends with 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. |
| Name | Number | Description |
| 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. |
Crawl traversal strategy.
| Name | Number | Description |
| 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. |
| Name | Number | Description |
| 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. |
| Name | Number | Description |
| 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. |
Document processing status.
| Name | Number | Description |
| 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. |
Broad document category.
| Name | Number | Description |
| RAG_DOCUMENT_TYPE_UNSPECIFIED | 0 | Unspecified. |
| RAG_DOCUMENT_TYPE_PDF | 1 | |
| 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 |
Knowledge graph construction methods.
| Name | Number | Description |
| RAG_GRAPH_RAG_METHOD_UNSPECIFIED | 0 | Unspecified. Defaults to |
| RAG_GRAPH_RAG_METHOD_LIGHT | 1 | Use prompts provided by LightRAG. |
| RAG_GRAPH_RAG_METHOD_GENERAL | 2 | Use prompts provided by GraphRAG. |
Metadata conditions logical operators
| Name | Number | Description |
| 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. |
Server project statistics
rpc GetProjectCount (.google.protobuf.Empty) returns (StatResponse)Returns the count of projects in the CAI server
rpc GetUserProjectCount (GetUserProjectCountRequest) returns (StatResponse)Returns the count of projects of a user
rpc GetUserCount (.google.protobuf.Empty) returns (StatResponse)Returns the users count within a project
| Method Name | Method | Pattern | Body |
| GetProjectCount | GET | /projects:count | |
| GetUserProjectCount | GET | /users/{user_identifier=*}/projects:count | |
| GetUserCount | GET | /users:count |
Request to get user project count
| Field | Type | Label | Description |
| user_id | string | Required. The ID of the User to count the projects from |
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.
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.
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).
rpc ListSessions (ListSessionsRequest) returns (ListSessionsResponse)ListSessions: returns list of sessions from ondewo-kb; by default returns only session IDs
rpc GetSession (GetSessionRequest) returns (Session)GetSession: returns a session(=conversation) from ondewo-kb
rpc CreateSession (CreateSessionRequest) returns (Session)CreateSession: creates and returns a session(=conversation) from ondewo-kb
rpc CreateSessionStep (CreateSessionStepRequest) returns (SessionStep)CreateSessionStep: creates a new session step for a session
rpc GetSessionStep (GetSessionStepRequest) returns (SessionStep)GetSessionStep: gets an existing session step of a session
rpc UpdateSessionStep (UpdateSessionStepRequest) returns (SessionStep)UpdateSessionStep: updates an existing session step in a session
rpc DeleteSessionStep (DeleteSessionStepRequest) returns (.google.protobuf.Empty)DeleteSessionStep: deletes an existing session step from the session
rpc DeleteSession (DeleteSessionRequest) returns (.google.protobuf.Empty)DeleteSession: delete a session(=conversation) from ondewo-kb (for testing only)
rpc ListSessionLabels (ListSessionLabelsRequest) returns (ListSessionLabelsResponse)Returns the list of labels attached to a single session.
rpc ListSessionLabelsOfAllSessions (ListSessionLabelsOfAllSessionsRequest) returns (ListSessionLabelsResponse)Returns the distinct set of labels observed across all sessions of the agent, optionally narrowed by a SessionFilter.
rpc ListLanguageCodesOfAllSessions (ListLanguageCodesOfAllSessionsRequest) returns (ListLanguageCodesResponse)Returns the distinct set of language codes observed across all sessions of the agent, optionally narrowed by a SessionFilter.
rpc ListMatchedIntentsOfAllSessions (ListMatchedIntentsOfAllSessionsRequest) returns (ListMatchedIntentsResponse)Returns the distinct set of intents matched across all sessions of the agent, optionally narrowed by a SessionFilter.
rpc ListMatchedEntityTypesOfAllSessions (ListMatchedEntityTypesOfAllSessionsRequest) returns (ListMatchedEntityTypesResponse)Returns the distinct set of entity types recognised across all sessions of the agent, optionally narrowed by a SessionFilter.
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.
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.
rpc ListTagsOfAllSessions (ListTagsOfAllSessionsRequest) returns (ListTagsResponse)Returns the distinct set of intent tags observed across all sessions of the agent, optionally narrowed by a SessionFilter.
rpc ListInputContextsOfAllSessions (ListInputContextsOfAllSessionsRequest) returns (ListInputContextsResponse)Returns the distinct set of input contexts observed across all sessions of the agent, optionally narrowed by a SessionFilter.
rpc ListOutputContextsOfAllSessions (ListOutputContextsOfAllSessionsRequest) returns (ListOutputContextsResponse)Returns the distinct set of output contexts observed across all sessions of the agent, optionally narrowed by a SessionFilter.
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.
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.
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.
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.
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.
rpc AddSessionLabels (AddSessionLabelsRequest) returns (Session)Attaches the supplied labels to a session and returns the updated session.
rpc DeleteSessionLabels (DeleteSessionLabelsRequest) returns (Session)Removes the supplied labels from a session and returns the updated session.
rpc AddSessionComment (AddSessionCommentRequest) returns (Comment)Appends a comment to a session and returns the persisted comment.
rpc DeleteSessionComments (DeleteSessionCommentsRequest) returns (Session)Removes the comments named in the request from a session and returns the updated session.
rpc UpdateSessionComments (UpdateSessionCommentsRequest) returns (Session)Updates an existing comment on a session and returns the updated session.
rpc ListSessionComments (ListSessionCommentsRequest) returns (ListSessionCommentsResponse)Lists the comments attached to a session with pagination support.
rpc ListSessionReviews (ListSessionReviewsRequest) returns (ListSessionReviewsResponse)ListSessionReviews: returns list of session reviews from ondewo-kb; by default only returns session review IDs
rpc GetSessionReview (GetSessionReviewRequest) returns (SessionReview)GetSessionReview: returns a session-review from ondewo-kb or computes the first review if none exists
rpc GetLatestSessionReview (GetLatestSessionReviewRequest) returns (SessionReview)GetLatestSessionReview: returns a session-review from ondewo-kb or computes the first review if none exists
rpc CreateSessionReview (CreateSessionReviewRequest) returns (SessionReview)CreateSessionReview: persist a session review in ondewo-kb as a side effect: also update training data in ondewo-cai
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.
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.
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.
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.
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.
| 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 | * |
This message is a request to add the audio files specified
| Field | Type | Label | Description |
| parent | string | Required. The project of this agent. Format: |
|
| session_id | string | The unique identifier of the session for which the audio files should be listed Format: |
|
| 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: |
This message is a request to add the audio files specified
| Field | Type | Label | Description |
| audio_file_resources | AudioFileResource | repeated | The unique identifier of the audio files for a specific session. Format: |
| error_message | string | error message if there are any. |
This message is a request to add a comment to a session
| Field | Type | Label | Description |
| session_id | string | The id of the session |
|
| comment | Comment | The comment to add to the session |
This message is a request to add session labels
| Field | Type | Label | Description |
| session_id | string | The id of the session |
|
| labels | string | repeated | The labels to add to the session |
Represents an audio file resource attached to a session (input recording or generated TTS output).
| Field | Type | Label | Description |
| name | string | The unique identifier of the audio file resource. Format: |
|
| 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. |
Message used to filter sessions based on contextual information
| Field | Type | Label | Description |
| 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 |
This message is a request to create a session
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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. |
Request to persist a session review for a given session.
As a side effect, training data in ondewo-cai may also be updated.
| Field | Type | Label | Description |
| session_id | string | The unique identifier for the session under review Format: |
|
| parent_review_id | string | Optional: The unique identifier of the parent review Format: |
|
| 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 |
Request to append a new SessionStep to an existing session.
| Field | Type | Label | Description |
| session_id | string | The unique identifier of the parent session. Format: . |
|
| 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 |
This message is a request to the delete audio files specified
| Field | Type | Label | Description |
| parent | string | Required. The project of this agent. Format: |
|
| names | string | repeated | The unique identifier of the audio file of the specific session Format: |
This message is a request to the delete audio files specified
| Field | Type | Label | Description |
| names | string | repeated | The unique identifier of the audio file of the specific session Format: |
| error_message | string | error message if there are any. |
This message is a request to delete a session comment
| Field | Type | Label | Description |
| session_id | string | The id of the session |
|
| comment_names | string | repeated | The comment names to delete from the session |
This message is a request to delete session labels
| Field | Type | Label | Description |
| session_id | string | The id of the session |
|
| labels | string | repeated | The labels to delete from the session |
This message is a request to delete a session
| Field | Type | Label | Description |
| session_id | string | Required. The session to be deleted Format: |
This message is a request to delete a session step of a session
| Field | Type | Label | Description |
| name | string | The unique identifier for the given session step Format: . |
The request to detect user's intent.
| Field | Type | Label | Description |
| session | string | Required. The name of the session this query is sent to. Format:
|
|
| query_params | QueryParameters | Optional. The parameters of this query. |
|
| query_input | QueryInput | Required. The input specification. It can be set to:
|
|
| input_audio | bytes | Optional. The natural language speech audio to be processed. This field
should be populated iff |
The message returned from the DetectIntent method.
| Field | Type | Label | Description |
| 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. |
|
| llm_telemetry_report | LlmTelemetryReport | Aggregated LLM telemetry — duplicated convenience copy of
|
This message contains a detected intent
| Field | Type | Label | Description |
| 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:
|
Represents a document file resource (e.g., text, markdown, PDF, DOCX).
| Field | Type | Label | Description |
| name | string | The unique identifier for the document file resource. Format: |
|
| 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. |
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?".
| Field | Type | Label | Description |
| 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. |
Represents a file resource that can either be an image, audio, document, or video file.
| Field | Type | Label | Description |
| 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. |
This message is a request to get one one file combining all audios of a specific session
| Field | Type | Label | Description |
| parent | string | Required. The project of this agent. Format: |
|
| session_id | string | The unique identifier of the session for which the audio files should be combined Format: |
|
| 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. |
This message is a request to get audio files specified
| Field | Type | Label | Description |
| parent | string | Required. The project of this agent. Format: |
|
| names | string | repeated | The unique identifier of the audio file of the specific session Format: |
| 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:
|
|
| sorting_mode | SortingMode | sorting mode |
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
This message is a request to retrieve the audio files specified
| Field | Type | Label | Description |
| audio_files | AudioFileResource | repeated | The unique identifier of the audio file for a specific session. Format: |
| 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 |
This message is a request to get latest session review
| Field | Type | Label | Description |
| session_id | string | The unique identifier of the session for which the latest review should be returned Format: |
|
| 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. |
This message is a request to get a session
| Field | Type | Label | Description |
| session_id | string | The session to be returned Format: |
|
| 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"] |
This message is a request to get session review
| Field | Type | Label | Description |
| 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. |
This message is a request to get a session step
| Field | Type | Label | Description |
| name | string | The unique identifier for the given session step Format: |
|
| 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"] |
Represents an image file resource (e.g., JPEG, PNG, GIF) attached to a session.
| Field | Type | Label | Description |
| name | string | The unique identifier of the image file resource. Format: |
|
| 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. |
Instructs the speech recognizer how to process the audio content.
| Field | Type | Label | Description |
| 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. |
request to list all account_ids of all sessions
| Field | Type | Label | Description |
| parent | string | The parent for which the account_ids for all sessions should be listed Format: |
|
| 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. |
This message is a response of listing session account_ids
| Field | Type | Label | Description |
| account_ids | string | repeated | The account_ids of the session |
This message is a request to list all available audio files of a session
| Field | Type | Label | Description |
| parent | string | Required. The project of this agent. Format: |
|
| session_id | string | Optional: The unique identifier of the session for which the audio files should be listed Format: |
|
| 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:
|
|
| sorting_mode | SortingMode | sorting mode |
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
This message is a request to retrieve the audio files specified
| Field | Type | Label | Description |
| audio_files | AudioFileResource | repeated | The requested audio files . Format: |
| 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. |
request to list all datastream_ids of all sessions
| Field | Type | Label | Description |
| parent | string | The parent for which the datastream_ids for all sessions should be listed Format: |
|
| session_filter | SessionFilter | Optional. A filter to narrow the response down to sessions of interest. |
This message is a response of listing session datastream_ids
| Field | Type | Label | Description |
| datastream_ids | string | repeated | The datastream_ids of the session |
request to list all identified_user_ids of all sessions
| Field | Type | Label | Description |
| parent | string | The parent for which the identified_user_ids for all sessions should be listed Format: |
|
| 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. |
This message is a response of listing session identified_user_ids
| Field | Type | Label | Description |
| identified_user_ids | string | repeated | The identified_user_ids of the session |
request to list all input_contexts of all sessions
| Field | Type | Label | Description |
| parent | string | The parent for which the input_contexts for all sessions should be listed Format: |
|
| 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. |
This message is a response of listing session input_contexts
| Field | Type | Label | Description |
| input_contexts | string | repeated | The input_contexts ids of the session |
request to list all language codes of all sessions
| Field | Type | Label | Description |
| parent | string | The parent for which the language_codes for all sessions should be listed Format: |
|
| 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. |
This message is a response of listing session language_codes
| Field | Type | Label | Description |
| language_codes | string | repeated | The language_codes of the session |
request to list all matched_entity_types of all sessions
| Field | Type | Label | Description |
| parent | string | The parent for which the matched_entity_types for all sessions should be listed Format: |
|
| 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. |
This message is a response of listing session matched_entity_types
| Field | Type | Label | Description |
| matched_entity_types | string | repeated | The matched_entity_types of the session |
request to list all matched_intents of all sessions
| Field | Type | Label | Description |
| parent | string | The parent for which the matched_intents for all sessions should be listed Format: |
|
| 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. |
This message is a response of listing session matched_intents
| Field | Type | Label | Description |
| matched_intents | string | repeated | The matched_intents of the session |
request to list all origin_ids of all sessions
| Field | Type | Label | Description |
| parent | string | The parent for which the origin_ids for all sessions should be listed Format: |
|
| 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. |
This message is a response of listing session origin_ids
| Field | Type | Label | Description |
| origin_ids | string | repeated | The origin_ids of the session |
request to list all output_contexts of all sessions
| Field | Type | Label | Description |
| parent | string | The parent for which the output_contexts for all sessions should be listed Format: |
|
| 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. |
This message is a response of listing session output_contexts
| Field | Type | Label | Description |
| output_contexts | string | repeated | The output_contexts ids of the session |
request to list all labels of all sessions
| Field | Type | Label | Description |
| parent | string | The parent for which the platforms for all sessions should be listed Format: |
|
| 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. |
This message is a response of listing session platforms
| Field | Type | Label | Description |
| platforms | string | repeated | The platforms of the session |
request to list all property_ids of all sessions
| Field | Type | Label | Description |
| parent | string | The parent for which the property_ids for all sessions should be listed Format: |
|
| session_filter | SessionFilter | Optional. A filter to narrow the response down to sessions of interest. |
This message is a response of listing session property_ids
| Field | Type | Label | Description |
| property_ids | string | repeated | The property_ids of the session |
This message is a request to list comments of a session
| Field | Type | Label | Description |
| session_id | string | The unique identifier for the session for which reviews should be listed Format: |
|
| 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:
|
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
This message is a request to list comments of a session
| Field | Type | Label | Description |
| comment | Comment | repeated | The comments of a specific session Format: |
| 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:
|
request to list all labels of all sessions
| Field | Type | Label | Description |
| parent | string | The parent for which the labels for all sessions should be listed Format: |
|
| 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. |
This message is a request to list session labels
| Field | Type | Label | Description |
| session_id | string | The id of the session |
This message is a response of listing session labels
| Field | Type | Label | Description |
| labels | string | repeated | The labels of the session |
This message is a request to list session reviews
| Field | Type | Label | Description |
| session_id | string | The unique identifier for the session for which reviews should be listed Format: |
|
| 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:
|
This message is a response of listing session reviews
| Field | Type | Label | Description |
| 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 |
This message is a request to list sessions
| Field | Type | Label | Description |
| parent | string | Required. The project that the agent to fetch is associated with. Format: |
|
| 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:
|
|
| 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"] |
This message is a response including the listing of sessions
| Field | Type | Label | Description |
| 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 |
request to list all tags of all sessions
| Field | Type | Label | Description |
| parent | string | The parent for which the tags for all sessions should be listed Format: |
|
| 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. |
This message is a response of listing session tags
| Field | Type | Label | Description |
| tags | string | repeated | The tags of the session |
request to list all user_ids of all sessions
| Field | Type | Label | Description |
| parent | string | The parent for which the user_ids for all sessions should be listed Format: |
|
| 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. |
This message is a response of listing session user_ids
| Field | Type | Label | Description |
| user_ids | string | repeated | The user_ids of the session |
Per-intent-agent usage rollup across the scope.
| Field | Type | Label | Description |
| 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. |
Prompt-cache efficiency aggregate across the LLM calls in scope.
| Field | Type | Label | Description |
| 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. |
Emitted on a streaming DetectIntent when an LLM invocation finishes.
| Field | Type | Label | Description |
| 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. |
Emitted on a streaming DetectIntent when an LLM invocation starts.
| Field | Type | Label | Description |
| 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. |
Per-CCAI-service usage rollup across the scope.
| Field | Type | Label | Description |
| 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. |
One error class aggregate.
| Field | Type | Label | Description |
| 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). |
Error breakdown aggregate across the scope.
| Field | Type | Label | Description |
| 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). |
One finish-reason aggregate.
| Field | Type | Label | Description |
| 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. |
Latency aggregate (seconds) across the LLM calls in scope.
| Field | Type | Label | Description |
| 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. |
Per-model usage rollup across the scope.
| Field | Type | Label | Description |
| 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. |
Per-provider usage rollup across the scope.
| Field | Type | Label | Description |
| 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. |
One reasoning-effort aggregate.
| Field | Type | Label | Description |
| 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. |
Typed view of the chunks retrieved for one LLM call. Populated alongside the
unstructured outputs.retrieved_chunks Struct (field 18 on
LlmTelemetry, kept for back-compat); both carry the same chunk list.
| Field | Type | Label | Description |
| chunks | LlmRetrievedChunk | repeated | The retrieved chunks in retrieval-result order. |
One retrieved RAG chunk surfaced during an LLM call. Mirrors the five-field
chunk already emitted into outputs.retrieved_chunks (Struct) plus
a typed rank.
| Field | Type | Label | Description |
| document_id | string | Source document identifier the chunk was retrieved from. |
|
| chunk_id | string | Chunk identifier within the source document. |
|
| score | double | Retrieval similarity / relevance score assigned by the retriever. |
|
| text | string | Chunk text (already truncated to the emit-time character cap, ~2000 chars). |
|
| source_uri | string | Source URI (document URL or document name) for click-through. |
|
| rank | int32 | Zero-based position of this chunk in the retrieval result order (RAGFlow reference order / LangChain document order). |
Native safety assessment for one LLM call, computed at telemetry build time by
a dependency-free (regex / substring) assessor over the call's input / output
text. Additive, optional: absent when safety scoring is disabled. This is the
live MONITORING signal; the offline LLM-judge safety evaluators live in
llm_evaluation.proto.
| Field | Type | Label | Description |
| flagged_categories | string | repeated | Detector categories that fired across input and output
( |
| has_pii | bool | True when any PII pattern (email / phone / IBAN / credit-card / national-id) was detected in input or output. |
|
| has_injection_attempt | bool | True when a prompt-injection pattern was detected in the input. |
|
| has_jailbreak_attempt | bool | True when a jailbreak / role-override pattern was detected in the input. |
|
| safety_score | double | Overall safety score in |
|
| findings | LlmSafetyFinding | repeated | Per-finding detail records (category / severity / matched pattern / location). |
Per-category native-safety aggregate across the LLM calls in scope.
| Field | Type | Label | Description |
| category | string | Detector category ( |
|
| count | int64 | Number of calls flagged for this category in scope. |
|
| rate | double | count / total_assessed. |
One concrete safety finding inside an LlmSafetyAssessment.
| Field | Type | Label | Description |
| category | string | Detector category that fired (e.g. |
|
| severity | string | Severity tag ("low" | "medium" | "high" | "critical"). |
|
| matched_pattern | string | The pattern / detector rule that matched (may be a redacted excerpt). |
|
| location | LlmSafetyLocation | Whether the finding was located in the input or the output. |
Native-safety breakdown aggregate across the LLM calls in scope. Computed from
the per-call LlmSafetyAssessment records.
| Field | Type | Label | Description |
| total_assessed | int64 | Number of LLM calls that carried a safety assessment in scope. |
|
| flagged_count | int64 | Number of assessed calls with at least one flagged category. |
|
| overall_safety_score | double | Mean LlmSafetyAssessment.safety_score across assessed calls
( |
|
| category_stats | LlmSafetyCategoryStat | repeated | Per-category counts and rates, descending by count. |
Telemetry for a single LLM invocation inside one DetectIntent turn.
| Field | Type | Label | Description |
| 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 ( |
|
| finish_reasons | string | repeated | One finish reason per generation (e.g. |
| cached_input_tokens | int32 | Number of input tokens served from the provider-side prompt cache
(Anthropic |
|
| cache_creation_input_tokens | int32 | Number of input tokens written to the provider-side prompt cache
(Anthropic |
|
| 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 |
|
| reflection_iterations | int32 | Number of reflection loops executed in |
|
| termination_reason | string | Autogen |
|
| 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 |
|
| llm_safety_assessment | LlmSafetyAssessment | Native (regex / substring, no-LLM) safety assessment computed at telemetry
build time over the call's input / output text. Distinct from the offline
LLM-judge safety evaluators in |
|
| llm_retrieval_metadata | LlmRetrievalMetadata | Typed view of the retrieved RAG chunks for this LLM call. Populated
alongside the unstructured |
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.
| Field | Type | Label | Description |
| 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. |
|
| safety_stats | LlmSafetyStats | Native safety aggregate (counts / rates / mean score). Populated for *_LLM_SAFETY and *_LLM_TOTAL_STATISTICS reports. |
Emitted on a streaming DetectIntent for each thinking-delta chunk.
| Field | Type | Label | Description |
| 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. |
Thinking / reasoning block emitted by the model (e.g. Anthropic extended thinking,
OpenAI o-series reasoning).
| Field | Type | Label | Description |
| 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. |
Token usage counters for a single LLM call (or aggregate).
| Field | Type | Label | Description |
| 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. |
Emitted on a streaming DetectIntent when running token counts update.
| Field | Type | Label | Description |
| llm_call_id | string | Groups events under an LlmTelemetry entry. |
|
| llm_token_usage | LlmTokenUsage | Running totals for that llm_call. |
Emitted on a streaming DetectIntent when a tool call finishes.
| Field | Type | Label | Description |
| 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. |
Metadata for one tool call executed by the LLM.
| Field | Type | Label | Description |
| 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. |
Emitted on a streaming DetectIntent when a tool call starts.
| Field | Type | Label | Description |
| 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. |
One tool's invocation aggregate across the scope.
| Field | Type | Label | Description |
| 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). |
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.
| Field | Type | Label | Description |
| 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. |
Represents the parameters of the conversational query.
| Field | Type | Label | Description |
| 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 language=LanguageCode.de.valuekey: timestamp
timestamp=time.time() # float python timestamp in seconds since epochkey: 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.OndewoWeightedEnsemblekey: single_ner_algorithm
single_ner_algorithm='NerMethodType.OndewoNerRegex'
=> allowed other values for |
|
| 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
|
| 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 |
Represents the result of conversational query or event processing.
| Field | Type | Label | Description |
| query_text | string | The original conversational query text:
|
|
| 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:
|
|
| 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 |
|
| webhook_payload | google.protobuf.Struct | If the query was fulfilled by a webhook call, this field is set to the
value of the |
|
| output_contexts | Context | repeated | The collection of output contexts. If applicable,
|
| intent | Intent | The intent that matched the conversational query. Some, not
all fields are filled in this message, including but not limited to:
|
|
| 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. |
|
| referenced_chunks | ReferencedChunk | repeated | Source chunks the answer cited via in-text |
Chunk information for a document chunk referenced in a RAG based StreamingDetectIntentResponse
| Field | Type | Label | Description |
| reference_index | int32 | Index by which this chunk is referenced in the response text. For index |
|
| dataset_id | string | ID of the dataset the chunk belongs to. |
|
| document_id | string | ID of the document the chunk belongs to. |
|
| chunk_id | string | ID of the chunk. |
|
| document_name | string | Name of the document the chunk belongs to. |
|
| content | string | Text of the chunk. |
|
| similarity | float | Similarity score of this chunk for response it is retruned with. |
|
| document_url | string | For crawled documents the URL of the source document. For any other document it is left empty. |
|
| deep_link_url | string | For crawled documents link to the source document that directly jumps to the chunk's location on the page using a text fragment anchor (a bit fragile and might not always work). For any other document it is left empty. |
Represents a speech-to-text transcription.
| Field | Type | Label | Description |
| 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 of a user interaction
| Field | Type | Label | Description |
| name | string | The unique identifier of the session Format: |
|
| 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. |
This message contains a session filter
| Field | Type | Label | Description |
| 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 |
This message contains information about session
| Field | Type | Label | Description |
| 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 |
The list of contexts of each step collected in an outer list
| Field | Type | Label | Description |
| contexts | Context | repeated | List of contexts for a session step |
This message contains a session review
| Field | Type | Label | Description |
| name | string | The unique identifier for the given review Format: |
|
| 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. |
This message contains a session review step
| Field | Type | Label | Description |
| name | string | The unique identifier for the given review step Format: |
|
| 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 is a single user interaction as part of a session.
| Field | Type | Label | Description |
| name | string | The unique identifier of the session step. Format: |
|
| 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). |
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.
| Field | Type | Label | Description |
| session | string | Required. The name of the session the query is sent to.
Format of the session name:
|
|
| query_params | QueryParameters | Optional. The parameters of this query. |
|
| query_input | QueryInput | Required. The input specification. It can be set to:
|
|
| single_utterance | bool | Optional. If |
|
| input_audio | bytes | Optional. The input audio content to be recognized. Must be sent if
|
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.
| Field | Type | Label | Description |
| 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 |
|
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:
MESSAGE_TYPE_TRANSCRIPT: transcript and possibly is_final.MESSAGE_TYPE_END_OF_SINGLE_UTTERANCE: only event_type.| Field | Type | Label | Description |
| 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 |
|
| is_final | bool | The default of 0.0 is a sentinel value indicating |
|
| 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 |
Represents the natural language text to be processed.
| Field | Type | Label | Description |
| 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. |
This message is a request to update a session comment
| Field | Type | Label | Description |
| session_id | string | The id of the session |
|
| comment | Comment | The comment of a session to be updated |
UpdateSessionStepRequest stores a session step into the session
| Field | Type | Label | Description |
| 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"] |
Represents a video file resource (e.g., MP4, AVI).
| Field | Type | Label | Description |
| name | string | The unique identifier for the video file resource. Format: |
|
| 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. |
Audio encoding of the audio content sent in the conversational query request.
Refer to the Cloud Speech API documentation for more details.
| Name | Number | Description |
| 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 |
| 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. |
| AUDIO_ENCODING_AMR_WB | 5 | Adaptive Multi-Rate wideband codec. |
| AUDIO_ENCODING_OGG_OPUS | 6 | Opus encoded audio frames in Ogg container
(OggOpus).
|
| AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE | 7 | Although the use of lossy encodings is not recommended, if a very low
bitrate encoding is required, |
File type of an audio resource
| Name | Number | Description |
| 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 |
Type of operator to compare
| Name | Number | Description |
| 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 |
Where a safety finding was located in the LLM call.
| Name | Number | Description |
| LLM_SAFETY_LOCATION_UNSPECIFIED | 0 | Default / unset. |
| LLM_SAFETY_LOCATION_INPUT | 1 | The finding was matched in the model input (prompt / user turn). |
| LLM_SAFETY_LOCATION_OUTPUT | 2 | The finding was matched in the model output (completion). |
Effort level for reasoning models (e.g. o1, o3). Controls the trade-off
between speed and quality.
| Name | Number | Description |
| 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. |
Represents the options for views of resources.
| Name | Number | Description |
| 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 |
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
| Name | Number | Description |
| 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. |
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
| Name | Number | Description |
| 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. |
Type of the response message.
| Name | Number | Description |
| 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
|
Identifies whether a transcription was produced by an automatic
speech-to-text system or by a human annotator.
| Name | Number | Description |
| 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. |
gRPC service for managing users and server roles.
rpc CreateUser (CreateUserRequest) returns (User)Creates a user.
rpc GetUser (GetUserRequest) returns (User)Retrieves a user by identifier.
rpc GetUserInfo (GetUserRequest) returns (UserInfo)Retrieves user information by identifier.
rpc DeleteUser (GetUserRequest) returns (.google.protobuf.Empty)Deletes a user by identifier.
rpc UpdateUser (UpdateUserRequest) returns (User)Updates a user.
rpc ListUsers (ListUsersRequest) returns (ListUsersResponse)Lists users.
rpc ListUserInfos (ListUsersRequest) returns (ListUserInfosResponse)Lists user information.
rpc CreateServerRole (CreateServerRoleRequest) returns (ServerRole)Creates a server role.
rpc GetServerRole (GetServerRoleRequest) returns (ServerRole)Retrieves a server role by ID.
rpc DeleteServerRole (DeleteServerRoleRequest) returns (.google.protobuf.Empty)Deletes a server role by ID.
rpc UpdateServerRole (UpdateServerRoleRequest) returns (ServerRole)Updates a server role.
rpc ListServerRoles (ListServerRolesRequest) returns (ListServerRolesResponse)Lists server roles.
rpc ListServerPermissions (ListServerPermissionsRequest) returns (ListServerPermissionsResponse)Lists server permissions.
rpc Login (LoginRequest) returns (LoginResponse)Requests login.
rpc CheckLogin (.google.protobuf.Empty) returns (.google.protobuf.Empty)Checks login.
rpc ListNotifications (ListNotificationsRequest) returns (ListNotificationsResponse)Lists notifications based on specified filters.
rpc SetNotificationsFlaggedStatus (SetNotificationsFlaggedStatusRequest) returns (ListNotificationsResponse)Sets the flagged status for multiple notifications.
rpc SetNotificationsReadStatus (SetNotificationsReadStatusRequest) returns (ListNotificationsResponse)Sets the read status for multiple notifications.
rpc GetUserPreferences (GetUserPreferencesRequest) returns (GetUserPreferencesResponse)Retrieves user preferences based on the provided request.
rpc SetUserPreferences (SetUserPreferencesRequest) returns (SetUserPreferencesResponse)Sets or updates user preferences based on the provided request.
rpc DeleteUserPreferences (DeleteUserPreferencesRequest) returns (DeleteUserPreferencesResponse)Deletes specific user preferences based on the provided request.
rpc DeleteAllUserPreferences (DeleteAllUserPreferencesRequest) returns (DeleteUserPreferencesResponse)Deletes all user preferences for a specific user, optionally filtered by a substring.
| 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 |
Request to create server role
| Field | Type | Label | Description |
| 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 |
Request to create user
| Field | Type | Label | Description |
| user | User | user_id in the User message should be given, if empty will throw an error in the backend |
|
| password | string | password |
Request to delete all user preferences with an optional filter substring.
| Field | Type | Label | Description |
| user_name | string | The name of the user. Format: |
|
| 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: |
Request to delete server role
| Field | Type | Label | Description |
| role_id | uint32 | role is identified by role id, if empty will throw an error in the backend |
Request to delete specific user preferences.
| Field | Type | Label | Description |
| user_name | string | The name of the user. Format: |
|
| keys | string | repeated | List of keys to delete from user preferences. |
| regex_include | string | Optional: In addition to the keys specified also include all |
Response to delete specific user preferences.
| Field | Type | Label | Description |
| user_name | string | The name of the user. Format: |
|
| keys | string | repeated | List of keys to delete from user preferences. |
| error_message | string | error message if there are any. |
Request to delete user
| Field | Type | Label | Description |
| user_id | string | user is identified by user id, if empty will throw an error in the backend |
Request to get server role
| Field | Type | Label | Description |
| 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. |
Request to get user preferences.
| Field | Type | Label | Description |
| user_name | string | The name of the user. Format: |
|
| 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 |
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
Response containing user preferences.
| Field | Type | Label | Description |
| user_name | string | The name of the user. Format: |
|
| key_value_pairs | KeyValuePair | repeated | List of key-value pairs representing user preferences. |
| error_message | string | error message if there are any. |
Request to get user
| Field | Type | Label | Description |
| 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 |
Server permissions
| Field | Type | Label | Description |
| 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:
|
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
Response containing list of server permissions
| Field | Type | Label | Description |
| 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 |
Request to list server roles
| Field | Type | Label | Description |
| 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:
|
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
Response containing list of server roles
| Field | Type | Label | Description |
| 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 |
Response containing list of users
| Field | Type | Label | Description |
| 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 |
Request to list all user preferences for a specific user.
| Field | Type | Label | Description |
| user_name | string | The name of the user. Format: |
|
| 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. |
Response containing a list of user preferences for a specific user with an optional filter substring.
| Field | Type | Label | Description |
| 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. |
Request to list user
| Field | Type | Label | Description |
| 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:
|
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
Response containing list of users
| Field | Type | Label | Description |
| 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 |
Authentication messages
| Field | Type | Label | Description |
| user_email | string | user email |
|
| password | string | user password |
|
| field_mask | google.protobuf.FieldMask | optional | Optional. The mask to control which fields gets returned. |
This message is a response of logging
| Field | Type | Label | Description |
| user | User | user object - user_id must be there |
|
| auth_token | string | authentication token after successful login of the user to access NLU services |
Server Role messages
| Field | Type | Label | Description |
| 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. |
Request to set or update user preferences.
| Field | Type | Label | Description |
| user_name | string | The name of the user. Format: |
|
| key_value_pairs | KeyValuePair | repeated | List of key-value pairs to set or update. |
Response to set or update user preferences.
| Field | Type | Label | Description |
| user_name | string | The name of the user. Format: |
|
| keys | string | repeated | List of keys to delete from user preferences. |
| error_message | string | error message if there are any. |
Request to update server role
| Field | Type | Label | Description |
| 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. |
Request to update user
| Field | Type | Label | Description |
| 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. |
this message contains all the fields that required for user db
| Field | Type | Label | Description |
| 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. |
This message contains information about user
| Field | Type | Label | Description |
| 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 |
| Field | Type | Label | Description |
| key | string |
|
|
| value | ProjectRole |
|
Structure of server role
| Name | Number | Description |
| 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. |
This is collection of utility endpoints, intended to language-independent operations, such as code checks, regex checks, etc. Holds a collection of utility functions
rpc ValidateRegex (ValidateRegexRequest) returns (ValidateRegexResponse)Validates the validity of python regexes
rpc ValidateEmbeddedRegex (ValidateEmbeddedRegexRequest) returns (ValidateEmbeddedRegexResponse)Validate that entity types with group references have synonyms with capturing groups.
rpc CleanAllIntents (CleanAllIntentsRequest) returns (CleanAllIntentsResponse)Cleans all intent training phrases and entity annotations of parent
rpc CleanIntent (CleanIntentRequest) returns (CleanIntentResponse)Cleans single intent training phrases and entity annotations
rpc CleanAllEntityTypes (CleanAllEntityTypesRequest) returns (CleanAllEntityTypesResponse)Cleans all entity types of parent
rpc CleanEntityType (CleanEntityTypeRequest) returns (CleanEntityTypeResponse)Cleans entity type
rpc AddTrainingPhrases (AddTrainingPhrasesRequest) returns (AddTrainingPhrasesResponse)Creates new training phrases corresponding to intent specified by its intent display name
rpc AddTrainingPhrasesFromCSV (AddTrainingPhrasesFromCSVRequest) returns (AddTrainingPhrasesResponse)Creates new training phrases corresponding to intent specified by its intent display name from csv file
Request message to AddTrainingPhraseFromCSV rpc
| Field | Type | Label | Description |
| parent | string | Required. The agent to list all intents from. Format: |
|
| 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 |
Request message to AddTrainingPhrase rpc
| Field | Type | Label | Description |
| parent | string | Required. The agent to list all intents from. Format: |
|
| 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 |
Message that contains the new training phrase, together with the intent display name and, optionally the entity annotations
| Field | Type | Label | Description |
| 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 |
Response message to AddTrainingPhrase rpc
| Field | Type | Label | Description |
| error_messages | string | repeated | Required. If something goes wrong, error messages will be conveyed via a repeated string |
Request to clean the entity types
| Field | Type | Label | Description |
| parent | string | Required. The agent to list all intents from. Format: |
|
| 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: |
| 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: |
| 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 |
Response from entity type cleaner
| Field | Type | Label | Description |
| 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 |
The request to clean the all intents.
| Field | Type | Label | Description |
| parent | string | Required. The agent to list all intents from. Format: |
|
| 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: |
| 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 |
Response corresponding to the CleanAllIntents Request
| Field | Type | Label | Description |
| cleaned_intents | Intent | repeated | Required. List of updates performed on intents |
| intent_update_list | IntentUpdate | repeated | Optional. List of updates applied to intents |
Request to clean a single entity type
| Field | Type | Label | Description |
| parent | string | Required. The agent to list all intents from. Format: |
|
| 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: |
| 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 |
Response from entity type cleaner
| Field | Type | Label | Description |
| cleaned_entity_type | EntityType | Required. The cleaned entity type |
|
| entity_type_update | EntityTypeUpdate | Optional. The updated entity type |
The request message to clean a single intents.
| Field | Type | Label | Description |
| parent | string | Required. The agent to list all intents from. Format: |
|
| intent_name | string | Required. The name of the intent. Format: |
|
| 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: |
| 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) |
The response message to clean a single intents.
| Field | Type | Label | Description |
| cleaned_intent | Intent | Required. Cleaned Intent |
|
| intent_update | IntentUpdate | Optional. Updates applied to intent |
Stores updates applied to an entity type
| Field | Type | Label | Description |
| entity_type_name | string | The entity type name |
|
| values_update_list | EntityTypeUpdate.EntityUpdate | repeated | List of the updated entities |
Stores updates applied to an entity
| Field | Type | Label | Description |
| entity_value_update | StringUpdate | Updates made to the entity value |
|
| entity_synonym_updates | StringUpdate | repeated | Updates made to the entity synonyms |
Stores updates applied to an intent
| Field | Type | Label | Description |
| 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 |
Message to track the updates made to a training phrase
| Field | Type | Label | Description |
| 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 |
Message to keep track of updated strings
| Field | Type | Label | Description |
| new | string | New version of the string |
|
| old | string | Old version of the string |
Options for cleaning the training phrases
| Field | Type | Label | Description |
| 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 |
Validation request for entity type values
| Field | Type | Label | Description |
| entity_type | EntityType.Entity |
|
Response of the entity type validation
| Field | Type | Label | Description |
| error_messages | string | repeated | List of error message from the validation |
The request to validate regexes.
| Field | Type | Label | Description |
| regex | string | String containing the regex. |
The response of the regex validation
| Field | Type | Label | Description |
| error_messages | string | repeated | Error messages |
Encapsulates entity re-annotation options
| Name | Number | Description |
| 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 |
service to send requests to a webhook server
rpc ResponseRefinement (WebhookRequest) returns (WebhookResponse)send a request for /response_refinement/ to the webhook server fulfillment messages can be overwritten by the webhook server
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
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
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.
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.
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.
| 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 |
The request message for Webhook.CreateSessionEntityType
| Field | Type | Label | Description |
| parent | string | Required. The agent to list all intents from. Format: |
|
| 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:
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.
Required. The project that the agent to fetch is associated with.
The session to create a session entity type for.
Format: |
The request message for Webhook.DeleteSessionEntityType.
| Field | Type | Label | Description |
| name | string | Required. The name of the entity type to delete. Format:
|
The request message for Webhook.GetSessionEntityType.
| Field | Type | Label | Description |
| name | string | Required. The name of the session entity type. Format:
|
The request message for Webhook.ListSessionEntityTypes.
| Field | Type | Label | Description |
| parent | string | Required. The session to list all session entity types from.
Format: |
|
| 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:
|
The response message for Webhook.ListSessionEntityTypes.
| Field | Type | Label | Description |
| 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 |
Represents the contents of the original request that was passed to the [Streaming]DetectIntent call.
| Field | Type | Label | Description |
| source | string | The source of this request, e.g., |
|
| payload | google.protobuf.Struct | Optional. This field is set to the value of the {
"a": {
"b": "c"
}
} |
request sent for webhook ping
| Field | Type | Label | Description |
| session | string | session ID for webhook ping |
This message is a response of pinging
| Field | Type | Label | Description |
| is_reachable | bool | This is the response message of a Ping request. It's purpose is to report the reachability of a Webhook server. |
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.
| Field | Type | Label | Description |
| name | string | Required. The unique identifier of this session entity type. Format:
|
|
| 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. |
The request message for Webhook.UpdateSessionEntityType.
| Field | Type | Label | Description |
| 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. |
The request message for a webhook call.
| Field | Type | Label | Description |
| response_id | string | The unique identifier of the response. Contains the same value as
|
|
| query_result | QueryResult | The result of the conversational query or event processing. Contains the
same value as |
|
| original_detect_intent_request | OriginalDetectIntentRequest | Optional. The contents of the original request that was passed to |
|
| session | string | The unique identifier of detectIntent request session. Can be used to identify end-user inside webhook implementation. Format: |
|
| headers | google.protobuf.Struct | Optional. The headers of the request message |
The response message for a webhook call.
| Field | Type | Label | Description |
| fulfillment_text | string | Optional. The text to be shown on the screen. This value is passed directly
to |
|
| fulfillment_messages | Intent.Message | repeated | Optional. The collection of rich messages to present to the user. This
value is passed directly to |
| source | string | Optional. This value is passed directly to |
|
| payload | google.protobuf.Struct | Optional. This value is passed directly to {
"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 |
| followup_event_input | EventInput | Optional. Makes the platform immediately invoke another |
|
| 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 |
The types of modifications for a session entity type.
| Name | Number | Description |
| 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 |
gRPC service for QA functionalities.
rpc GetAnswer (GetAnswerRequest) returns (GetAnswerResponse)Retrieves an answer based on the provided request.
rpc RunScraper (RunScraperRequest) returns (RunScraperResponse)Runs a web scraper job for specified project IDs.
rpc UpdateDatabase (UpdateDatabaseRequest) returns (UpdateDatabaseResponse)Updates the database for specified project IDs.
rpc RunTraining (.google.protobuf.Empty) returns (RunTrainingResponse)Runs a training job for the QA system.
rpc GetServerState (.google.protobuf.Empty) returns (GetServerStateResponse)Retrieves the server state for QA.
rpc ListProjectIds (.google.protobuf.Empty) returns (ListProjectIdsResponse)Lists project IDs associated with QA.
rpc GetProjectConfig (GetProjectConfigRequest) returns (GetProjectConfigResponse)Retrieves the configuration of a specific project.
| Method Name | Method | Pattern | Body |
| GetAnswer | POST | /qa | * |
| RunScraper | GET | /qa:RunScraper | |
| UpdateDatabase | GET | /qa:UpdateDatabase | |
| RunTraining | GET | /qa:RunTraining | |
| GetServerState | GET | /qa:GetServerState | |
| ListProjectIds | GET | /qa:ListProjectIds | |
| GetProjectConfig | GET | /qa:ListProjectConfig |
The request message
| Field | Type | Label | Description |
| session_id | string | Required. The name of the session this query is sent to. Format:
|
|
| text | ondewo.nlu.TextInput | Required. The context of the request. A message containing a string (in the form of a sentence) and a language code. |
|
| max_num_answers | int32 | Maximal number of answers returned |
|
| threshold_reader | float | Threshold (minimal score) to give back reader result |
|
| threshold_retriever | float | Threshold (minimal score) to give back retriever result |
|
| threshold_overall | float | Threshold (minimal score) overall probability |
|
| reader_model_name | string | Reader model name |
|
| url_filter | UrlFilter | Optional. Filters applied to the urls, to restrict the retrieved documents. |
Message containing the response for retrieving answers.
| Field | Type | Label | Description |
| query_result | ondewo.nlu.DetectIntentResponse | The results of the conversational query or event processing. |
Message for requesting the configuration of a specific project.
| Field | Type | Label | Description |
| project_id | string | The ID of the project for which to retrieve the configuration. |
Message containing the response for getting the configuration of a project.
| Field | Type | Label | Description |
| config_serialized | string | Serialized configuration of the project. |
Message containing the response for checking the server state.
| Field | Type | Label | Description |
| server_is_ready | bool | Indicates whether the server is ready to accept requests. |
Message for listing project IDs in the response.
| Field | Type | Label | Description |
| project_ids | string | repeated | List of project IDs. |
Message for running a web scraper job.
| Field | Type | Label | Description |
| project_ids | string | repeated | List of project IDs to run the scraper on. |
Message containing the response for running a web scraper job.
| Field | Type | Label | Description |
| scraper_containers | RunScraperResponse.ScraperContainer | repeated | List of scraper containers running the jobs. |
Message representing a scraper container.
| Field | Type | Label | Description |
| container_name | string | Name of the Docker container running the job. |
|
| container_id | string | ID of the Docker container running the scraping job. |
Message containing the response for running a training job.
| Field | Type | Label | Description |
| f1 | float | F1 score as a response of the training. |
|
| accuracy | float | Accuracy as a response of the training. |
Message for requesting a database update for specific projects.
| Field | Type | Label | Description |
| project_ids | string | repeated | List of project IDs for which to update the database. |
Message containing the response for updating the database of specific projects.
| Field | Type | Label | Description |
| error_messages | string | repeated | List of error messages encountered during the database update. |
Message for defining URL filters to include and exclude from the scraping process.
| Field | Type | Label | Description |
| allowed_values | string | repeated | Optional. List of allowed values for the metadata field |
| regex_filter_include | string | Optional. Regular expression that must be matched by the metadata. |
|
| regex_filter_exclude | string | Optional. Regular expression that must not be matched by the metadata. |
| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby |
| 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) |