Analysis

The analysis resource.

JSON representation
{
  "name": string,
  "requestTime": string,
  "createTime": string,
  "analysisResult": {
    object (AnalysisResult)
  },
  "annotatorSelector": {
    object (AnnotatorSelector)
  }
}
Fields
name

string

Immutable. The resource name of the analysis. Format: projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis}

requestTime

string (Timestamp format)

Output only. The time at which the analysis was requested.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

createTime

string (Timestamp format)

Output only. The time at which the analysis was created, which occurs when the long-running operation completes.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

analysisResult

object (AnalysisResult)

Output only. The result of the analysis, which is populated when the analysis finishes.

annotatorSelector

object (AnnotatorSelector)

To select the annotators to run and the phrase matchers to use (if any). If not specified, all annotators will be run.

AnalysisResult

The result of an analysis.

JSON representation
{
  "endTime": string,

  // Union field metadata can be only one of the following:
  "callAnalysisMetadata": {
    object (CallAnalysisMetadata)
  }
  // End of list of possible types for union field metadata.
}
Fields
endTime

string (Timestamp format)

The time at which the analysis ended.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

Union field metadata. Metadata discovered during analysis. metadata can be only one of the following:
callAnalysisMetadata

object (CallAnalysisMetadata)

Call-specific metadata created by the analysis.

CallAnalysisMetadata

Call-specific metadata created during analysis.

JSON representation
{
  "annotations": [
    {
      object (CallAnnotation)
    }
  ],
  "entities": {
    string: {
      object (Entity)
    },
    ...
  },
  "sentiments": [
    {
      object (ConversationLevelSentiment)
    }
  ],
  "silence": {
    object (ConversationLevelSilence)
  },
  "intents": {
    string: {
      object (Intent)
    },
    ...
  },
  "phraseMatchers": {
    string: {
      object (PhraseMatchData)
    },
    ...
  },
  "issueModelResult": {
    object (IssueModelResult)
  },
  "semanticMatchMetadata": {
    object (SemanticMatchMetadata)
  },
  "qaScorecardResults": [
    {
      object (QaScorecardResult)
    }
  ]
}
Fields
annotations[]

object (CallAnnotation)

A list of call annotations that apply to this call.

entities

map (key: string, value: object (Entity))

All the entities in the call.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

sentiments[]

object (ConversationLevelSentiment)

Overall conversation-level sentiment for each channel of the call.

silence

object (ConversationLevelSilence)

Overall conversation-level silence during the call.

intents

map (key: string, value: object (Intent))

All the matched intents in the call.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

phraseMatchers

map (key: string, value: object (PhraseMatchData))

All the matched phrase matchers in the call.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

issueModelResult

object (IssueModelResult)

Overall conversation-level issue modeling result.

semanticMatchMetadata

object (SemanticMatchMetadata)

Metadata used in the semantic match.

qaScorecardResults[]

object (QaScorecardResult)

Results of scoring QaScorecards.

CallAnnotation

A piece of metadata that applies to a window of a call.

JSON representation
{
  "channelTag": integer,
  "annotationStartBoundary": {
    object (AnnotationBoundary)
  },
  "annotationEndBoundary": {
    object (AnnotationBoundary)
  },

  // Union field data can be only one of the following:
  "interruptionData": {
    object (InterruptionData)
  },
  "sentimentData": {
    object (SentimentData)
  },
  "silenceData": {
    object (SilenceData)
  },
  "holdData": {
    object (HoldData)
  },
  "entityMentionData": {
    object (EntityMentionData)
  },
  "intentMatchData": {
    object (IntentMatchData)
  },
  "phraseMatchData": {
    object (PhraseMatchData)
  },
  "issueMatchData": {
    object (IssueMatchData)
  }
  // End of list of possible types for union field data.
}
Fields
channelTag

integer

The channel of the audio where the annotation occurs. For single-channel audio, this field is not populated.

annotationStartBoundary

object (AnnotationBoundary)

The boundary in the conversation where the annotation starts, inclusive.

annotationEndBoundary

object (AnnotationBoundary)

The boundary in the conversation where the annotation ends, inclusive.

Union field data. The data in the annotation. data can be only one of the following:
interruptionData

object (InterruptionData)

Data specifying an interruption.

sentimentData

object (SentimentData)

Data specifying sentiment.

silenceData

object (SilenceData)

Data specifying silence.

holdData

object (HoldData)

Data specifying a hold.

entityMentionData

object (EntityMentionData)

Data specifying an entity mention.

intentMatchData

object (IntentMatchData)

Data specifying an intent match.

phraseMatchData

object (PhraseMatchData)

Data specifying a phrase match.

issueMatchData

object (IssueMatchData)

Data specifying an issue match.

InterruptionData

This type has no fields.

The data for an interruption annotation.

SilenceData

This type has no fields.

The data for a silence annotation.

HoldData

This type has no fields.

The data for a hold annotation.

EntityMentionData

The data for an entity mention annotation. This represents a mention of an Entity in the conversation.

JSON representation
{
  "entityUniqueId": string,
  "type": enum (MentionType),
  "sentiment": {
    object (SentimentData)
  }
}
Fields
entityUniqueId

string

The key of this entity in conversation entities. Can be used to retrieve the exact Entity this mention is attached to.

type

enum (MentionType)

The type of the entity mention.

sentiment

object (SentimentData)

Sentiment expressed for this mention of the entity.

IntentMatchData

The data for an intent match. Represents an intent match for a text segment in the conversation. A text segment can be part of a sentence, a complete sentence, or an utterance with multiple sentences.

JSON representation
{
  "intentUniqueId": string
}
Fields
intentUniqueId

string

The id of the matched intent. Can be used to retrieve the corresponding intent information.

PhraseMatchData

The data for a matched phrase matcher. Represents information identifying a phrase matcher for a given match.

JSON representation
{
  "phraseMatcher": string,
  "displayName": string
}
Fields
phraseMatcher

string

The unique identifier (the resource name) of the phrase matcher.

displayName

string

The human-readable name of the phrase matcher.

IssueMatchData

The data for an issue match annotation.

JSON representation
{
  "issueAssignment": {
    object (IssueAssignment)
  }
}
Fields
issueAssignment

object (IssueAssignment)

Information about the issue's assignment.

IssueAssignment

Information about the issue.

JSON representation
{
  "issue": string,
  "score": number,
  "displayName": string
}
Fields
issue

string

Resource name of the assigned issue.

score

number

Score indicating the likelihood of the issue assignment. currently bounded on [0,1].

displayName

string

Immutable. Display name of the assigned issue. This field is set at time of analyis and immutable since then.

Entity

The data for an entity annotation. Represents a phrase in the conversation that is a known entity, such as a person, an organization, or location.

JSON representation
{
  "displayName": string,
  "type": enum (Type),
  "metadata": {
    string: string,
    ...
  },
  "salience": number,
  "sentiment": {
    object (SentimentData)
  }
}
Fields
displayName

string

The representative name for the entity.

type

enum (Type)

The entity type.

metadata

map (key: string, value: string)

Metadata associated with the entity.

For most entity types, the metadata is a Wikipedia URL (wikipedia_url) and Knowledge Graph MID (mid), if they are available. For the metadata associated with other entity types, see the Type table below.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

salience

number

The salience score associated with the entity in the [0, 1.0] range.

The salience score for an entity provides information about the importance or centrality of that entity to the entire document text. Scores closer to 0 are less salient, while scores closer to 1.0 are highly salient.

sentiment

object (SentimentData)

The aggregate sentiment expressed for this entity in the conversation.

ConversationLevelSentiment

One channel of conversation-level sentiment data.

JSON representation
{
  "channelTag": integer,
  "sentimentData": {
    object (SentimentData)
  }
}
Fields
channelTag

integer

The channel of the audio that the data applies to.

sentimentData

object (SentimentData)

Data specifying sentiment.

ConversationLevelSilence

Conversation-level silence data.

JSON representation
{
  "silenceDuration": string,
  "silencePercentage": number
}
Fields
silenceDuration

string (Duration format)

Amount of time calculated to be in silence.

A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".

silencePercentage

number

Percentage of the total conversation spent in silence.

Intent

The data for an intent. Represents a detected intent in the conversation, for example MAKES_PROMISE.

JSON representation
{
  "id": string,
  "displayName": string
}
Fields
id

string

The unique identifier of the intent.

displayName

string

The human-readable name of the intent.

IssueModelResult

Issue Modeling result on a conversation.

JSON representation
{
  "issueModel": string,
  "issues": [
    {
      object (IssueAssignment)
    }
  ]
}
Fields
issueModel

string

Issue model that generates the result. Format: projects/{project}/locations/{location}/issueModels/{issueModel}

issues[]

object (IssueAssignment)

All the matched issues.

SemanticMatchMetadata

Semantic match metadata used in an analysis.

JSON representation
{
  "issueModel": string
}
Fields
issueModel

string

Issue model that's used in the semantic match. Format: projects/{project}/locations/{location}/issueModels/{issueModel}

QaScorecardResult

The results of scoring a single conversation against a QaScorecard. Contains a collection of QaAnswers and aggregate score.

JSON representation
{
  "name": string,
  "qaScorecardRevision": string,
  "conversation": string,
  "createTime": string,
  "agentId": string,
  "qaAnswers": [
    {
      object (QaAnswer)
    }
  ],
  "score": number,
  "potentialScore": number,
  "normalizedScore": number,
  "qaTagResults": [
    {
      object (QaTagResult)
    }
  ],
  "scoreSources": [
    {
      object (ScoreSource)
    }
  ]
}
Fields
name

string

Identifier. The name of the scorecard result. Format: projects/{project}/locations/{location}/qaScorecardResults/{qa_scorecard_result}

qaScorecardRevision

string

The QaScorecardRevision scored by this result.

conversation

string

The conversation scored by this result.

createTime

string (Timestamp format)

Output only. The timestamp that the revision was created.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

agentId

string

ID of the agent that handled the conversation.

qaAnswers[]

object (QaAnswer)

Set of QaAnswers represented in the result.

score

number

The overall numerical score of the result, incorporating any manual edits if they exist.

potentialScore

number

The maximum potential overall score of the scorecard. Any questions answered using naValue are excluded from this calculation.

normalizedScore

number

The normalized score, which is the score divided by the potential score. Any manual edits are included if they exist.

qaTagResults[]

object (QaTagResult)

Collection of tags and their scores.

scoreSources[]

object (ScoreSource)

List of all individual score sets.

QaAnswer

An answer to a QaQuestion.

JSON representation
{
  "qaQuestion": string,
  "conversation": string,
  "questionBody": string,
  "answerValue": {
    object (AnswerValue)
  },
  "potentialScore": number,
  "tags": [
    string
  ],
  "answerSources": [
    {
      object (AnswerSource)
    }
  ]
}
Fields
qaQuestion

string

The QaQuestion answered by this answer.

conversation

string

The conversation the answer applies to.

questionBody

string

Question text. E.g., "Did the agent greet the customer?"

answerValue

object (AnswerValue)

The main answer value, incorporating any manual edits if they exist.

potentialScore

number

The maximum potential score of the question. If the question was answered using naValue, this field will be zero.

tags[]

string

User-defined list of arbitrary tags. Matches the value from QaScorecard.ScorecardQuestion.tags. Used for grouping/organization and for weighting the score of each answer.

answerSources[]

object (AnswerSource)

List of all individual answers given to the question.

AnswerSource

A question may have multiple answers from varying sources, one of which becomes the "main" answer above. AnswerSource represents each individual answer.

JSON representation
{
  "sourceType": enum (SourceType),
  "answerValue": {
    object (AnswerValue)
  }
}
Fields
sourceType

enum (SourceType)

What created the answer.

answerValue

object (AnswerValue)

The answer value from this source.

QaTagResult

Tags and their corresponding results.

JSON representation
{
  "tag": string,
  "score": number,
  "potentialScore": number,
  "normalizedScore": number
}
Fields
tag

string

The tag the score applies to.

score

number

The score the tag applies to.

potentialScore

number

The potential score the tag applies to.

normalizedScore

number

The normalized score the tag applies to.

ScoreSource

A scorecard result may have multiple sets of scores from varying sources, one of which becomes the "main" answer above. A ScoreSource represents each individual set of scores.

JSON representation
{
  "sourceType": enum (SourceType),
  "score": number,
  "potentialScore": number,
  "normalizedScore": number,
  "qaTagResults": [
    {
      object (QaTagResult)
    }
  ]
}
Fields
sourceType

enum (SourceType)

What created the score.

score

number

The overall numerical score of the result.

potentialScore

number

The maximum potential overall score of the scorecard. Any questions answered using naValue are excluded from this calculation.

normalizedScore

number

The normalized score, which is the score divided by the potential score.

qaTagResults[]

object (QaTagResult)

Collection of tags and their scores.