Merge remote-tracking branch 'origin/main' into fix/org-scoped-access

# Conflicts:
#	api/routes/agent_stream.py
#	api/routes/telephony.py
#	api/routes/webrtc_signaling.py
#	docs/api-reference/openapi.json
#	sdk/python/src/dograh_sdk/_generated_models.py
This commit is contained in:
Abhishek Kumar 2026-07-09 18:38:40 +05:30
commit d22c073cb5
38 changed files with 2332 additions and 471 deletions

View file

@ -1,6 +1,6 @@
# generated by datamodel-codegen:
# filename: dograh-openapi-XXXXXX.json.CHS3ih7PBx
# timestamp: 2026-07-09T11:09:01+00:00
# filename: dograh-openapi-XXXXXX.json.XNTNNgR8o4
# timestamp: 2026-07-09T13:05:30+00:00
from __future__ import annotations
@ -10,6 +10,14 @@ from typing import Annotated, Any, Literal
from pydantic import AwareDatetime, BaseModel, ConfigDict, Field, RootModel
class AmbientNoiseConfigurationDefaults(BaseModel):
model_config = ConfigDict(
extra='allow',
)
enabled: Annotated[bool | None, Field(title='Enabled')] = False
volume: Annotated[float | None, Field(title='Volume')] = 0.3
class CalculatorToolDefinition(BaseModel):
"""
Tool definition for Calculator tools.
@ -582,19 +590,6 @@ class TransferCallToolDefinition(BaseModel):
"""
class UpdateWorkflowRequest(BaseModel):
name: Annotated[str | None, Field(title='Name')] = None
workflow_definition: Annotated[
dict[str, Any] | None, Field(title='Workflow Definition')
] = None
template_context_variables: Annotated[
dict[str, Any] | None, Field(title='Template Context Variables')
] = None
workflow_configurations: Annotated[
dict[str, Any] | None, Field(title='Workflow Configurations')
] = None
class ValidationError(BaseModel):
loc: Annotated[list[str | int], Field(title='Location')]
msg: Annotated[str, Field(title='Message')]
@ -603,6 +598,47 @@ class ValidationError(BaseModel):
ctx: Annotated[dict[str, Any] | None, Field(title='Context')] = None
class TurnStartStrategy(Enum):
default = 'default'
min_words = 'min_words'
provisional_vad = 'provisional_vad'
class TurnStopStrategy(Enum):
transcription = 'transcription'
turn_analyzer = 'turn_analyzer'
class WorkflowConfigurationDefaults(BaseModel):
model_config = ConfigDict(
extra='allow',
)
ambient_noise_configuration: AmbientNoiseConfigurationDefaults | None = None
max_call_duration: Annotated[
int | None, Field(gt=0, le=1200, title='Max Call Duration')
] = 300
max_user_idle_timeout: Annotated[
float | None, Field(title='Max User Idle Timeout')
] = 10.0
smart_turn_stop_secs: Annotated[
float | None, Field(title='Smart Turn Stop Secs')
] = 2.0
turn_start_strategy: Annotated[
TurnStartStrategy | None, Field(title='Turn Start Strategy')
] = 'default'
turn_start_min_words: Annotated[int | None, Field(title='Turn Start Min Words')] = 3
provisional_vad_pause_secs: Annotated[
float | None, Field(title='Provisional Vad Pause Secs')
] = 1.5
turn_stop_strategy: Annotated[
TurnStopStrategy | None, Field(title='Turn Stop Strategy')
] = 'transcription'
dictionary: Annotated[str | None, Field(title='Dictionary')] = ''
context_compaction_enabled: Annotated[
bool | None, Field(title='Context Compaction Enabled')
] = False
class WorkflowListResponse(BaseModel):
"""
Lightweight response for workflow listings (excludes large fields).
@ -778,6 +814,17 @@ class RecordingListResponseSchema(BaseModel):
total: Annotated[int, Field(title='Total')]
class UpdateWorkflowRequest(BaseModel):
name: Annotated[str | None, Field(title='Name')] = None
workflow_definition: Annotated[
dict[str, Any] | None, Field(title='Workflow Definition')
] = None
template_context_variables: Annotated[
dict[str, Any] | None, Field(title='Template Context Variables')
] = None
workflow_configurations: WorkflowConfigurationDefaults | None = None
class CreateToolRequest(BaseModel):
"""
Request schema for creating a reusable tool.

View file

@ -272,6 +272,21 @@ export interface paths {
export type webhooks = Record<string, never>;
export interface components {
schemas: {
/** AmbientNoiseConfigurationDefaults */
AmbientNoiseConfigurationDefaults: {
/**
* Enabled
* @default false
*/
enabled: boolean;
/**
* Volume
* @default 0.3
*/
volume: number;
} & {
[key: string]: unknown;
};
/**
* CalculatorToolDefinition
* @description Tool definition for Calculator tools.
@ -1079,10 +1094,7 @@ export interface components {
template_context_variables?: {
[key: string]: unknown;
} | null;
/** Workflow Configurations */
workflow_configurations?: {
[key: string]: unknown;
} | null;
workflow_configurations?: components["schemas"]["WorkflowConfigurationDefaults"] | null;
};
/** ValidationError */
ValidationError: {
@ -1097,6 +1109,59 @@ export interface components {
/** Context */
ctx?: Record<string, never>;
};
/** WorkflowConfigurationDefaults */
WorkflowConfigurationDefaults: {
ambient_noise_configuration?: components["schemas"]["AmbientNoiseConfigurationDefaults"];
/**
* Max Call Duration
* @default 300
*/
max_call_duration: number;
/**
* Max User Idle Timeout
* @default 10
*/
max_user_idle_timeout: number;
/**
* Smart Turn Stop Secs
* @default 2
*/
smart_turn_stop_secs: number;
/**
* Turn Start Strategy
* @default default
* @enum {string}
*/
turn_start_strategy: "default" | "min_words" | "provisional_vad";
/**
* Turn Start Min Words
* @default 3
*/
turn_start_min_words: number;
/**
* Provisional Vad Pause Secs
* @default 1.5
*/
provisional_vad_pause_secs: number;
/**
* Turn Stop Strategy
* @default transcription
* @enum {string}
*/
turn_stop_strategy: "transcription" | "turn_analyzer";
/**
* Dictionary
* @default
*/
dictionary: string;
/**
* Context Compaction Enabled
* @default false
*/
context_compaction_enabled: boolean;
} & {
[key: string]: unknown;
};
/**
* WorkflowListResponse
* @description Lightweight response for workflow listings (excludes large fields).
@ -1164,6 +1229,7 @@ export interface components {
headers: never;
pathItems: never;
}
export type AmbientNoiseConfigurationDefaults = components['schemas']['AmbientNoiseConfigurationDefaults'];
export type CalculatorToolDefinition = components['schemas']['CalculatorToolDefinition'];
export type CallDispositionCodes = components['schemas']['CallDispositionCodes'];
export type CreateToolRequest = components['schemas']['CreateToolRequest'];
@ -1201,6 +1267,7 @@ export type TransferCallConfig = components['schemas']['TransferCallConfig'];
export type TransferCallToolDefinition = components['schemas']['TransferCallToolDefinition'];
export type UpdateWorkflowRequest = components['schemas']['UpdateWorkflowRequest'];
export type ValidationError = components['schemas']['ValidationError'];
export type WorkflowConfigurationDefaults = components['schemas']['WorkflowConfigurationDefaults'];
export type WorkflowListResponse = components['schemas']['WorkflowListResponse'];
export type WorkflowResponse = components['schemas']['WorkflowResponse'];
export type $defs = Record<string, never>;