{
  "openapi": "3.0.1",
  "info": {
    "title": "Mpathic API",
    "version": "v1"
  },
  "paths": {
    "/v1/behaviors": {
      "post": {
        "tags": [
          "Behaviors"
        ],
        "summary": "Detects behaviors in an input string.",
        "parameters": [
          {
            "name": "mpathic-id",
            "in": "header",
            "description": "Required. The mpathic ID for the request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mpathic-profile",
            "in": "header",
            "description": "Optional. The profile ID for the request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The BehaviorsRequest that provides the input string and detection parameters.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BehaviorsRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BehaviorsResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ]
      }
    },
    "/v1/conversations": {
      "post": {
        "tags": [
          "Conversations"
        ],
        "summary": "Provides analytics for conversations.",
        "parameters": [
          {
            "name": "mpathic-id",
            "in": "header",
            "description": "Required. The mpathic ID for the request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mpathic-profile",
            "in": "header",
            "description": "Optional. The profile ID for the request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The ConversationsRequest that provides the conversation details.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConversationsRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConversationsResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ]
      }
    },
    "/v1/conversations/update-metadata": {
      "post": {
        "tags": [
          "Conversations"
        ],
        "operationId": "update-conversation-metadata",
        "parameters": [
          {
            "name": "mpathic-id",
            "in": "header",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mpathic-profile",
            "in": "header",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateConversationMetadataRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success"
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ]
      }
    },
    "/v1/conversations/jobs": {
      "post": {
        "tags": [
          "ConversationsJobs"
        ],
        "summary": "Starts a conversations job.",
        "parameters": [
          {
            "name": "mpathic-id",
            "in": "header",
            "description": "Required. The mpathic ID for the request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mpathic-profile",
            "in": "header",
            "description": "Optional. The profile ID for the request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The ConversationsRequest that provides the conversation details.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConversationsRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConversationsJobStatus"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ]
      }
    },
    "/v1/conversations/jobs/{id}": {
      "get": {
        "tags": [
          "ConversationsJobs"
        ],
        "summary": "Get conversations job status.",
        "parameters": [
          {
            "name": "mpathic-id",
            "in": "header",
            "description": "Required. The mpathic ID for the request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mpathic-profile",
            "in": "header",
            "description": "Optional. The profile ID for the request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "Conversations job ID",
            "required": true,
            "style": "simple",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConversationsJobStatus"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ]
      }
    },
    "/v1/conversations/jobs/start-multipart": {
      "post": {
        "tags": [
          "ConversationsJobs"
        ],
        "parameters": [
          {
            "name": "mpathic-id",
            "in": "header",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mpathic-profile",
            "in": "header",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConversationsMultipartStartRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConversationsMultipartStartResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ]
      }
    },
    "/v1/conversations/jobs/{id}/complete-multipart": {
      "post": {
        "tags": [
          "ConversationsJobs"
        ],
        "parameters": [
          {
            "name": "mpathic-id",
            "in": "header",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mpathic-profile",
            "in": "header",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "style": "simple",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConversationsMultipartCompleteRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConversationsJobStatus"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ]
      }
    },
    "/v1/conversations/jobs/{id}/cancel-multipart": {
      "post": {
        "tags": [
          "ConversationsJobs"
        ],
        "parameters": [
          {
            "name": "mpathic-id",
            "in": "header",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mpathic-profile",
            "in": "header",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "style": "simple",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConversationsMultipartCancelRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConversationsJobStatus"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ]
      }
    },
    "/v1/files": {
      "post": {
        "tags": [
          "Files"
        ],
        "summary": "Uploads a multipart streamed file.",
        "parameters": [
          {
            "name": "mpathic-id",
            "in": "header",
            "description": "Required. The mpathic-id for the upload request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mpathic-profile",
            "in": "header",
            "description": "Optional. The mpathic-profile for the upload request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file_id": {
                    "type": "string",
                    "description": "Optional. The file_id for the request. If provided, it should be a UUID as specified by RFC 4122."
                  },
                  "user_metadata": {
                    "type": "string",
                    "description": "The user_metadata for the request, which should be a valid JSON document."
                  }
                }
              },
              "encoding": {
                "file_id": {
                  "style": "form"
                },
                "user_metadata": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FileUploadResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ]
      }
    },
    "/v1/files/zoom": {
      "post": {
        "tags": [
          "Files"
        ],
        "summary": "Imports a recording from Zoom and uploads it as a file.",
        "parameters": [
          {
            "name": "mpathic-id",
            "in": "header",
            "description": "Required. The mpathic-id for the upload request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mpathic-profile",
            "in": "header",
            "description": "Optional. The mpathic-profile for the upload request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The Zoom import request containing the recording details.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ZoomImportRecordingRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ZoomImportRecordingRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ZoomImportRecordingRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ZoomImportRecordingResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ]
      }
    },
    "/v1/profile": {
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "Provides information about your default or specified mpathic profile.",
        "parameters": [
          {
            "name": "mpathic-id",
            "in": "header",
            "description": "Required. The mpathic ID for the request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mpathic-profile",
            "in": "header",
            "description": "Optional. The profile ID for the request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Optional. Filters for the profile request.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProfileRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProfileResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ]
      }
    },
    "/v1/token": {
      "post": {
        "tags": [
          "Token"
        ],
        "summary": "Gets an authorization bearer token for the specified credentials.",
        "parameters": [
          {
            "name": "mpathic-id",
            "in": "header",
            "description": "Required. The mpathic ID for the request.",
            "style": "simple",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The TokenRequest that provides the information required to obtain a token.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TokenRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Analytics": {
        "type": "object",
        "properties": {
          "utterance_count": {
            "type": "integer",
            "format": "int32"
          },
          "talk_turn_count": {
            "type": "integer",
            "format": "int32"
          },
          "behavior_counts": {
            "type": "object",
            "additionalProperties": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            },
            "nullable": true
          },
          "frequencies": {
            "type": "object",
            "additionalProperties": {
              "type": "number",
              "format": "double",
              "nullable": true
            },
            "nullable": true
          },
          "metrics": {
            "$ref": "#/components/schemas/MetricsResponse"
          }
        },
        "additionalProperties": false
      },
      "AnalyzedConversation": {
        "type": "object",
        "properties": {
          "talk_turns": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AnalyzedTalkTurn"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AnalyzedTalkTurn": {
        "required": [
          "input"
        ],
        "type": "object",
        "properties": {
          "input": {
            "minLength": 1,
            "type": "string"
          },
          "talk_turn_id": {
            "type": "string",
            "nullable": true
          },
          "speaker": {
            "$ref": "#/components/schemas/ConversationSpeaker"
          },
          "start_time": {
            "type": "string",
            "nullable": true
          },
          "end_time": {
            "type": "string",
            "nullable": true
          },
          "index": {
            "type": "integer",
            "format": "int32"
          },
          "behavior_detections": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BehaviorsDetection"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Behavior": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "confidence": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "definition": {
            "type": "string",
            "nullable": true
          },
          "score": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "severity": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "suggestion": {
            "$ref": "#/components/schemas/BehaviorSuggestion"
          },
          "tip": {
            "$ref": "#/components/schemas/BehaviorTip"
          }
        },
        "additionalProperties": false
      },
      "BehaviorCalculation": {
        "type": "object",
        "properties": {
          "contributing_behaviors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BehaviorStats"
            },
            "nullable": true
          },
          "score": {
            "type": "number",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "BehaviorDescription": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "definition": {
            "type": "string",
            "nullable": true
          },
          "category": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "BehaviorStats": {
        "type": "object",
        "properties": {
          "behavior": {
            "type": "string",
            "nullable": true
          },
          "count": {
            "type": "integer",
            "format": "int32"
          },
          "weight_on_score": {
            "type": "number",
            "format": "double"
          },
          "influence_on_score": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "BehaviorSuggestion": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "nullable": true
          },
          "suggestion_type": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "BehaviorTip": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "nullable": true
          },
          "tip_type": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "BehaviorsDetection": {
        "type": "object",
        "properties": {
          "index": {
            "type": "integer",
            "format": "int32"
          },
          "text": {
            "type": "string",
            "nullable": true
          },
          "behaviors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Behavior"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "BehaviorsRequest": {
        "required": [
          "input"
        ],
        "type": "object",
        "properties": {
          "user_metadata": {
            "nullable": true
          },
          "confidence_threshold": {
            "type": "number",
            "description": "The confidence threshold for behaviors.",
            "format": "double",
            "nullable": true,
            "example": 0.5
          },
          "conversation_id": {
            "type": "string",
            "description": "The unique identifier for the conversation associated with this behaviors request, if any.",
            "nullable": true
          },
          "include_suggestions": {
            "type": "boolean",
            "description": "Indicates whether suggestions should be included for the detected behaviors.",
            "example": false
          },
          "include_tips": {
            "type": "boolean",
            "description": "Indicates whether tips should be included for the detected behaviors.",
            "example": true
          },
          "include_definitions": {
            "type": "boolean",
            "description": "Indicates whether definitions should be included for the detected behaviors.",
            "example": false
          },
          "input": {
            "minLength": 1,
            "type": "string",
            "description": "The input string to for which to detect behaviors.",
            "example": "Have you completed the document for our meeting?"
          },
          "max_behaviors": {
            "type": "integer",
            "description": "The maximum number of behaviors to return for each utterance in the input.",
            "format": "int32",
            "nullable": true,
            "example": 2
          }
        },
        "additionalProperties": false,
        "description": "Represents a request to detect behaviors in an input string."
      },
      "BehaviorsResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "user_metadata": {
            "nullable": true
          },
          "api_version": {
            "type": "string",
            "nullable": true
          },
          "created_at": {
            "type": "integer",
            "description": "The time the response was created, expressed as the number of seconds that have elapsed since 1970-01-01T00:00:00Z.",
            "format": "int64"
          },
          "detections": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BehaviorsDetection"
            },
            "description": "The behaviors detected for the input text.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a response to a BehaviorsRequest."
      },
      "ConversationAnalytics": {
        "type": "object",
        "properties": {
          "utterance_count": {
            "type": "integer",
            "format": "int32"
          },
          "talk_turn_count": {
            "type": "integer",
            "format": "int32"
          },
          "behavior_counts": {
            "type": "object",
            "additionalProperties": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            },
            "nullable": true
          },
          "frequencies": {
            "type": "object",
            "additionalProperties": {
              "type": "number",
              "format": "double",
              "nullable": true
            },
            "nullable": true
          },
          "metrics": {
            "$ref": "#/components/schemas/MetricsResponse"
          },
          "action_items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "fidelity": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "checklist": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "highlights": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "lowlights": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "safety": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ConversationAnalyticsSummary": {
        "type": "object",
        "properties": {
          "speaker_analytics": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SpeakerAnalytics"
            },
            "nullable": true
          },
          "role_analytics": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RoleAnalytics"
            },
            "nullable": true
          },
          "conversation_analytics": {
            "$ref": "#/components/schemas/ConversationAnalytics"
          },
          "synchrony_scores": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Synchrony"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ConversationDetection": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true,
            "deprecated": true
          },
          "detection_id": {
            "type": "string",
            "nullable": true
          },
          "pattern_detector_id": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "definition": {
            "type": "string",
            "nullable": true
          },
          "display_order": {
            "type": "integer",
            "format": "int32"
          },
          "tip": {
            "type": "string",
            "nullable": true
          },
          "example": {
            "type": "string",
            "nullable": true
          },
          "behaviors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/ConversationDetectionStatus"
          },
          "reason": {
            "$ref": "#/components/schemas/ConversationDetectionReason"
          },
          "talk_turns": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TalkTurnReference"
            },
            "nullable": true
          },
          "approval_status_name": {
            "type": "string",
            "nullable": true
          },
          "can_approve": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ConversationDetectionReason": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8
        ],
        "type": "integer",
        "format": "int32"
      },
      "ConversationDetectionStatus": {
        "enum": [
          0,
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "ConversationSpeaker": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "minLength": 1,
            "type": "string"
          },
          "role": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ConversationTalkTurn": {
        "required": [
          "input"
        ],
        "type": "object",
        "properties": {
          "input": {
            "minLength": 1,
            "type": "string"
          },
          "talk_turn_id": {
            "type": "string",
            "nullable": true
          },
          "speaker": {
            "$ref": "#/components/schemas/ConversationSpeaker"
          },
          "start_time": {
            "type": "string",
            "nullable": true
          },
          "end_time": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ConversationsJobStatus": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "user_metadata": {
            "nullable": true
          },
          "api_version": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "conversations_response": {
            "$ref": "#/components/schemas/ConversationsResponse"
          },
          "upload": {
            "$ref": "#/components/schemas/ConversationsMultipartUpload"
          }
        },
        "additionalProperties": false
      },
      "ConversationsMultipartCancelRequest": {
        "type": "object",
        "properties": {
          "user_metadata": {
            "nullable": true
          },
          "reason": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ConversationsMultipartCompletePart": {
        "required": [
          "etag",
          "part_number"
        ],
        "type": "object",
        "properties": {
          "part_number": {
            "type": "integer",
            "format": "int32"
          },
          "etag": {
            "minLength": 1,
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "ConversationsMultipartCompleteRequest": {
        "type": "object",
        "properties": {
          "user_metadata": {
            "nullable": true
          },
          "parts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationsMultipartCompletePart"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ConversationsMultipartStartRequest": {
        "required": [
          "content_type",
          "file_name",
          "file_size_bytes"
        ],
        "type": "object",
        "properties": {
          "user_metadata": {
            "nullable": true
          },
          "file_name": {
            "minLength": 1,
            "type": "string"
          },
          "file_size_bytes": {
            "type": "integer",
            "format": "int64"
          },
          "content_type": {
            "minLength": 1,
            "type": "string"
          },
          "preferred_part_size_bytes": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ConversationsMultipartStartResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "user_metadata": {
            "nullable": true
          },
          "api_version": {
            "type": "string",
            "nullable": true
          },
          "conversation_id": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "upload": {
            "$ref": "#/components/schemas/ConversationsMultipartUpload"
          }
        },
        "additionalProperties": false
      },
      "ConversationsMultipartUpload": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "part_size_bytes": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "part_count": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "urls_expire_at": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "parts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationsMultipartUploadPart"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ConversationsMultipartUploadPart": {
        "type": "object",
        "properties": {
          "part_number": {
            "type": "integer",
            "format": "int32"
          },
          "url": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ConversationsRequest": {
        "required": [
          "talk_turns"
        ],
        "type": "object",
        "properties": {
          "user_metadata": {
            "nullable": true
          },
          "conversation_id": {
            "type": "string",
            "nullable": true
          },
          "confidence_threshold": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "include_conversation": {
            "type": "boolean"
          },
          "include_suggestions": {
            "type": "boolean"
          },
          "include_tips": {
            "type": "boolean"
          },
          "include_definitions": {
            "type": "boolean"
          },
          "include_diagnostics": {
            "type": "boolean"
          },
          "max_behaviors": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "talk_turns": {
            "minItems": 1,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationTalkTurn"
            }
          }
        },
        "additionalProperties": false
      },
      "ConversationsResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "user_metadata": {
            "nullable": true
          },
          "api_version": {
            "type": "string",
            "nullable": true
          },
          "conversation_id": {
            "type": "string",
            "nullable": true
          },
          "created_at": {
            "type": "integer",
            "format": "int64"
          },
          "analytics": {
            "$ref": "#/components/schemas/ConversationAnalyticsSummary"
          },
          "conversation": {
            "$ref": "#/components/schemas/AnalyzedConversation"
          }
        },
        "additionalProperties": false
      },
      "FileUploadResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "user_metadata": {
            "nullable": true
          },
          "api_version": {
            "type": "string",
            "nullable": true
          },
          "file_id": {
            "type": "string",
            "description": "The file ID for the uploaded file.",
            "nullable": true
          },
          "message": {
            "type": "string",
            "description": "The message associated with the upload operation, if any.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents the response from a file upload request."
      },
      "MetricsResponse": {
        "type": "object",
        "properties": {
          "collaboration": {
            "$ref": "#/components/schemas/BehaviorCalculation"
          },
          "curiosity": {
            "$ref": "#/components/schemas/BehaviorCalculation"
          },
          "empathy": {
            "$ref": "#/components/schemas/BehaviorCalculation"
          },
          "metric_groups": {
            "type": "object",
            "additionalProperties": {
              "type": "object",
              "additionalProperties": {
                "$ref": "#/components/schemas/BehaviorCalculation"
              }
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "ProfileRequest": {
        "type": "object",
        "properties": {
          "user_metadata": {
            "nullable": true
          },
          "role": {
            "type": "string",
            "description": "Optional role for determining active behaviors.",
            "nullable": true
          },
          "metadata": {
            "description": "Optional metadata for determining active behaviors.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a request for profile information."
      },
      "ProfileResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "user_metadata": {
            "nullable": true
          },
          "api_version": {
            "type": "string",
            "nullable": true
          },
          "created_at": {
            "type": "integer",
            "description": "The time the response was created, expressed as the number of seconds that have elapsed since 1970-01-01T00:00:00Z.",
            "format": "int64"
          },
          "allow_suggestions": {
            "type": "boolean",
            "nullable": true
          },
          "allow_tips": {
            "type": "boolean",
            "nullable": true
          },
          "behaviors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BehaviorDescription"
            },
            "nullable": true
          },
          "profile_id": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a response to a ProfileRequest."
      },
      "RoleAnalytics": {
        "type": "object",
        "properties": {
          "role": {
            "type": "string",
            "nullable": true
          },
          "analytics": {
            "$ref": "#/components/schemas/Analytics"
          },
          "action_items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "fidelity": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "checklist": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "highlights": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "lowlights": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "safety": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SpeakerAnalytics": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "role": {
            "type": "string",
            "nullable": true
          },
          "analytics": {
            "$ref": "#/components/schemas/Analytics"
          },
          "action_items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "fidelity": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "checklist": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "highlights": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "lowlights": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          },
          "safety": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversationDetection"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Synchrony": {
        "type": "object",
        "properties": {
          "calculation_type": {
            "type": "string",
            "nullable": true
          },
          "identifier_one": {
            "type": "string",
            "nullable": true
          },
          "identifier_two": {
            "type": "string",
            "nullable": true
          },
          "synchrony_score": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "reason": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TalkTurnReference": {
        "type": "object",
        "properties": {
          "index": {
            "type": "integer",
            "format": "int32"
          },
          "talk_turn_id": {
            "type": "string",
            "nullable": true
          },
          "start_time": {
            "type": "string",
            "nullable": true
          },
          "end_time": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TokenRequest": {
        "required": [
          "client_id",
          "client_secret",
          "grant_type"
        ],
        "type": "object",
        "properties": {
          "user_metadata": {
            "nullable": true
          },
          "grant_type": {
            "minLength": 1,
            "type": "string",
            "description": "The grant type being requested.",
            "example": "client_credentials"
          },
          "client_id": {
            "minLength": 1,
            "type": "string",
            "description": "The client ID for the token request.",
            "example": "..."
          },
          "client_secret": {
            "minLength": 1,
            "type": "string",
            "description": "The client secret for the token request.",
            "example": "..."
          }
        },
        "additionalProperties": false,
        "description": "Represents a request for an authorization token to use with the API."
      },
      "TokenResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "user_metadata": {
            "nullable": true
          },
          "api_version": {
            "type": "string",
            "nullable": true
          },
          "access_token": {
            "type": "string",
            "description": "The access token that can be used as a Authorization Bearer token for API requests.",
            "nullable": true
          },
          "expires_in": {
            "type": "integer",
            "description": "The number of seconds until the token expires.",
            "format": "int32",
            "nullable": true
          },
          "token_type": {
            "type": "string",
            "description": "The type of token that has been provided.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a response to a TokenRequest."
      },
      "UpdateConversationMetadataRequest": {
        "type": "object",
        "properties": {
          "conversation_id": {
            "type": "string",
            "format": "uuid"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "nullable": true
          },
          "merge_existing": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "ZoomImportRecordingRequest": {
        "type": "object",
        "properties": {
          "credentials_id": {
            "type": "string",
            "description": "The Zoom credentials ID to use for the import.",
            "nullable": true
          },
          "meeting_id": {
            "type": "string",
            "description": "The Zoom meeting ID.",
            "nullable": true
          },
          "recording_file_id": {
            "type": "string",
            "description": "The Zoom recording file ID.",
            "nullable": true
          },
          "user_metadata": {
            "description": "Optional user metadata for the file.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a request to import a recording from Zoom."
      },
      "ZoomImportRecordingResponse": {
        "type": "object",
        "properties": {
          "file_id": {
            "type": "string",
            "description": "The file ID for the imported file.",
            "nullable": true
          },
          "message": {
            "type": "string",
            "description": "The message associated with the import operation, if any.",
            "nullable": true
          },
          "user_metadata": {
            "description": "The user metadata associated with the file, if any.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents the response from a Zoom recording import request."
      }
    },
    "securitySchemes": {
      "bearer": {
        "type": "http",
        "description": "JWT Authorization header using the Bearer scheme.",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    }
  }
}