{"components":{"schemas":{"AIAgentComponentStatus":{"properties":{"checked_at":{"format":"date-time","title":"Checked At","type":"string"},"detail":{"title":"Detail","type":"string"},"status":{"enum":["healthy","degraded","not_deployed","unknown"],"title":"Status","type":"string"}},"required":["status","detail","checked_at"],"title":"AIAgentComponentStatus","type":"object"},"AIAgentConversation":{"properties":{"conversation_id":{"title":"Conversation Id","type":"string"},"first_message_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"First Message At"},"last_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Message"},"last_message_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Last Message At"},"last_tool_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Tool Name"},"tool_calls_count":{"title":"Tool Calls Count","type":"integer"},"user_id":{"title":"User Id","type":"string"}},"required":["conversation_id","user_id","first_message_at","last_message_at","tool_calls_count"],"title":"AIAgentConversation","type":"object"},"AIAgentConversationResponse":{"properties":{"has_more":{"title":"Has More","type":"boolean"},"items":{"items":{"$ref":"#/components/schemas/AIAgentConversation"},"title":"Items","type":"array"},"total":{"title":"Total","type":"integer"}},"required":["items","total","has_more"],"title":"AIAgentConversationResponse","type":"object"},"AIAgentStatus":{"properties":{"agentcore":{"$ref":"#/components/schemas/AIAgentComponentStatus"},"last_activity_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Last Activity At"},"mcp_bridge":{"$ref":"#/components/schemas/AIAgentComponentStatus"}},"required":["agentcore","mcp_bridge","last_activity_at"],"title":"AIAgentStatus","type":"object"},"AccessPolicyCreate":{"properties":{"action":{"default":"allow","enum":["allow","block","surcharge"],"title":"Action","type":"string"},"default_action":{"default":"block","enum":["allow","block"],"title":"Default Action","type":"string"},"destination_group_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Group Id"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"surcharge_pct":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Surcharge Pct"}},"required":["name"],"title":"AccessPolicyCreate","type":"object"},"AccessPolicyOut":{"properties":{"action":{"default":"allow","enum":["allow","block","surcharge"],"title":"Action","type":"string"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"default_action":{"default":"block","enum":["allow","block"],"title":"Default Action","type":"string"},"destination_group_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Group Id"},"id":{"title":"Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"surcharge_pct":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Surcharge Pct"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["name","id","created_at","updated_at"],"title":"AccessPolicyOut","type":"object"},"AccessPolicyUpdate":{"properties":{"action":{"anyOf":[{"enum":["allow","block","surcharge"],"type":"string"},{"type":"null"}],"title":"Action"},"default_action":{"anyOf":[{"enum":["allow","block"],"type":"string"},{"type":"null"}],"title":"Default Action"},"destination_group_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Group Id"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"surcharge_pct":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Surcharge Pct"}},"title":"AccessPolicyUpdate","type":"object"},"AccountCreate":{"properties":{"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"display_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Display Name"},"email":{"format":"email","title":"Email","type":"string"},"full_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Full Name"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"locale":{"anyOf":[{"maxLength":16,"type":"string"},{"type":"null"}],"default":"it","title":"Locale"},"role":{"anyOf":[{"enum":["super_admin","admin","operator","noc","finance","agent","sales","customer_admin","customer_user","customer_viewer"],"type":"string"},{"type":"null"}],"title":"Role"},"role_name":{"anyOf":[{"enum":["super_admin","admin","operator","noc","finance","agent","sales","customer_admin","customer_user","customer_viewer"],"type":"string"},{"type":"null"}],"title":"Role Name"},"timezone":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":"Europe/Rome","title":"Timezone"}},"required":["email"],"title":"AccountCreate","type":"object"},"AccountOut":{"properties":{"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"deleted_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Deleted At"},"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Name"},"email":{"anyOf":[{"format":"email","type":"string"},{"type":"null"}],"title":"Email"},"full_name":{"anyOf":[{"type":"string"},{"type":"null"}],"readOnly":true,"title":"Full Name"},"id":{"title":"Id","type":"integer"},"is_active":{"title":"Is Active","type":"boolean"},"last_login_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Last Login At"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale"},"locked_until":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Locked Until"},"mfa_enabled":{"readOnly":true,"title":"Mfa Enabled","type":"boolean"},"mfa_enrolled_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Mfa Enrolled At"},"role":{"title":"Role","type":"string"},"role_name":{"readOnly":true,"title":"Role Name","type":"string"},"timezone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Timezone"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"},"username":{"title":"Username","type":"string"}},"required":["id","username","email","role","is_active","created_at","updated_at","full_name","role_name","mfa_enabled"],"title":"AccountOut","type":"object"},"AccountUpdate":{"properties":{"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"display_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Display Name"},"email":{"anyOf":[{"format":"email","type":"string"},{"type":"null"}],"title":"Email"},"full_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Full Name"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"locale":{"anyOf":[{"maxLength":16,"type":"string"},{"type":"null"}],"title":"Locale"},"role":{"anyOf":[{"enum":["super_admin","admin","operator","noc","finance","agent","sales","customer_admin","customer_user","customer_viewer"],"type":"string"},{"type":"null"}],"title":"Role"},"role_name":{"anyOf":[{"enum":["super_admin","admin","operator","noc","finance","agent","sales","customer_admin","customer_user","customer_viewer"],"type":"string"},{"type":"null"}],"title":"Role Name"},"timezone":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Timezone"}},"title":"AccountUpdate","type":"object"},"ActiveCallRow":{"properties":{"answered_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Answered At"},"call_id":{"title":"Call Id","type":"string"},"codec":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Codec"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"dst":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Dst"},"dst_country":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Dst Country"},"duration_sec":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Duration Sec"},"kamailio_host":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kamailio Host"},"originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"},"pdd_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pdd Ms"},"sip_response_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Sip Response Code"},"src":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Src"},"src_country":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Src Country"},"started_at":{"format":"date-time","title":"Started At","type":"string"},"terminator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"}},"required":["call_id","started_at"],"title":"ActiveCallRow","type":"object"},"ActiveCallsResponse":{"properties":{"items":{"items":{"$ref":"#/components/schemas/ActiveCallRow"},"title":"Items","type":"array"},"limit":{"title":"Limit","type":"integer"},"offset":{"title":"Offset","type":"integer"},"total":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Total"}},"required":["items","total","limit","offset"],"title":"ActiveCallsResponse","type":"object"},"AdminServerOut":{"properties":{"external_ip":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"External Ip"},"hostname":{"maxLength":255,"minLength":1,"title":"Hostname","type":"string"},"internal_ip":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Internal Ip"},"load":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Load"},"role":{"maxLength":64,"minLength":1,"title":"Role","type":"string"},"status":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Status"},"type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Type"}},"required":["hostname","role"],"title":"AdminServerOut","type":"object"},"AdminSystemSettingsAlerts":{"properties":{"low_balance_alert_enabled":{"default":true,"title":"Low Balance Alert Enabled","type":"boolean"},"low_balance_threshold_eur":{"default":100,"minimum":0.0,"title":"Low Balance Threshold Eur","type":"number"},"telegram_alerts_enabled":{"default":false,"title":"Telegram Alerts Enabled","type":"boolean"},"telegram_chat_id":{"default":"","title":"Telegram Chat Id","type":"string"}},"title":"AdminSystemSettingsAlerts","type":"object"},"AdminSystemSettingsBilling":{"properties":{"billing_cycle":{"default":"monthly","enum":["monthly","weekly","daily"],"title":"Billing Cycle","type":"string"}},"title":"AdminSystemSettingsBilling","type":"object"},"AdminSystemSettingsGeneral":{"properties":{"default_currency":{"default":"EUR","maxLength":3,"minLength":3,"title":"Default Currency","type":"string"},"default_timezone":{"default":"Europe/Rome","minLength":1,"title":"Default Timezone","type":"string"},"platform_name":{"default":"Akira","maxLength":60,"minLength":1,"title":"Platform Name","type":"string"},"registrar_host":{"default":"","title":"Registrar Host","type":"string"},"sip_domain":{"default":"","title":"Sip Domain","type":"string"}},"title":"AdminSystemSettingsGeneral","type":"object"},"AdminSystemSettingsLimits":{"properties":{"cdr_retention_days":{"default":365,"maximum":3650.0,"minimum":1.0,"title":"Cdr Retention Days","type":"integer"},"max_concurrent_calls":{"default":0,"minimum":0.0,"title":"Max Concurrent Calls","type":"integer"}},"title":"AdminSystemSettingsLimits","type":"object"},"AdminSystemSettingsOut":{"properties":{"alerts":{"$ref":"#/components/schemas/AdminSystemSettingsAlerts"},"billing":{"$ref":"#/components/schemas/AdminSystemSettingsBilling"},"general":{"$ref":"#/components/schemas/AdminSystemSettingsGeneral"},"limits":{"$ref":"#/components/schemas/AdminSystemSettingsLimits"}},"title":"AdminSystemSettingsOut","type":"object"},"AgentCommissionComputeIn":{"properties":{"period_end":{"format":"date","title":"Period End","type":"string"},"period_start":{"format":"date","title":"Period Start","type":"string"},"persist":{"default":true,"title":"Persist","type":"boolean"}},"required":["period_start","period_end"],"title":"AgentCommissionComputeIn","type":"object"},"AgentCommissionOut":{"properties":{"agent_id":{"title":"Agent Id","type":"integer"},"commission_amount":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Commission Amount","type":"string"},"companies_managed":{"title":"Companies Managed","type":"integer"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"id":{"title":"Id","type":"integer"},"paid_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Paid At"},"period_end":{"format":"date","title":"Period End","type":"string"},"period_start":{"format":"date","title":"Period Start","type":"string"},"status":{"enum":["pending","approved","paid","disputed"],"title":"Status","type":"string"},"total_revenue":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Total Revenue","type":"string"}},"required":["id","agent_id","period_start","period_end","companies_managed","total_revenue","commission_amount","status","paid_at","created_at"],"title":"AgentCommissionOut","type":"object"},"AgentCommissionReportRow":{"properties":{"agent_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Code"},"agent_id":{"title":"Agent Id","type":"integer"},"agent_name":{"title":"Agent Name","type":"string"},"commission_amount":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Commission Amount","type":"string"},"companies_managed":{"title":"Companies Managed","type":"integer"},"period_end":{"format":"date","title":"Period End","type":"string"},"period_start":{"format":"date","title":"Period Start","type":"string"},"status":{"enum":["pending","approved","paid","disputed"],"title":"Status","type":"string"},"total_revenue":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Total Revenue","type":"string"}},"required":["agent_id","agent_code","agent_name","period_start","period_end","companies_managed","total_revenue","commission_amount","status"],"title":"AgentCommissionReportRow","type":"object"},"AgentCommissionStatusIn":{"properties":{"status":{"enum":["pending","approved","paid","disputed"],"title":"Status","type":"string"}},"required":["status"],"title":"AgentCommissionStatusIn","type":"object"},"AgentCreate":{"properties":{"active":{"default":true,"title":"Active","type":"boolean"},"code":{"anyOf":[{"maxLength":50,"minLength":1,"type":"string"},{"type":"null"}],"title":"Code"},"commission_fee_rules":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Commission Fee Rules"},"commission_percent":{"anyOf":[{"maximum":100.0,"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,3}|(?=[\\d.]{1,6}0*$)\\d{0,3}\\.\\d{0,2}0*$)","type":"string"}],"default":"10.00","title":"Commission Percent"},"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"contact_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Contact Email"},"disabled_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Disabled At"},"email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Email"},"full_name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Full Name"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"payment_iban":{"anyOf":[{"maxLength":50,"type":"string"},{"type":"null"}],"title":"Payment Iban"},"phone":{"anyOf":[{"maxLength":50,"type":"string"},{"type":"null"}],"title":"Phone"},"vat_number":{"anyOf":[{"maxLength":50,"type":"string"},{"type":"null"}],"title":"Vat Number"}},"required":["name"],"title":"AgentCreate","type":"object"},"AgentFeeRuleCreate":{"properties":{"agent_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Agent Id"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"fee_per_minute":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,8}|(?=[\\d.]{1,15}0*$)\\d{0,8}\\.\\d{0,6}0*$)","type":"string"},{"type":"null"}],"title":"Fee Per Minute"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"percent_profit":{"anyOf":[{"maximum":1.0,"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,1}|(?=[\\d.]{1,6}0*$)\\d{0,1}\\.\\d{0,4}0*$)","type":"string"},{"type":"null"}],"title":"Percent Profit"},"valid_from":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid From"},"valid_to":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid To"}},"title":"AgentFeeRuleCreate","type":"object"},"AgentFeeRuleOut":{"properties":{"agent_id":{"title":"Agent Id","type":"integer"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"fee_per_minute":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,8}|(?=[\\d.]{1,15}0*$)\\d{0,8}\\.\\d{0,6}0*$)","type":"string"},{"type":"null"}],"title":"Fee Per Minute"},"id":{"title":"Id","type":"integer"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"percent_profit":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,1}|(?=[\\d.]{1,6}0*$)\\d{0,1}\\.\\d{0,4}0*$)","type":"string"},{"type":"null"}],"title":"Percent Profit"},"valid_from":{"format":"date-time","title":"Valid From","type":"string"},"valid_to":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid To"}},"required":["valid_from","id","agent_id","created_at"],"title":"AgentFeeRuleOut","type":"object"},"AgentFeeRuleUpdate":{"additionalProperties":false,"properties":{"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"fee_per_minute":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,8}|(?=[\\d.]{1,15}0*$)\\d{0,8}\\.\\d{0,6}0*$)","type":"string"},{"type":"null"}],"title":"Fee Per Minute"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"percent_profit":{"anyOf":[{"maximum":1.0,"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,1}|(?=[\\d.]{1,6}0*$)\\d{0,1}\\.\\d{0,4}0*$)","type":"string"},{"type":"null"}],"title":"Percent Profit"},"valid_from":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid From"},"valid_to":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid To"}},"title":"AgentFeeRuleUpdate","type":"object"},"AgentOut":{"properties":{"active":{"default":true,"title":"Active","type":"boolean"},"code":{"anyOf":[{"maxLength":50,"minLength":1,"type":"string"},{"type":"null"}],"title":"Code"},"commission_fee_rules":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Commission Fee Rules"},"commission_percent":{"default":"10.00","pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,3}|(?=[\\d.]{1,6}0*$)\\d{0,3}\\.\\d{0,2}0*$)","title":"Commission Percent","type":"string"},"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"contact_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Contact Email"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"disabled_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Disabled At"},"email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Email"},"full_name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Full Name"},"id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Id"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"payment_iban":{"anyOf":[{"maxLength":50,"type":"string"},{"type":"null"}],"title":"Payment Iban"},"phone":{"anyOf":[{"maxLength":50,"type":"string"},{"type":"null"}],"title":"Phone"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"},"vat_number":{"anyOf":[{"maxLength":50,"type":"string"},{"type":"null"}],"title":"Vat Number"}},"required":["name","created_at","updated_at"],"title":"AgentOut","type":"object"},"AgentUpdate":{"additionalProperties":false,"properties":{"active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Active"},"code":{"anyOf":[{"maxLength":50,"minLength":1,"type":"string"},{"type":"null"}],"title":"Code"},"commission_fee_rules":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Commission Fee Rules"},"commission_percent":{"anyOf":[{"maximum":100.0,"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,3}|(?=[\\d.]{1,6}0*$)\\d{0,3}\\.\\d{0,2}0*$)","type":"string"},{"type":"null"}],"title":"Commission Percent"},"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"contact_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Contact Email"},"disabled_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Disabled At"},"email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Email"},"full_name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Full Name"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"payment_iban":{"anyOf":[{"maxLength":50,"type":"string"},{"type":"null"}],"title":"Payment Iban"},"phone":{"anyOf":[{"maxLength":50,"type":"string"},{"type":"null"}],"title":"Phone"},"vat_number":{"anyOf":[{"maxLength":50,"type":"string"},{"type":"null"}],"title":"Vat Number"}},"title":"AgentUpdate","type":"object"},"AiAgentConfig":{"properties":{"auto_respond":{"default":false,"title":"Auto Respond","type":"boolean"},"daily_budget_usd":{"default":25,"minimum":0.0,"title":"Daily Budget Usd","type":"number"},"enabled":{"default":false,"title":"Enabled","type":"boolean"},"max_tokens":{"default":4096,"maximum":200000.0,"minimum":1.0,"title":"Max Tokens","type":"integer"},"model_name":{"default":"claude-3-5-sonnet","maxLength":100,"minLength":1,"title":"Model Name","type":"string"},"notification_level":{"default":"errors_only","enum":["all","errors_only","critical_only"],"title":"Notification Level","type":"string"},"system_prompt":{"default":"","title":"System Prompt","type":"string"},"telegram_allowed_chat_ids":{"default":"","title":"Telegram Allowed Chat Ids","type":"string"},"telegram_bot_token":{"default":"","title":"Telegram Bot Token","type":"string"},"temperature":{"default":0.2,"maximum":2.0,"minimum":0.0,"title":"Temperature","type":"number"},"tools_whitelist":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"string"}],"title":"Tools Whitelist"},"webhook_url":{"default":"","title":"Webhook Url","type":"string"}},"title":"AiAgentConfig","type":"object"},"AppliedTariffRate":{"description":"Customer tariff details applied to the simulated call.","properties":{"increment":{"title":"Increment","type":"integer"},"min_duration":{"title":"Min Duration","type":"integer"},"multiplier_band":{"title":"Multiplier Band","type":"string"},"rate":{"title":"Rate","type":"string"},"setup_fee":{"title":"Setup Fee","type":"string"}},"required":["rate","setup_fee","increment","min_duration","multiplier_band"],"title":"AppliedTariffRate","type":"object"},"ApplyDueFutureTariffsOut":{"properties":{"applied":{"title":"Applied","type":"integer"}},"required":["applied"],"title":"ApplyDueFutureTariffsOut","type":"object"},"AuditLogEntry":{"properties":{"action":{"title":"Action","type":"string"},"actor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"},"after":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"After"},"before":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Before"},"diff":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Diff"},"entity_id":{"title":"Entity Id","type":"string"},"entity_type":{"title":"Entity Type","type":"string"},"id":{"title":"Id","type":"integer"},"ts":{"format":"date-time","title":"Ts","type":"string"}},"required":["id","ts","actor","entity_type","entity_id","action","before","after","diff"],"title":"AuditLogEntry","type":"object"},"AuditLogResponse":{"properties":{"has_more":{"title":"Has More","type":"boolean"},"items":{"items":{"$ref":"#/components/schemas/AuditLogEntry"},"title":"Items","type":"array"},"total":{"title":"Total","type":"integer"}},"required":["items","total","has_more"],"title":"AuditLogResponse","type":"object"},"AuthorizedOriginatorCreate":{"properties":{"originator_id":{"title":"Originator Id","type":"integer"}},"required":["originator_id"],"title":"AuthorizedOriginatorCreate","type":"object"},"AuthorizedOriginatorOut":{"properties":{"id":{"title":"Id","type":"integer"},"originator_id":{"title":"Originator Id","type":"integer"},"policy_id":{"title":"Policy Id","type":"integer"}},"required":["id","policy_id","originator_id"],"title":"AuthorizedOriginatorOut","type":"object"},"AutoUploadJobCreate":{"properties":{"active":{"default":true,"title":"Active","type":"boolean"},"company_id":{"title":"Company Id","type":"integer"},"config":{"additionalProperties":true,"title":"Config","type":"object"},"notify_emails":{"items":{"type":"string"},"title":"Notify Emails","type":"array"},"schedule_cron":{"anyOf":[{"maxLength":50,"type":"string"},{"type":"null"}],"title":"Schedule Cron"},"source_path":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"title":"Source Path"},"source_type":{"enum":["sftp","email","api","scheduled"],"title":"Source Type","type":"string"},"upload_type":{"enum":["rates","destinations","companies","originators","terminators"],"title":"Upload Type","type":"string"},"validation_strict":{"default":true,"title":"Validation Strict","type":"boolean"}},"required":["company_id","upload_type","source_type"],"title":"AutoUploadJobCreate","type":"object"},"AutoUploadJobOut":{"properties":{"active":{"title":"Active","type":"boolean"},"company_id":{"title":"Company Id","type":"integer"},"config":{"additionalProperties":true,"title":"Config","type":"object"},"id":{"title":"Id","type":"integer"},"last_run_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Last Run At"},"last_run_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Run Status"},"notify_emails":{"items":{"type":"string"},"title":"Notify Emails","type":"array"},"schedule_cron":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Schedule Cron"},"source_path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Path"},"source_type":{"enum":["sftp","email","api","scheduled"],"title":"Source Type","type":"string"},"upload_type":{"enum":["rates","destinations","companies","originators","terminators"],"title":"Upload Type","type":"string"},"validation_strict":{"title":"Validation Strict","type":"boolean"}},"required":["id","company_id","upload_type","source_type","source_path","schedule_cron","config","validation_strict","notify_emails","last_run_at","last_run_status","active"],"title":"AutoUploadJobOut","type":"object"},"AutoUploadJobUpdate":{"properties":{"active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Active"},"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"},"notify_emails":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Notify Emails"},"schedule_cron":{"anyOf":[{"maxLength":50,"type":"string"},{"type":"null"}],"title":"Schedule Cron"},"source_path":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"title":"Source Path"},"source_type":{"anyOf":[{"enum":["sftp","email","api","scheduled"],"type":"string"},{"type":"null"}],"title":"Source Type"},"upload_type":{"anyOf":[{"enum":["rates","destinations","companies","originators","terminators"],"type":"string"},{"type":"null"}],"title":"Upload Type"},"validation_strict":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Validation Strict"}},"title":"AutoUploadJobUpdate","type":"object"},"AutoUploadRunOut":{"properties":{"error_report":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Error Report"},"finished_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Finished At"},"id":{"title":"Id","type":"integer"},"job_id":{"title":"Job Id","type":"integer"},"rows_applied":{"title":"Rows Applied","type":"integer"},"rows_errored":{"title":"Rows Errored","type":"integer"},"rows_total":{"title":"Rows Total","type":"integer"},"source_file_path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source File Path"},"started_at":{"format":"date-time","title":"Started At","type":"string"}},"required":["id","job_id","started_at","finished_at","rows_total","rows_applied","rows_errored","source_file_path"],"title":"AutoUploadRunOut","type":"object"},"BalanceMovementRead":{"properties":{"actor":{"title":"Actor","type":"string"},"amount":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Amount","type":"string"},"balance_after":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Balance After","type":"string"},"currency":{"pattern":"^[A-Z]{3}$","title":"Currency","type":"string"},"id":{"title":"Id","type":"integer"},"method":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Method"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"reference":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reference"},"ts":{"format":"date-time","title":"Ts","type":"string"},"type":{"enum":["recharge","refund","consumption","fee","adjustment"],"title":"Type","type":"string"}},"required":["id","ts","type","amount","currency","balance_after","reference","method","actor","notes"],"title":"BalanceMovementRead","type":"object"},"BalanceRead":{"properties":{"account_type":{"enum":["prepaid","postpaid"],"title":"Account Type","type":"string"},"company_id":{"title":"Company Id","type":"integer"},"credit_limit":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Credit Limit"},"credit_policy":{"default":"warn_only","enum":["warn_only","soft_block","hard_block"],"title":"Credit Policy","type":"string"},"currency":{"pattern":"^[A-Z]{3}$","title":"Currency","type":"string"},"current_balance":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Current Balance","type":"string"},"last_movement_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Last Movement At"},"status":{"enum":["ok","warning","critical","suspended"],"title":"Status","type":"string"},"threshold_critical":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Threshold Critical","type":"string"},"threshold_suspend":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Threshold Suspend","type":"string"},"threshold_warning":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Threshold Warning","type":"string"},"trend_7d":{"default":"0","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Trend 7D","type":"string"}},"required":["company_id","current_balance","currency","threshold_warning","threshold_critical","threshold_suspend","status","account_type","credit_limit","last_movement_at"],"title":"BalanceRead","type":"object"},"BaseCurrencyChangeRequest":{"properties":{"base_currency":{"pattern":"^[A-Z]{3}$","title":"Base Currency","type":"string"}},"required":["base_currency"],"title":"BaseCurrencyChangeRequest","type":"object"},"BaseCurrencyChangeResponse":{"properties":{"base_currency":{"pattern":"^[A-Z]{3}$","title":"Base Currency","type":"string"},"job_id":{"title":"Job Id","type":"integer"},"job_status":{"enum":["queued","running","completed","failed"],"title":"Job Status","type":"string"},"previous_base_currency":{"pattern":"^[A-Z]{3}$","title":"Previous Base Currency","type":"string"}},"required":["base_currency","previous_base_currency","job_id","job_status"],"title":"BaseCurrencyChangeResponse","type":"object"},"BaseCurrencyOut":{"properties":{"base_currency":{"pattern":"^[A-Z]{3}$","title":"Base Currency","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"},"updated_by_user_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Updated By User Id"}},"required":["base_currency","updated_at"],"title":"BaseCurrencyOut","type":"object"},"BenchmarkAbortRequest":{"properties":{"reason":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"title":"Reason"}},"title":"BenchmarkAbortRequest","type":"object"},"BenchmarkAbortResponse":{"properties":{"abort_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Abort Reason"},"id":{"title":"Id","type":"integer"},"status":{"enum":["scheduled","running","done","failed","aborted"],"title":"Status","type":"string"}},"required":["id","status"],"title":"BenchmarkAbortResponse","type":"object"},"BenchmarkJobCreate":{"properties":{"a_numbers":{"items":{"type":"string"},"maxItems":200000,"title":"A Numbers","type":"array"},"acd_target":{"anyOf":[{"maximum":86400.0,"minimum":0.0,"type":"integer"},{"type":"null"}],"title":"Acd Target"},"active":{"default":true,"title":"Active","type":"boolean"},"asr_target":{"anyOf":[{"maximum":100.0,"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,3}|(?=[\\d.]{1,6}0*$)\\d{0,3}\\.\\d{0,2}0*$)","type":"string"},{"type":"null"}],"title":"Asr Target"},"concurrent_cap":{"default":100,"exclusiveMinimum":0.0,"maximum":100000.0,"title":"Concurrent Cap","type":"integer"},"cps":{"anyOf":[{"exclusiveMinimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,6}|(?=[\\d.]{1,9}0*$)\\d{0,6}\\.\\d{0,2}0*$)","type":"string"}],"title":"Cps"},"destinations":{"items":{"type":"string"},"maxItems":200000,"minItems":1,"title":"Destinations","type":"array"},"dry_run":{"default":true,"title":"Dry Run","type":"boolean"},"duration_s":{"exclusiveMinimum":0.0,"maximum":86400.0,"title":"Duration S","type":"integer"},"max_minutes_per_day":{"anyOf":[{"minimum":0.0,"type":"integer"},{"type":"null"}],"title":"Max Minutes Per Day"},"mode":{"default":"synthetic_local","enum":["synthetic_local","external_loop_ax","dlr_stress"],"title":"Mode","type":"string"},"name":{"maxLength":120,"minLength":1,"title":"Name","type":"string"},"originator_id":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Originator Id"},"originator_ref":{"anyOf":[{"maxLength":120,"type":"string"},{"type":"null"}],"title":"Originator Ref"},"ramp":{"additionalProperties":true,"title":"Ramp","type":"object"},"terminator_id":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Terminator Id"},"volume_cap":{"exclusiveMinimum":0.0,"maximum":10000000.0,"title":"Volume Cap","type":"integer"},"window_days":{"items":{"type":"integer"},"title":"Window Days","type":"array"},"window_end":{"anyOf":[{"format":"time","type":"string"},{"type":"null"}],"title":"Window End"},"window_start":{"anyOf":[{"format":"time","type":"string"},{"type":"null"}],"title":"Window Start"}},"required":["name","cps","duration_s","destinations","volume_cap"],"title":"BenchmarkJobCreate","type":"object"},"BenchmarkJobOut":{"properties":{"a_numbers":{"items":{"type":"string"},"title":"A Numbers","type":"array"},"abort_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Abort Reason"},"acd_actual":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Acd Actual"},"acd_target":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Acd Target"},"active":{"default":true,"title":"Active","type":"boolean"},"active_concurrent":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Active Concurrent"},"asr_actual":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Asr Actual"},"asr_target":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Asr Target"},"calls_launched":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Calls Launched"},"causes":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Causes"},"code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Code"},"concurrent_cap":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Concurrent Cap"},"concurrent_max":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Concurrent Max"},"cps":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Cps"},"cps_series":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Cps Series"},"curve":{"anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}],"title":"Curve"},"destinations":{"items":{"type":"string"},"title":"Destinations","type":"array"},"dry_run":{"default":true,"title":"Dry Run","type":"boolean"},"duration_s":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Duration S"},"duration_seconds":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Duration Seconds"},"effective_acd":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Effective Acd"},"effective_asr":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Effective Asr"},"effective_cps":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Effective Cps"},"effective_latency_ms":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Effective Latency Ms"},"effective_pdd_ms":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Effective Pdd Ms"},"ended_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Ended At"},"id":{"title":"Id","type":"integer"},"is_test":{"default":true,"title":"Is Test","type":"boolean"},"latency_series":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Latency Series"},"max_minutes_per_day":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Minutes Per Day"},"metrics_json":{"additionalProperties":true,"title":"Metrics Json","type":"object"},"minutes_today":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Minutes Today"},"mode":{"default":"synthetic_local","enum":["synthetic_local","external_loop_ax","dlr_stress"],"title":"Mode","type":"string"},"name":{"title":"Name","type":"string"},"originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"},"originator_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Originator Name"},"originator_ref":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Originator Ref"},"peak_cps":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Peak Cps"},"ramp":{"additionalProperties":true,"title":"Ramp","type":"object"},"rating_latency_p99":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Rating Latency P99"},"routing_latency_p99":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Routing Latency P99"},"sipp_command":{"items":{"type":"string"},"title":"Sipp Command","type":"array"},"sipp_scenario":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sipp Scenario"},"started_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Started At"},"status":{"enum":["scheduled","running","done","failed","aborted"],"title":"Status","type":"string"},"terminator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"},"terminator_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Terminator Name"},"volume_cap":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Volume Cap"},"window_days":{"items":{"type":"integer"},"title":"Window Days","type":"array"},"window_end":{"anyOf":[{"format":"time","type":"string"},{"type":"null"}],"title":"Window End"},"window_start":{"anyOf":[{"format":"time","type":"string"},{"type":"null"}],"title":"Window Start"}},"required":["id","name","status"],"title":"BenchmarkJobOut","type":"object"},"BenchmarkRunnerAck":{"properties":{"abort":{"default":false,"title":"Abort","type":"boolean"},"id":{"title":"Id","type":"integer"},"status":{"enum":["scheduled","running","done","failed","aborted"],"title":"Status","type":"string"},"stop_launching":{"default":false,"title":"Stop Launching","type":"boolean"}},"required":["id","status"],"title":"BenchmarkRunnerAck","type":"object"},"BenchmarkRunnerComplete":{"properties":{"abort_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Abort Reason"},"metrics":{"additionalProperties":true,"title":"Metrics","type":"object"},"runner_id":{"maxLength":128,"minLength":1,"title":"Runner Id","type":"string"},"status":{"default":"done","enum":["done","failed"],"title":"Status","type":"string"}},"required":["runner_id"],"title":"BenchmarkRunnerComplete","type":"object"},"BenchmarkRunnerHeartbeat":{"properties":{"live":{"additionalProperties":true,"title":"Live","type":"object"},"runner_id":{"maxLength":128,"minLength":1,"title":"Runner Id","type":"string"}},"required":["runner_id"],"title":"BenchmarkRunnerHeartbeat","type":"object"},"BenchmarkRunnerJob":{"description":"Job spec handed to the runner daemon when it claims a running job.","properties":{"a_numbers":{"items":{"type":"string"},"title":"A Numbers","type":"array"},"acd_target":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Acd Target"},"asr_target":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Asr Target"},"concurrent_cap":{"title":"Concurrent Cap","type":"integer"},"cps":{"title":"Cps","type":"number"},"destinations":{"items":{"type":"string"},"title":"Destinations","type":"array"},"duration_s":{"title":"Duration S","type":"integer"},"id":{"title":"Id","type":"integer"},"is_test":{"default":true,"title":"Is Test","type":"boolean"},"mode":{"enum":["synthetic_local","external_loop_ax","dlr_stress"],"title":"Mode","type":"string"},"name":{"title":"Name","type":"string"},"originator_ref":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Originator Ref"},"ramp":{"additionalProperties":true,"title":"Ramp","type":"object"},"terminator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"},"volume_cap":{"title":"Volume Cap","type":"integer"}},"required":["id","name","mode","cps","duration_s","volume_cap","concurrent_cap"],"title":"BenchmarkRunnerJob","type":"object"},"BillingBalanceKpi":{"properties":{"atRiskStop":{"title":"Atriskstop","type":"integer"},"netEur":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Neteur","type":"string"},"netGbp":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Netgbp","type":"string"},"netUsd":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Netusd","type":"string"}},"required":["netEur","netUsd","netGbp","atRiskStop"],"title":"BillingBalanceKpi","type":"object"},"BillingBalanceOverview":{"properties":{"kpi":{"$ref":"#/components/schemas/BillingBalanceKpi"},"rows":{"items":{"$ref":"#/components/schemas/BillingBalanceRow"},"title":"Rows","type":"array"}},"required":["kpi","rows"],"title":"BillingBalanceOverview","type":"object"},"BillingBalanceRow":{"properties":{"balance":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Balance","type":"string"},"company":{"title":"Company","type":"string"},"country":{"title":"Country","type":"string"},"creditLimit":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Creditlimit","type":"string"},"currency":{"pattern":"^[A-Z]{3}$","title":"Currency","type":"string"},"forecastInvoice":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Forecastinvoice","type":"string"},"id":{"title":"Id","type":"string"},"netTerm":{"title":"Netterm","type":"integer"},"status":{"enum":["active","warning","stopped"],"title":"Status","type":"string"},"type":{"title":"Type","type":"string"},"usagePct":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Usagepct","type":"string"}},"required":["id","company","country","type","currency","balance","creditLimit","usagePct","forecastInvoice","netTerm","status"],"title":"BillingBalanceRow","type":"object"},"BlockedCallOut":{"properties":{"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"dst":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Dst"},"id":{"title":"Id","type":"integer"},"originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"},"policy_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Policy Id"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"},"sip_response_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Sip Response Code"},"started_at":{"format":"date-time","title":"Started At","type":"string"}},"required":["id","started_at"],"title":"BlockedCallOut","type":"object"},"Body_apply_import_api_v1_admin_bulk_import_apply_post":{"properties":{"entity_type":{"enum":["companies","originators","terminators"],"title":"Entity Type","type":"string"},"file":{"contentMediaType":"application/octet-stream","title":"File","type":"string"},"skip_errors":{"default":false,"title":"Skip Errors","type":"boolean"}},"required":["entity_type","file"],"title":"Body_apply_import_api_v1_admin_bulk_import_apply_post","type":"object"},"Body_import_tariff_rates_api_v1_tariffs__tariff_id__rates_import_post":{"properties":{"file":{"contentMediaType":"application/octet-stream","title":"File","type":"string"}},"required":["file"],"title":"Body_import_tariff_rates_api_v1_tariffs__tariff_id__rates_import_post","type":"object"},"Body_ingest_supplier_invoice_api_v1_invoices_supplier_ingestion_post":{"properties":{"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"file":{"contentMediaType":"application/octet-stream","title":"File","type":"string"},"period_end":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"title":"Period End"},"period_start":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"title":"Period Start"}},"required":["file"],"title":"Body_ingest_supplier_invoice_api_v1_invoices_supplier_ingestion_post","type":"object"},"Body_preview_import_api_v1_admin_bulk_import_preview_post":{"properties":{"entity_type":{"enum":["companies","originators","terminators"],"title":"Entity Type","type":"string"},"file":{"contentMediaType":"application/octet-stream","title":"File","type":"string"}},"required":["entity_type","file"],"title":"Body_preview_import_api_v1_admin_bulk_import_preview_post","type":"object"},"Body_preview_tariff_rates_import_api_v1_tariffs__tariff_id__rates_preview_post":{"properties":{"file":{"contentMediaType":"application/octet-stream","title":"File","type":"string"}},"required":["file"],"title":"Body_preview_tariff_rates_import_api_v1_tariffs__tariff_id__rates_preview_post","type":"object"},"Body_wizard_ingest_api_v1_wizard_ingest_post":{"properties":{"contract_file":{"anyOf":[{"contentMediaType":"application/octet-stream","type":"string"},{"type":"null"}],"title":"Contract File"},"file":{"contentMediaType":"application/octet-stream","title":"File","type":"string"}},"required":["file"],"title":"Body_wizard_ingest_api_v1_wizard_ingest_post","type":"object"},"BulkActionRequest":{"properties":{"account_ids":{"items":{"type":"integer"},"maxItems":500,"minItems":1,"title":"Account Ids","type":"array"},"action":{"enum":["activate","deactivate","force_password_change","send_password_reset"],"title":"Action","type":"string"}},"required":["account_ids","action"],"title":"BulkActionRequest","type":"object"},"BulkActionResponse":{"properties":{"updated":{"title":"Updated","type":"integer"}},"required":["updated"],"title":"BulkActionResponse","type":"object"},"BulkImportReport":{"properties":{"applied":{"default":0,"title":"Applied","type":"integer"},"duplicates":{"items":{"$ref":"#/components/schemas/DuplicateRow"},"title":"Duplicates","type":"array"},"errors":{"items":{"$ref":"#/components/schemas/RowError"},"title":"Errors","type":"array"},"total_rows":{"title":"Total Rows","type":"integer"},"transaction_committed":{"default":false,"title":"Transaction Committed","type":"boolean"},"valid_rows":{"title":"Valid Rows","type":"integer"}},"required":["total_rows","valid_rows"],"title":"BulkImportReport","type":"object"},"BulkTerminatorAssignment":{"items":{"$ref":"#/components/schemas/RoutingRuleTerminatorCreate"},"minItems":1,"title":"BulkTerminatorAssignment","type":"array"},"CallsPerDayResponse":{"properties":{"from_":{"format":"date-time","title":"From","type":"string"},"items":{"items":{"$ref":"#/components/schemas/CallsPerDayRow"},"title":"Items","type":"array"},"timezone":{"title":"Timezone","type":"string"},"to_":{"format":"date-time","title":"To","type":"string"}},"required":["items","from_","to_","timezone"],"title":"CallsPerDayResponse","type":"object"},"CallsPerDayRow":{"properties":{"acd_seconds":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Acd Seconds"},"answered_calls":{"title":"Answered Calls","type":"integer"},"asr_pct":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Asr Pct","type":"string"},"bucket":{"format":"date-time","title":"Bucket","type":"string"},"cost":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Cost","type":"string"},"margin":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Margin","type":"string"},"minutes_total":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Minutes Total","type":"string"},"pdd_avg_ms":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Pdd Avg Ms"},"revenue":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue","type":"string"},"total_calls":{"title":"Total Calls","type":"integer"}},"required":["bucket","total_calls","answered_calls","asr_pct","minutes_total","revenue","cost","margin"],"title":"CallsPerDayRow","type":"object"},"CarrierHealthAnomaly":{"properties":{"reason":{"title":"Reason","type":"string"},"row_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Row Id"},"row_label":{"title":"Row Label","type":"string"},"severity":{"enum":["warning","critical"],"title":"Severity","type":"string"}},"required":["row_label","severity","reason"],"title":"CarrierHealthAnomaly","type":"object"},"CarrierHealthBucket":{"properties":{"answered_calls":{"default":0,"title":"Answered Calls","type":"integer"},"asr_pct":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Asr Pct"},"calls":{"default":0,"title":"Calls","type":"integer"},"insufficient":{"default":false,"title":"Insufficient","type":"boolean"},"ts":{"format":"date-time","title":"Ts","type":"string"}},"required":["ts"],"title":"CarrierHealthBucket","type":"object"},"CarrierHealthMatrixResponse":{"properties":{"anomalies":{"items":{"$ref":"#/components/schemas/CarrierHealthAnomaly"},"title":"Anomalies","type":"array"},"bucket_minutes":{"title":"Bucket Minutes","type":"integer"},"buckets":{"items":{"format":"date-time","type":"string"},"title":"Buckets","type":"array"},"generated_at":{"format":"date-time","title":"Generated At","type":"string"},"group_by":{"enum":["terminator","destination"],"title":"Group By","type":"string"},"min_samples":{"title":"Min Samples","type":"integer"},"range":{"title":"Range","type":"string"},"rows":{"items":{"$ref":"#/components/schemas/CarrierHealthRow"},"title":"Rows","type":"array"}},"required":["range","bucket_minutes","group_by","min_samples","generated_at","buckets","rows","anomalies"],"title":"CarrierHealthMatrixResponse","type":"object"},"CarrierHealthRow":{"properties":{"acd_seconds":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Acd Seconds"},"asr_delta_pp":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Asr Delta Pp"},"avg_asr_pct":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Avg Asr Pct"},"buckets":{"items":{"$ref":"#/components/schemas/CarrierHealthBucket"},"title":"Buckets","type":"array"},"health":{"default":"unknown","enum":["healthy","degraded","down","unknown"],"title":"Health","type":"string"},"id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Id"},"label":{"title":"Label","type":"string"},"pdd_avg_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pdd Avg Ms"},"total_answered":{"default":0,"title":"Total Answered","type":"integer"},"total_calls":{"default":0,"title":"Total Calls","type":"integer"}},"required":["label","buckets"],"title":"CarrierHealthRow","type":"object"},"CdrIngestPayload":{"properties":{"answered_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Answered At"},"billsec":{"default":0,"title":"Billsec","type":"integer"},"call_id":{"maxLength":128,"minLength":1,"title":"Call Id","type":"string"},"cause_q850":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Cause Q850"},"codec":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Codec"},"cost":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Cost"},"currency":{"default":"EUR","pattern":"^[A-Z]{3}$","title":"Currency","type":"string"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"device_id_orig":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Device Id Orig"},"device_id_term":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Device Id Term"},"disposition":{"anyOf":[{"enum":["ANSWERED","BUSY","NO_ANSWER","FAILED","CANCELLED"],"type":"string"},{"type":"null"}],"title":"Disposition"},"dst":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Dst"},"dst_country":{"anyOf":[{"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Dst Country"},"duration_sec":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Duration Sec"},"ended_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Ended At"},"fas_flag":{"default":false,"title":"Fas Flag","type":"boolean"},"fraud_flagged":{"default":false,"title":"Fraud Flagged","type":"boolean"},"is_test":{"default":false,"title":"Is Test","type":"boolean"},"jitter_ms":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Jitter Ms"},"kamailio_host":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Kamailio Host"},"mos":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Mos"},"originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"},"packet_loss_pct":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Packet Loss Pct"},"pdd_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pdd Ms"},"rate_customer":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Rate Customer"},"rate_supplier":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Rate Supplier"},"raw":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Raw"},"recording_path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Recording Path"},"rejection_reason":{"anyOf":[{"enum":["missed_customer_rate","missed_provider_rate","no_route","not_authorized","suspended"],"type":"string"},{"type":"null"}],"title":"Rejection Reason"},"revenue":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Revenue"},"routing_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Routing Ms"},"sip_response_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Sip Response Code"},"src":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Src"},"src_country":{"anyOf":[{"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Src Country"},"started_at":{"format":"date-time","title":"Started At","type":"string"},"terminator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"}},"required":["call_id","started_at"],"title":"CdrIngestPayload","type":"object"},"CdrIngestResponse":{"properties":{"cdr_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Cdr Id"},"inserted":{"title":"Inserted","type":"boolean"},"message":{"title":"Message","type":"string"}},"required":["cdr_id","inserted","message"],"title":"CdrIngestResponse","type":"object"},"CdrItem":{"properties":{"answered_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Answered At"},"billsec":{"title":"Billsec","type":"integer"},"call_id":{"title":"Call Id","type":"string"},"cause_q850":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Cause Q850"},"codec":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Codec"},"cost":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Cost","type":"string"},"currency":{"title":"Currency","type":"string"},"destination":{"anyOf":[{"$ref":"#/components/schemas/akira_backend__schemas__cdr__DestinationNested"},{"type":"null"}]},"disposition":{"anyOf":[{"enum":["ANSWERED","BUSY","NO_ANSWER","FAILED","CANCELLED"],"type":"string"},{"type":"null"}],"title":"Disposition"},"dst":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Dst"},"dst_country":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Dst Country"},"duration_sec":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Duration Sec"},"ended_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Ended At"},"fas_flag":{"title":"Fas Flag","type":"boolean"},"fraud_flagged":{"title":"Fraud Flagged","type":"boolean"},"has_recording":{"title":"Has Recording","type":"boolean"},"id":{"title":"Id","type":"integer"},"jitter_ms":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Jitter Ms"},"margin":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Margin","type":"string"},"mos":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Mos"},"originator":{"anyOf":[{"$ref":"#/components/schemas/OriginatorNested"},{"type":"null"}]},"packet_loss_pct":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Packet Loss Pct"},"pdd_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pdd Ms"},"rejection_reason":{"anyOf":[{"enum":["missed_customer_rate","missed_provider_rate","no_route","not_authorized","suspended"],"type":"string"},{"type":"null"}],"title":"Rejection Reason"},"reseller_company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reseller Company Id"},"reseller_markup_amount":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Reseller Markup Amount"},"revenue":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue","type":"string"},"sip_response_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Sip Response Code"},"src":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Src"},"src_country":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Src Country"},"started_at":{"format":"date-time","title":"Started At","type":"string"},"terminator":{"anyOf":[{"$ref":"#/components/schemas/TerminatorNested"},{"type":"null"}]}},"required":["id","call_id","started_at","answered_at","ended_at","duration_sec","billsec","originator","terminator","destination","src","dst","src_country","dst_country","sip_response_code","cause_q850","disposition","rejection_reason","pdd_ms","codec","jitter_ms","packet_loss_pct","mos","revenue","cost","margin","currency","fraud_flagged","fas_flag","has_recording"],"title":"CdrItem","type":"object"},"CdrListResponse":{"properties":{"has_more":{"title":"Has More","type":"boolean"},"items":{"items":{"$ref":"#/components/schemas/CdrItem"},"title":"Items","type":"array"},"total":{"title":"Total","type":"integer"}},"required":["items","total","has_more"],"title":"CdrListResponse","type":"object"},"CdrSipTraceMessage":{"properties":{"from":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"From"},"from_host":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"From Host"},"from_role":{"anyOf":[{"enum":["originator","kamailio","terminator"],"type":"string"},{"type":"null"}],"title":"From Role"},"is_request":{"default":false,"title":"Is Request","type":"boolean"},"method":{"title":"Method","type":"string"},"method_or_status":{"title":"Method Or Status","type":"string"},"payload":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Payload"},"raw":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Raw"},"status_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Status Code"},"t_offset_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"T Offset Ms"},"timestamp":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Timestamp"},"to":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"To"},"to_host":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"To Host"},"to_role":{"anyOf":[{"enum":["originator","kamailio","terminator"],"type":"string"},{"type":"null"}],"title":"To Role"},"ts":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Ts"}},"required":["method_or_status","method"],"title":"CdrSipTraceMessage","type":"object"},"CdrSipTraceResponse":{"properties":{"available":{"title":"Available","type":"boolean"},"call_id":{"title":"Call Id","type":"string"},"has_recording":{"default":false,"title":"Has Recording","type":"boolean"},"kamailio_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kamailio Name"},"message":{"title":"Message","type":"string"},"messages":{"items":{"$ref":"#/components/schemas/CdrSipTraceMessage"},"title":"Messages","type":"array"},"originator_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Originator Name"},"summary":{"anyOf":[{"$ref":"#/components/schemas/CdrSipTraceSummary"},{"type":"null"}]},"terminator_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Terminator Name"}},"required":["call_id","available","message"],"title":"CdrSipTraceResponse","type":"object"},"CdrSipTraceSummary":{"description":"Derived ladder summary shown in the bottom bar of the SIP ladder view.","properties":{"cause":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cause"},"codec":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Codec"},"duration_sec":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Duration Sec"},"pdd_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pdd Ms"}},"title":"CdrSipTraceSummary","type":"object"},"ChallengeRequest":{"properties":{"action":{"pattern":"^[a-z0-9_.:-]+$","title":"Action","type":"string"},"code":{"maxLength":8,"minLength":6,"title":"Code","type":"string"}},"required":["action","code"],"title":"ChallengeRequest","type":"object"},"ChallengeResponse":{"properties":{"challenge_token":{"title":"Challenge Token","type":"string"},"expires_in":{"title":"Expires In","type":"integer"},"expires_in_seconds":{"title":"Expires In Seconds","type":"integer"},"mfa_challenge_token":{"title":"Mfa Challenge Token","type":"string"}},"required":["mfa_challenge_token","challenge_token","expires_in","expires_in_seconds"],"title":"ChallengeResponse","type":"object"},"ChangePasswordPayload":{"properties":{"new_password":{"maxLength":128,"minLength":12,"title":"New Password","type":"string"},"old_password":{"maxLength":256,"minLength":1,"title":"Old Password","type":"string"}},"required":["old_password","new_password"],"title":"ChangePasswordPayload","type":"object"},"CommentCreate":{"additionalProperties":false,"properties":{"body":{"maxLength":10000,"minLength":1,"title":"Body","type":"string"}},"required":["body"],"title":"CommentCreate","type":"object"},"CompanyCreate":{"properties":{"address_line1":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Address Line1"},"address_line2":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Address Line2"},"city":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"City"},"code":{"maxLength":32,"minLength":1,"title":"Code","type":"string"},"country_iso2":{"anyOf":[{"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Country Iso2"},"credit_limit":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"default":"0","title":"Credit Limit"},"credit_policy":{"default":"warn_only","enum":["warn_only","soft_block","hard_block"],"title":"Credit Policy","type":"string"},"currency":{"default":"EUR","pattern":"^[A-Z]{3}$","title":"Currency","type":"string"},"current_balance":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"default":"0","title":"Current Balance"},"display_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Display Name"},"finance_contact_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Finance Contact Email"},"finance_email_domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Finance Email Domain"},"invoice_locale":{"default":"en_US","maxLength":8,"title":"Invoice Locale","type":"string"},"invoice_template":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":"default","title":"Invoice Template"},"invoicing_period":{"default":"monthly","enum":["daily","weekly","biweekly","monthly","quarterly"],"title":"Invoicing Period","type":"string"},"is_reseller":{"default":false,"title":"Is Reseller","type":"boolean"},"kind":{"default":"customer","enum":["customer","supplier","both"],"title":"Kind","type":"string"},"legal_name":{"maxLength":255,"minLength":1,"title":"Legal Name","type":"string"},"noc_contact_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Noc Contact Email"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"parent_company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Parent Company Id"},"payment_mode":{"default":"postpaid","enum":["prepaid","postpaid"],"title":"Payment Mode","type":"string"},"payment_term_days":{"default":30,"title":"Payment Term Days","type":"integer"},"primary_contact_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Primary Contact Email"},"primary_contact_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Primary Contact Name"},"primary_contact_phone":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Primary Contact Phone"},"rates_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Rates Email"},"rates_email_subject":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"title":"Rates Email Subject"},"state":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"State"},"stopped":{"default":false,"title":"Stopped","type":"boolean"},"stopped_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Stopped At"},"stopped_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stopped Reason"},"tags":{"items":{"type":"string"},"title":"Tags","type":"array"},"tax_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Tax Id"},"tier":{"default":"wholesale","enum":["wholesale","reseller","mobile","tier1"],"title":"Tier","type":"string"},"timezone":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":"Europe/Rome","title":"Timezone"},"vat_number":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Vat Number"},"vat_prefix":{"anyOf":[{"maxLength":2,"type":"string"},{"type":"null"}],"title":"Vat Prefix"},"zip":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Zip"}},"required":["code","legal_name"],"title":"CompanyCreate","type":"object"},"CompanyOut":{"properties":{"address_line1":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Address Line1"},"address_line2":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Address Line2"},"city":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"City"},"code":{"title":"Code","type":"string"},"country_iso2":{"anyOf":[{"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Country Iso2"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"created_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created By"},"credit_limit":{"default":"0","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Credit Limit","type":"string"},"credit_policy":{"default":"warn_only","enum":["warn_only","soft_block","hard_block"],"title":"Credit Policy","type":"string"},"currency":{"default":"EUR","pattern":"^[A-Z]{3}$","title":"Currency","type":"string"},"current_balance":{"default":"0","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Current Balance","type":"string"},"display_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Display Name"},"finance_contact_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Finance Contact Email"},"finance_email_domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Finance Email Domain"},"id":{"title":"Id","type":"integer"},"invoice_locale":{"default":"en_US","maxLength":8,"title":"Invoice Locale","type":"string"},"invoice_template":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":"default","title":"Invoice Template"},"invoicing_period":{"default":"monthly","enum":["daily","weekly","biweekly","monthly","quarterly"],"title":"Invoicing Period","type":"string"},"is_reseller":{"default":false,"title":"Is Reseller","type":"boolean"},"kind":{"default":"customer","enum":["customer","supplier","both"],"title":"Kind","type":"string"},"legal_name":{"title":"Legal Name","type":"string"},"noc_contact_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Noc Contact Email"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"parent_company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Parent Company Id"},"payment_mode":{"default":"postpaid","enum":["prepaid","postpaid"],"title":"Payment Mode","type":"string"},"payment_term_days":{"default":30,"title":"Payment Term Days","type":"integer"},"primary_contact_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Primary Contact Email"},"primary_contact_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Primary Contact Name"},"primary_contact_phone":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Primary Contact Phone"},"rates_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Rates Email"},"rates_email_subject":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"title":"Rates Email Subject"},"state":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"State"},"stopped":{"default":false,"title":"Stopped","type":"boolean"},"stopped_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Stopped At"},"stopped_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stopped Reason"},"tags":{"items":{"type":"string"},"title":"Tags","type":"array"},"tax_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Tax Id"},"tier":{"default":"wholesale","enum":["wholesale","reseller","mobile","tier1"],"title":"Tier","type":"string"},"timezone":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":"Europe/Rome","title":"Timezone"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"},"updated_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Updated By"},"vat_number":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Vat Number"},"vat_prefix":{"anyOf":[{"maxLength":2,"type":"string"},{"type":"null"}],"title":"Vat Prefix"},"zip":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Zip"}},"required":["id","code","legal_name","created_at","updated_at"],"title":"CompanyOut","type":"object"},"CompanyUpdate":{"properties":{"address_line1":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Address Line1"},"address_line2":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Address Line2"},"city":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"City"},"code":{"anyOf":[{"maxLength":32,"minLength":1,"type":"string"},{"type":"null"}],"title":"Code"},"country_iso2":{"anyOf":[{"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Country Iso2"},"credit_limit":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Credit Limit"},"credit_policy":{"anyOf":[{"enum":["warn_only","soft_block","hard_block"],"type":"string"},{"type":"null"}],"title":"Credit Policy"},"currency":{"anyOf":[{"pattern":"^[A-Z]{3}$","type":"string"},{"type":"null"}],"title":"Currency"},"current_balance":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Current Balance"},"display_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Display Name"},"finance_contact_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Finance Contact Email"},"finance_email_domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Finance Email Domain"},"invoice_locale":{"anyOf":[{"maxLength":8,"type":"string"},{"type":"null"}],"title":"Invoice Locale"},"invoice_template":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Invoice Template"},"invoicing_period":{"anyOf":[{"enum":["daily","weekly","biweekly","monthly","quarterly"],"type":"string"},{"type":"null"}],"title":"Invoicing Period"},"is_reseller":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Reseller"},"kind":{"anyOf":[{"enum":["customer","supplier","both"],"type":"string"},{"type":"null"}],"title":"Kind"},"legal_name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Legal Name"},"noc_contact_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Noc Contact Email"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"parent_company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Parent Company Id"},"payment_mode":{"anyOf":[{"enum":["prepaid","postpaid"],"type":"string"},{"type":"null"}],"title":"Payment Mode"},"payment_term_days":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Payment Term Days"},"primary_contact_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Primary Contact Email"},"primary_contact_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Primary Contact Name"},"primary_contact_phone":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Primary Contact Phone"},"rates_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"title":"Rates Email"},"rates_email_subject":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"title":"Rates Email Subject"},"state":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"State"},"stopped":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Stopped"},"stopped_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Stopped At"},"stopped_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stopped Reason"},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tags"},"tax_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Tax Id"},"tier":{"anyOf":[{"enum":["wholesale","reseller","mobile","tier1"],"type":"string"},{"type":"null"}],"title":"Tier"},"timezone":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Timezone"},"vat_number":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Vat Number"},"vat_prefix":{"anyOf":[{"maxLength":2,"type":"string"},{"type":"null"}],"title":"Vat Prefix"},"zip":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Zip"}},"title":"CompanyUpdate","type":"object"},"ConfirmRequest":{"properties":{"code":{"maxLength":8,"minLength":6,"title":"Code","type":"string"}},"required":["code"],"title":"ConfirmRequest","type":"object"},"ConfirmResponse":{"properties":{"status":{"title":"Status","type":"string"}},"required":["status"],"title":"ConfirmResponse","type":"object"},"ConfirmationRequest":{"description":"Payload used by AgentCore after the user confirms a write action.","properties":{"arguments":{"additionalProperties":true,"title":"Arguments","type":"object"},"context":{"additionalProperties":true,"title":"Context","type":"object"},"tool_name":{"minLength":1,"title":"Tool Name","type":"string"},"user_id":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"null"}],"title":"User Id"}},"required":["tool_name"],"title":"ConfirmationRequest","type":"object"},"ConsumptionComparePeriod":{"properties":{"from_":{"format":"date-time","title":"From","type":"string"},"to_":{"format":"date-time","title":"To","type":"string"}},"required":["from_","to_"],"title":"ConsumptionComparePeriod","type":"object"},"ConsumptionCompareResponse":{"properties":{"generated_at":{"format":"date-time","title":"Generated At","type":"string"},"group_by":{"enum":["company","destination","supplier","country","hour","day_of_week"],"title":"Group By","type":"string"},"period_a":{"$ref":"#/components/schemas/ConsumptionComparePeriod"},"period_b":{"$ref":"#/components/schemas/ConsumptionComparePeriod"},"rows":{"items":{"$ref":"#/components/schemas/ConsumptionCompareRow"},"title":"Rows","type":"array"},"totals":{"$ref":"#/components/schemas/ConsumptionCompareTotals"}},"required":["generated_at","period_a","period_b","group_by","rows","totals"],"title":"ConsumptionCompareResponse","type":"object"},"ConsumptionCompareRow":{"description":"Group key + side-by-side A/B metrics with absolute and percent deltas.","properties":{"calls_a":{"title":"Calls A","type":"integer"},"calls_b":{"title":"Calls B","type":"integer"},"calls_delta":{"title":"Calls Delta","type":"integer"},"calls_delta_pct":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Calls Delta Pct"},"cost_a":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Cost A","type":"string"},"cost_b":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Cost B","type":"string"},"cost_delta":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Cost Delta","type":"string"},"group_key":{"title":"Group Key","type":"string"},"group_label":{"title":"Group Label","type":"string"},"margin_a":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Margin A","type":"string"},"margin_b":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Margin B","type":"string"},"margin_delta":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Margin Delta","type":"string"},"minutes_a":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Minutes A","type":"string"},"minutes_b":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Minutes B","type":"string"},"minutes_delta":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Minutes Delta","type":"string"},"minutes_delta_pct":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Minutes Delta Pct"},"revenue_a":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue A","type":"string"},"revenue_b":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue B","type":"string"},"revenue_delta":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue Delta","type":"string"},"revenue_delta_pct":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Revenue Delta Pct"}},"required":["group_key","group_label","calls_a","calls_b","calls_delta","minutes_a","minutes_b","minutes_delta","revenue_a","revenue_b","revenue_delta","cost_a","cost_b","cost_delta","margin_a","margin_b","margin_delta"],"title":"ConsumptionCompareRow","type":"object"},"ConsumptionCompareTotals":{"properties":{"calls_a":{"title":"Calls A","type":"integer"},"calls_b":{"title":"Calls B","type":"integer"},"calls_delta":{"title":"Calls Delta","type":"integer"},"calls_delta_pct":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Calls Delta Pct"},"minutes_a":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Minutes A","type":"string"},"minutes_b":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Minutes B","type":"string"},"minutes_delta":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Minutes Delta","type":"string"},"minutes_delta_pct":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Minutes Delta Pct"},"revenue_a":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue A","type":"string"},"revenue_b":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue B","type":"string"},"revenue_delta":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue Delta","type":"string"},"revenue_delta_pct":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Revenue Delta Pct"}},"required":["calls_a","calls_b","calls_delta","minutes_a","minutes_b","minutes_delta","revenue_a","revenue_b","revenue_delta"],"title":"ConsumptionCompareTotals","type":"object"},"CountryCodeOut":{"properties":{"country_code":{"description":"ITU E.164 calling code without '+'.","title":"Country Code","type":"string"},"country_name":{"title":"Country Name","type":"string"},"is_shared_code":{"title":"Is Shared Code","type":"boolean"},"iso_alpha2":{"description":"ISO 3166 alpha-2 country code.","title":"Iso Alpha2","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"shared_countries":{"items":{"type":"string"},"title":"Shared Countries","type":"array"}},"required":["country_code","iso_alpha2","country_name","is_shared_code","notes"],"title":"CountryCodeOut","type":"object"},"CurrencyConversionJobOut":{"properties":{"counts":{"additionalProperties":{"type":"integer"},"title":"Counts","type":"object"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"exchange_rate":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Exchange Rate"},"finished_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Finished At"},"from_currency":{"title":"From Currency","type":"string"},"id":{"title":"Id","type":"integer"},"requested_by_actor":{"title":"Requested By Actor","type":"string"},"requested_by_user_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Requested By User Id"},"started_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Started At"},"status":{"enum":["queued","running","completed","failed"],"title":"Status","type":"string"},"to_currency":{"title":"To Currency","type":"string"}},"required":["id","from_currency","to_currency","status","exchange_rate","created_at","started_at","finished_at","requested_by_user_id","requested_by_actor","error","counts"],"title":"CurrencyConversionJobOut","type":"object"},"CurrencyCreate":{"properties":{"code":{"pattern":"^[A-Z]{3}$","title":"Code","type":"string"},"decimal_places":{"default":2,"maximum":6.0,"minimum":0.0,"title":"Decimal Places","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"name":{"maxLength":64,"minLength":1,"title":"Name","type":"string"},"symbol":{"anyOf":[{"maxLength":8,"type":"string"},{"type":"null"}],"title":"Symbol"}},"required":["code","name"],"title":"CurrencyCreate","type":"object"},"CurrencyExchangeRateCreate":{"properties":{"base_currency":{"pattern":"^[A-Z]{3}$","title":"Base Currency","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"quote_currency":{"pattern":"^[A-Z]{3}$","title":"Quote Currency","type":"string"},"rate":{"anyOf":[{"exclusiveMinimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,10}|(?=[\\d.]{1,21}0*$)\\d{0,10}\\.\\d{0,10}0*$)","type":"string"}],"title":"Rate"},"source":{"default":"manual","enum":["manual","ecb","api_fallback"],"title":"Source","type":"string"},"valid_from":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid From"},"valid_to":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid To"}},"required":["base_currency","quote_currency","rate"],"title":"CurrencyExchangeRateCreate","type":"object"},"CurrencyExchangeRateOut":{"properties":{"base_currency":{"pattern":"^[A-Z]{3}$","title":"Base Currency","type":"string"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"id":{"title":"Id","type":"integer"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"quote_currency":{"pattern":"^[A-Z]{3}$","title":"Quote Currency","type":"string"},"rate":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Rate","type":"string"},"source":{"title":"Source","type":"string"},"valid_from":{"format":"date-time","title":"Valid From","type":"string"},"valid_to":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid To"}},"required":["id","base_currency","quote_currency","rate","source","valid_from","valid_to","notes","created_at"],"title":"CurrencyExchangeRateOut","type":"object"},"CurrencyOut":{"properties":{"code":{"pattern":"^[A-Z]{3}$","title":"Code","type":"string"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"decimal_places":{"default":2,"maximum":6.0,"minimum":0.0,"title":"Decimal Places","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"name":{"maxLength":64,"minLength":1,"title":"Name","type":"string"},"symbol":{"anyOf":[{"maxLength":8,"type":"string"},{"type":"null"}],"title":"Symbol"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["code","name","created_at","updated_at"],"title":"CurrencyOut","type":"object"},"CurrencyRateCreate":{"properties":{"base_currency":{"pattern":"^[A-Z]{3}$","title":"Base Currency","type":"string"},"note":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Note"},"quote_currency":{"pattern":"^[A-Z]{3}$","title":"Quote Currency","type":"string"},"rate":{"anyOf":[{"exclusiveMinimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,10}|(?=[\\d.]{1,21}0*$)\\d{0,10}\\.\\d{0,10}0*$)","type":"string"}],"title":"Rate"}},"required":["base_currency","quote_currency","rate"],"title":"CurrencyRateCreate","type":"object"},"CurrencyRateRow":{"properties":{"id":{"title":"Id","type":"integer"},"note":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Note"},"pair":{"title":"Pair","type":"string"},"rate":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Rate","type":"string"},"source":{"title":"Source","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["id","pair","rate","source","updated_at"],"title":"CurrencyRateRow","type":"object"},"CurrencyRateSummary":{"properties":{"active_pairs":{"title":"Active Pairs","type":"integer"},"avg_eur_gbp":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Avg Eur Gbp"},"avg_eur_usd":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Avg Eur Usd"},"last_ecb_sync":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Last Ecb Sync"},"manual_override_count":{"title":"Manual Override Count","type":"integer"}},"required":["active_pairs","last_ecb_sync","avg_eur_usd","avg_eur_gbp","manual_override_count"],"title":"CurrencyRateSummary","type":"object"},"CurrencyRateUpdate":{"additionalProperties":false,"properties":{"rate":{"anyOf":[{"exclusiveMinimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,10}|(?=[\\d.]{1,21}0*$)\\d{0,10}\\.\\d{0,10}0*$)","type":"string"}],"title":"Rate"}},"required":["rate"],"title":"CurrencyRateUpdate","type":"object"},"CurrencyUpdate":{"additionalProperties":false,"properties":{"decimal_places":{"anyOf":[{"maximum":6.0,"minimum":0.0,"type":"integer"},{"type":"null"}],"title":"Decimal Places"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"name":{"anyOf":[{"maxLength":64,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"},"symbol":{"anyOf":[{"maxLength":8,"type":"string"},{"type":"null"}],"title":"Symbol"}},"title":"CurrencyUpdate","type":"object"},"CurrentUserResponse":{"properties":{"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"},"force_mfa_enrollment":{"default":false,"title":"Force Mfa Enrollment","type":"boolean"},"force_password_change":{"default":false,"title":"Force Password Change","type":"boolean"},"id":{"title":"Id","type":"integer"},"mfa_enrolled_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Mfa Enrolled At"},"role":{"title":"Role","type":"string"},"username":{"title":"Username","type":"string"}},"required":["id","username","role"],"title":"CurrentUserResponse","type":"object"},"DestinationCreate":{"properties":{"country_iso2":{"anyOf":[{"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Country Iso2"},"destination_type":{"anyOf":[{"anyOf":[{"enum":["fixed","mobile","premium","special","other"],"type":"string"},{"type":"string"}],"maxLength":64},{"type":"null"}],"title":"Destination Type"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"parent_destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Parent Destination Id"},"parent_name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Parent Name"},"prefixes":{"anyOf":[{"items":{"type":"string"},"maxItems":500,"type":"array"},{"type":"null"}],"title":"Prefixes"}},"required":["name"],"title":"DestinationCreate","type":"object"},"DestinationGroupCreate":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"destination_ids":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Destination Ids"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"kind":{"default":"manual","enum":["tag_based","manual"],"title":"Kind","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"tags":{"items":{"type":"string"},"title":"Tags","type":"array"}},"required":["name"],"title":"DestinationGroupCreate","type":"object"},"DestinationGroupMemberCreate":{"properties":{"destination_id":{"title":"Destination Id","type":"integer"}},"required":["destination_id"],"title":"DestinationGroupMemberCreate","type":"object"},"DestinationGroupMemberOut":{"properties":{"destination_id":{"title":"Destination Id","type":"integer"},"group_id":{"title":"Group Id","type":"integer"},"id":{"title":"Id","type":"integer"}},"required":["id","group_id","destination_id"],"title":"DestinationGroupMemberOut","type":"object"},"DestinationGroupOut":{"properties":{"created_at":{"format":"date-time","title":"Created At","type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"id":{"title":"Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"kind":{"default":"manual","enum":["tag_based","manual"],"title":"Kind","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"tags":{"items":{"type":"string"},"title":"Tags","type":"array"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["name","id","created_at","updated_at"],"title":"DestinationGroupOut","type":"object"},"DestinationGroupUpdate":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"kind":{"anyOf":[{"enum":["tag_based","manual"],"type":"string"},{"type":"null"}],"title":"Kind"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tags"}},"title":"DestinationGroupUpdate","type":"object"},"DestinationImportItem":{"properties":{"country_iso2":{"anyOf":[{"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Country Iso2"},"destination_type":{"anyOf":[{"anyOf":[{"enum":["fixed","mobile","premium","special","other"],"type":"string"},{"type":"string"}],"maxLength":64},{"type":"null"}],"title":"Destination Type"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"parent_name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Parent Name"},"prefixes":{"items":{"type":"string"},"title":"Prefixes","type":"array"}},"required":["name"],"title":"DestinationImportItem","type":"object"},"DestinationImportOut":{"properties":{"destinations_created":{"title":"Destinations Created","type":"integer"},"destinations_updated":{"title":"Destinations Updated","type":"integer"},"prefixes_created":{"title":"Prefixes Created","type":"integer"},"prefixes_skipped":{"title":"Prefixes Skipped","type":"integer"}},"required":["destinations_created","destinations_updated","prefixes_created","prefixes_skipped"],"title":"DestinationImportOut","type":"object"},"DestinationImportRequest":{"properties":{"destinations":{"items":{"$ref":"#/components/schemas/DestinationImportItem"},"minItems":1,"title":"Destinations","type":"array"}},"required":["destinations"],"title":"DestinationImportRequest","type":"object"},"DestinationLookupOut":{"properties":{"country_iso2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Country Iso2"},"destination_id":{"title":"Destination Id","type":"integer"},"name":{"title":"Name","type":"string"},"prefix":{"title":"Prefix","type":"string"}},"required":["destination_id","prefix","name"],"title":"DestinationLookupOut","type":"object"},"DestinationOut":{"properties":{"code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Code"},"country_iso2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Country Iso2"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"destination_type":{"anyOf":[{"anyOf":[{"enum":["fixed","mobile","premium","special","other"],"type":"string"},{"type":"string"}],"maxLength":64},{"type":"null"}],"title":"Destination Type"},"id":{"title":"Id","type":"integer"},"name":{"title":"Name","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"parent_destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Parent Destination Id"},"prefix_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Prefix Count"},"sample_prefixes":{"items":{"type":"string"},"title":"Sample Prefixes","type":"array"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["id","name","created_at","updated_at"],"title":"DestinationOut","type":"object"},"DestinationPrefixBatchCreate":{"properties":{"prefixes":{"items":{"type":"string"},"maxItems":500,"minItems":1,"title":"Prefixes","type":"array"}},"required":["prefixes"],"title":"DestinationPrefixBatchCreate","type":"object"},"DestinationPrefixBatchOut":{"properties":{"created":{"items":{"$ref":"#/components/schemas/DestinationPrefixOut"},"title":"Created","type":"array"},"failed":{"items":{"type":"string"},"title":"Failed","type":"array"},"skipped":{"items":{"type":"string"},"title":"Skipped","type":"array"}},"required":["created"],"title":"DestinationPrefixBatchOut","type":"object"},"DestinationPrefixCreate":{"properties":{"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"prefix":{"maxLength":15,"minLength":1,"pattern":"^[0-9]+$","title":"Prefix","type":"string"},"valid_from":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid From"},"valid_to":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid To"}},"required":["prefix"],"title":"DestinationPrefixCreate","type":"object"},"DestinationPrefixOut":{"properties":{"country_detected":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Country Detected"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"destination_id":{"title":"Destination Id","type":"integer"},"id":{"title":"Id","type":"integer"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"prefix":{"maxLength":15,"minLength":1,"pattern":"^[0-9]+$","title":"Prefix","type":"string"},"valid_from":{"format":"date-time","title":"Valid From","type":"string"},"valid_to":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid To"}},"required":["prefix","valid_from","id","destination_id","created_at"],"title":"DestinationPrefixOut","type":"object"},"DestinationPrefixUpdate":{"properties":{"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"prefix":{"anyOf":[{"maxLength":15,"minLength":1,"pattern":"^[0-9]+$","type":"string"},{"type":"null"}],"title":"Prefix"},"valid_from":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid From"},"valid_to":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid To"}},"title":"DestinationPrefixUpdate","type":"object"},"DestinationUpdate":{"properties":{"country_iso2":{"anyOf":[{"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Country Iso2"},"destination_type":{"anyOf":[{"anyOf":[{"enum":["fixed","mobile","premium","special","other"],"type":"string"},{"type":"string"}],"maxLength":64},{"type":"null"}],"title":"Destination Type"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"parent_destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Parent Destination Id"},"parent_name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Parent Name"}},"title":"DestinationUpdate","type":"object"},"DeviceCreate":{"properties":{"associated_originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Associated Originator Id"},"associated_terminator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Associated Terminator Id"},"codec":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Codec"},"host":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Host"},"inbound_ip_whitelist":{"items":{"anyOf":[{"format":"ipv4","type":"string"},{"format":"ipv6","type":"string"},{"type":"string"}]},"title":"Inbound Ip Whitelist","type":"array"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"max_concurrent_calls":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Max Concurrent Calls"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"nat":{"default":false,"title":"Nat","type":"boolean"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"outbound_proxy":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Outbound Proxy"},"port":{"anyOf":[{"exclusiveMinimum":0.0,"maximum":65535.0,"type":"integer"},{"type":"null"}],"default":5060,"title":"Port"},"register_expires_seconds":{"anyOf":[{"maximum":86400.0,"minimum":60.0,"type":"integer"},{"type":"null"}],"title":"Register Expires Seconds"},"sip_realm":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"Sip Realm"},"sip_username":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"Sip Username"},"type":{"enum":["static","dynamic"],"title":"Type","type":"string"}},"required":["name","type"],"title":"DeviceCreate","type":"object"},"DeviceOut":{"properties":{"associated_originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Associated Originator Id"},"associated_terminator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Associated Terminator Id"},"codec":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Codec"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"host":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Host"},"id":{"title":"Id","type":"integer"},"inbound_ip_whitelist":{"items":{"anyOf":[{"format":"ipv4","type":"string"},{"format":"ipv6","type":"string"},{"type":"string"}]},"title":"Inbound Ip Whitelist","type":"array"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"max_concurrent_calls":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Max Concurrent Calls"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"nat":{"default":false,"title":"Nat","type":"boolean"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"outbound_proxy":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Outbound Proxy"},"port":{"anyOf":[{"exclusiveMinimum":0.0,"maximum":65535.0,"type":"integer"},{"type":"null"}],"default":5060,"title":"Port"},"register_expires_seconds":{"anyOf":[{"maximum":86400.0,"minimum":60.0,"type":"integer"},{"type":"null"}],"title":"Register Expires Seconds"},"sip_realm":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"Sip Realm"},"sip_username":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"Sip Username"},"type":{"enum":["static","dynamic"],"title":"Type","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["name","type","id","created_at","updated_at"],"title":"DeviceOut","type":"object"},"DeviceUpdate":{"properties":{"codec":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Codec"},"host":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Host"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"max_concurrent_calls":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Max Concurrent Calls"},"nat":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Nat"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"port":{"anyOf":[{"exclusiveMinimum":0.0,"maximum":65535.0,"type":"integer"},{"type":"null"}],"title":"Port"},"register_expires_seconds":{"anyOf":[{"maximum":86400.0,"minimum":60.0,"type":"integer"},{"type":"null"}],"title":"Register Expires Seconds"}},"title":"DeviceUpdate","type":"object"},"DuplicateRow":{"properties":{"key":{"title":"Key","type":"string"},"raw":{"additionalProperties":true,"title":"Raw","type":"object"},"row_number":{"title":"Row Number","type":"integer"}},"required":["row_number","key","raw"],"title":"DuplicateRow","type":"object"},"EcbSyncResponse":{"properties":{"rates":{"items":{"type":"string"},"title":"Rates","type":"array"},"synced":{"title":"Synced","type":"integer"},"synced_at":{"format":"date-time","title":"Synced At","type":"string"}},"required":["synced","rates","synced_at"],"title":"EcbSyncResponse","type":"object"},"EdgeView":{"description":"Directed edge in the routing topology graph.","properties":{"calls_5min":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Calls 5Min"},"source":{"title":"Source","type":"string"},"success_rate":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Success Rate"},"target":{"title":"Target","type":"string"},"type":{"enum":["routes_to","fallback","priority","contains"],"title":"Type","type":"string"},"weight":{"title":"Weight","type":"number"}},"required":["source","target","type","weight"],"title":"EdgeView","type":"object"},"EmailTemplatePreviewRequest":{"properties":{"body":{"maxLength":50000,"minLength":1,"title":"Body","type":"string"},"sample_data":{"additionalProperties":true,"title":"Sample Data","type":"object"},"subject":{"default":"","maxLength":500,"title":"Subject","type":"string"}},"required":["body"],"title":"EmailTemplatePreviewRequest","type":"object"},"EmailTemplatePreviewResponse":{"properties":{"html":{"title":"Html","type":"string"},"subject":{"title":"Subject","type":"string"}},"required":["subject","html"],"title":"EmailTemplatePreviewResponse","type":"object"},"EnrollResponse":{"properties":{"provisioning_uri":{"title":"Provisioning Uri","type":"string"},"qr_png_base64":{"title":"Qr Png Base64","type":"string"},"recovery_codes":{"items":{"type":"string"},"title":"Recovery Codes","type":"array"},"secret":{"title":"Secret","type":"string"}},"required":["secret","provisioning_uri","qr_png_base64","recovery_codes"],"title":"EnrollResponse","type":"object"},"ExchangeRateLookupOut":{"properties":{"at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"At"},"base":{"pattern":"^[A-Z]{3}$","title":"Base","type":"string"},"cached":{"title":"Cached","type":"boolean"},"quote":{"pattern":"^[A-Z]{3}$","title":"Quote","type":"string"},"rate":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Rate","type":"string"},"source":{"title":"Source","type":"string"}},"required":["base","quote","rate","at","source","cached"],"title":"ExchangeRateLookupOut","type":"object"},"ExtraPermissionIn":{"properties":{"grant_or_deny":{"title":"Grant Or Deny","type":"boolean"},"permission_key":{"pattern":"^[a-z0-9_]+\\.[a-z0-9_.]+$","title":"Permission Key","type":"string"}},"required":["permission_key","grant_or_deny"],"title":"ExtraPermissionIn","type":"object"},"ExtraPermissionOut":{"properties":{"grant_or_deny":{"title":"Grant Or Deny","type":"boolean"},"granted_at":{"format":"date-time","title":"Granted At","type":"string"},"granted_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Granted By"},"permission_key":{"pattern":"^[a-z0-9_]+\\.[a-z0-9_.]+$","title":"Permission Key","type":"string"},"user_account_id":{"title":"User Account Id","type":"integer"}},"required":["permission_key","grant_or_deny","user_account_id","granted_at"],"title":"ExtraPermissionOut","type":"object"},"FailoverPolicyCreate":{"properties":{"final_causes":{"items":{"type":"integer"},"title":"Final Causes","type":"array"},"invite_timeout_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Invite Timeout Ms"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"max_total_attempts":{"default":3,"title":"Max Total Attempts","type":"integer"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"pdd_threshold_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pdd Threshold Ms"},"rerouteable_causes":{"items":{"type":"integer"},"title":"Rerouteable Causes","type":"array"},"sip_status_fallback":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Sip Status Fallback"}},"required":["name"],"title":"FailoverPolicyCreate","type":"object"},"FailoverPolicyOut":{"properties":{"created_at":{"format":"date-time","title":"Created At","type":"string"},"final_causes":{"items":{"type":"integer"},"title":"Final Causes","type":"array"},"id":{"title":"Id","type":"integer"},"invite_timeout_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Invite Timeout Ms"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"max_total_attempts":{"default":3,"title":"Max Total Attempts","type":"integer"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"pdd_threshold_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pdd Threshold Ms"},"rerouteable_causes":{"items":{"type":"integer"},"title":"Rerouteable Causes","type":"array"},"sip_status_fallback":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Sip Status Fallback"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["name","id","created_at","updated_at"],"title":"FailoverPolicyOut","type":"object"},"FailoverPolicyUpdate":{"additionalProperties":false,"properties":{"final_causes":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Final Causes"},"invite_timeout_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Invite Timeout Ms"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"max_total_attempts":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Total Attempts"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"pdd_threshold_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pdd Threshold Ms"},"rerouteable_causes":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Rerouteable Causes"},"sip_status_fallback":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Sip Status Fallback"}},"title":"FailoverPolicyUpdate","type":"object"},"FallbackTerminator":{"description":"Fallback terminator visible in the route chain.","properties":{"id":{"title":"Id","type":"integer"},"name":{"title":"Name","type":"string"},"preference":{"title":"Preference","type":"integer"}},"required":["id","name","preference"],"title":"FallbackTerminator","type":"object"},"FutureTariffCreate":{"properties":{"destination_id":{"title":"Destination Id","type":"integer"},"effective_at":{"format":"date-time","title":"Effective At","type":"string"},"new_rate":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,8}|(?=[\\d.]{1,15}0*$)\\d{0,8}\\.\\d{0,6}0*$)","type":"string"}],"title":"New Rate"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"notification_sent_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Notification Sent At"}},"required":["destination_id","new_rate","effective_at"],"title":"FutureTariffCreate","type":"object"},"FutureTariffOut":{"properties":{"applied_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Applied At"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"destination_id":{"title":"Destination Id","type":"integer"},"effective_at":{"format":"date-time","title":"Effective At","type":"string"},"id":{"title":"Id","type":"integer"},"new_rate":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"New Rate","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"notification_sent_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Notification Sent At"},"tariff_id":{"title":"Tariff Id","type":"integer"}},"required":["id","tariff_id","destination_id","new_rate","effective_at","notification_sent_at","applied_at","notes","created_at"],"title":"FutureTariffOut","type":"object"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"title":"Detail","type":"array"}},"title":"HTTPValidationError","type":"object"},"ImapConfig":{"properties":{"auth_type":{"default":"oauth2","enum":["oauth2","basic"],"title":"Auth Type","type":"string"},"enabled":{"default":false,"title":"Enabled","type":"boolean"},"filter":{"default":"has:attachment","maxLength":255,"title":"Filter","type":"string"},"folder":{"default":"INBOX","maxLength":255,"title":"Folder","type":"string"},"host":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Host"},"oauth_token_id":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Oauth Token Id"},"password_id":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Password Id"},"port":{"anyOf":[{"maximum":65535.0,"minimum":1.0,"type":"integer"},{"type":"null"}],"title":"Port"},"provider":{"anyOf":[{"enum":["gmail","microsoft365"],"type":"string"},{"type":"null"}],"title":"Provider"},"username":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Username"}},"title":"ImapConfig","type":"object"},"InviteSetPasswordPayload":{"properties":{"password":{"maxLength":128,"minLength":12,"title":"Password","type":"string"}},"required":["password"],"title":"InviteSetPasswordPayload","type":"object"},"InvoiceBatchGeneratePreviewResponse":{"properties":{"items":{"items":{"$ref":"#/components/schemas/InvoiceGeneratePreviewItem"},"title":"Items","type":"array"},"skipped":{"items":{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"object"},"title":"Skipped","type":"array"},"totals":{"additionalProperties":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"integer"}]},"title":"Totals","type":"object"}},"required":["items","skipped","totals"],"title":"InvoiceBatchGeneratePreviewResponse","type":"object"},"InvoiceBatchGenerateRequest":{"properties":{"company_ids":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Company Ids"},"period_end":{"format":"date","title":"Period End","type":"string"},"period_start":{"format":"date","title":"Period Start","type":"string"}},"required":["period_start","period_end"],"title":"InvoiceBatchGenerateRequest","type":"object"},"InvoiceBatchGenerateResponse":{"properties":{"generated":{"items":{"$ref":"#/components/schemas/InvoiceRead"},"title":"Generated","type":"array"},"skipped":{"items":{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"object"},"title":"Skipped","type":"array"}},"required":["generated","skipped"],"title":"InvoiceBatchGenerateResponse","type":"object"},"InvoiceDetailRead":{"properties":{"company_id":{"title":"Company Id","type":"integer"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"currency":{"pattern":"^[A-Z]{3}$","title":"Currency","type":"string"},"due_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Due At"},"id":{"title":"Id","type":"integer"},"invoice_number":{"title":"Invoice Number","type":"string"},"issued_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Issued At"},"lines":{"items":{"$ref":"#/components/schemas/InvoiceLineRead"},"title":"Lines","type":"array"},"paid_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Paid At"},"pdf_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pdf Url"},"period_end":{"format":"date","title":"Period End","type":"string"},"period_start":{"format":"date","title":"Period Start","type":"string"},"status":{"enum":["draft","issued","paid","overdue","cancelled"],"title":"Status","type":"string"},"subtotal":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Subtotal","type":"string"},"total":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Total","type":"string"},"type":{"default":"customer","enum":["customer","supplier","reseller"],"title":"Type","type":"string"},"vat_amount":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Vat Amount","type":"string"},"vat_percent":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Vat Percent","type":"string"}},"required":["id","invoice_number","company_id","period_start","period_end","subtotal","vat_percent","vat_amount","total","currency","status","issued_at","due_at","paid_at","pdf_url","created_at"],"title":"InvoiceDetailRead","type":"object"},"InvoiceGeneratePreviewItem":{"properties":{"company_id":{"title":"Company Id","type":"integer"},"company_name":{"title":"Company Name","type":"string"},"currency":{"pattern":"^[A-Z]{3}$","title":"Currency","type":"string"},"lines":{"items":{"$ref":"#/components/schemas/InvoiceGeneratePreviewLine"},"title":"Lines","type":"array"},"period_end":{"format":"date","title":"Period End","type":"string"},"period_start":{"format":"date","title":"Period Start","type":"string"},"rate_check_status":{"default":"ok","enum":["ok","warning"],"title":"Rate Check Status","type":"string"},"rate_check_warnings":{"items":{"type":"string"},"title":"Rate Check Warnings","type":"array"},"subtotal":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Subtotal","type":"string"},"total":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Total","type":"string"},"vat_amount":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Vat Amount","type":"string"},"vat_percent":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Vat Percent","type":"string"}},"required":["company_id","company_name","period_start","period_end","currency","subtotal","vat_percent","vat_amount","total","lines"],"title":"InvoiceGeneratePreviewItem","type":"object"},"InvoiceGeneratePreviewLine":{"properties":{"amount":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Amount","type":"string"},"calls_count":{"title":"Calls Count","type":"integer"},"company_id":{"title":"Company Id","type":"integer"},"company_name":{"title":"Company Name","type":"string"},"description":{"title":"Description","type":"string"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"expected_rate":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Expected Rate"},"rate_check_status":{"default":"ok","enum":["ok","warning"],"title":"Rate Check Status","type":"string"},"rate_delta":{"default":"0","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Rate Delta","type":"string"},"total_minutes":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Total Minutes","type":"string"},"total_seconds":{"title":"Total Seconds","type":"integer"},"unit_rate":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Unit Rate","type":"string"},"unrated_calls":{"default":0,"title":"Unrated Calls","type":"integer"}},"required":["company_id","company_name","destination_id","description","calls_count","total_seconds","total_minutes","unit_rate","amount"],"title":"InvoiceGeneratePreviewLine","type":"object"},"InvoiceGenerateRequest":{"properties":{"company_id":{"title":"Company Id","type":"integer"},"period_end":{"format":"date","title":"Period End","type":"string"},"period_start":{"format":"date","title":"Period Start","type":"string"}},"required":["company_id","period_start","period_end"],"title":"InvoiceGenerateRequest","type":"object"},"InvoiceLineRead":{"properties":{"amount":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Amount","type":"string"},"calls_count":{"title":"Calls Count","type":"integer"},"description":{"title":"Description","type":"string"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"id":{"title":"Id","type":"integer"},"invoice_id":{"title":"Invoice Id","type":"integer"},"total_minutes":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Total Minutes","type":"string"},"total_seconds":{"title":"Total Seconds","type":"integer"},"unit_rate":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Unit Rate","type":"string"}},"required":["id","invoice_id","description","destination_id","calls_count","total_seconds","total_minutes","unit_rate","amount"],"title":"InvoiceLineRead","type":"object"},"InvoiceListResponse":{"properties":{"items":{"items":{"$ref":"#/components/schemas/InvoiceRead"},"title":"Items","type":"array"},"total":{"title":"Total","type":"integer"}},"required":["items","total"],"title":"InvoiceListResponse","type":"object"},"InvoiceRead":{"properties":{"company_id":{"title":"Company Id","type":"integer"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"currency":{"pattern":"^[A-Z]{3}$","title":"Currency","type":"string"},"due_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Due At"},"id":{"title":"Id","type":"integer"},"invoice_number":{"title":"Invoice Number","type":"string"},"issued_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Issued At"},"paid_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Paid At"},"pdf_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pdf Url"},"period_end":{"format":"date","title":"Period End","type":"string"},"period_start":{"format":"date","title":"Period Start","type":"string"},"status":{"enum":["draft","issued","paid","overdue","cancelled"],"title":"Status","type":"string"},"subtotal":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Subtotal","type":"string"},"total":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Total","type":"string"},"type":{"default":"customer","enum":["customer","supplier","reseller"],"title":"Type","type":"string"},"vat_amount":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Vat Amount","type":"string"},"vat_percent":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Vat Percent","type":"string"}},"required":["id","invoice_number","company_id","period_start","period_end","subtotal","vat_percent","vat_amount","total","currency","status","issued_at","due_at","paid_at","pdf_url","created_at"],"title":"InvoiceRead","type":"object"},"InvoiceStatusUpdate":{"properties":{"status":{"enum":["paid","overdue","cancelled"],"title":"Status","type":"string"}},"required":["status"],"title":"InvoiceStatusUpdate","type":"object"},"LiveChartRow":{"properties":{"answered_calls":{"default":0,"title":"Answered Calls","type":"integer"},"asr_pct":{"default":"0","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Asr Pct","type":"string"},"calls":{"default":0,"title":"Calls","type":"integer"},"id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Id"},"label":{"title":"Label","type":"string"},"margin":{"default":"0","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Margin","type":"string"},"revenue":{"default":"0","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue","type":"string"}},"required":["label"],"title":"LiveChartRow","type":"object"},"LiveKpi":{"properties":{"acd_seconds":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Acd Seconds"},"asr_pct":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Asr Pct","type":"string"},"margin":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Margin","type":"string"},"revenue":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue","type":"string"},"total_calls":{"title":"Total Calls","type":"integer"}},"required":["total_calls","asr_pct","revenue","margin"],"title":"LiveKpi","type":"object"},"LiveReportResponse":{"properties":{"asr_ranking":{"items":{"$ref":"#/components/schemas/LiveChartRow"},"title":"Asr Ranking","type":"array"},"generated_at":{"format":"date-time","title":"Generated At","type":"string"},"kpi":{"$ref":"#/components/schemas/LiveKpi"},"range":{"title":"Range","type":"string"},"top_destinations":{"items":{"$ref":"#/components/schemas/LiveChartRow"},"title":"Top Destinations","type":"array"},"top_originators":{"items":{"$ref":"#/components/schemas/LiveChartRow"},"title":"Top Originators","type":"array"}},"required":["range","generated_at","kpi","top_destinations","top_originators","asr_ranking"],"title":"LiveReportResponse","type":"object"},"LoginAttemptOut":{"properties":{"failure_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Failure Reason"},"id":{"title":"Id","type":"integer"},"ip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ip"},"ip_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ip Address"},"occurred_at":{"format":"date-time","title":"Occurred At","type":"string"},"status":{"title":"Status","type":"string"},"success":{"title":"Success","type":"boolean"},"ts":{"format":"date-time","title":"Ts","type":"string"},"user_agent":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Agent"}},"required":["id","occurred_at","ts","success","status"],"title":"LoginAttemptOut","type":"object"},"LoginRequest":{"properties":{"email":{"anyOf":[{"maxLength":255,"minLength":3,"type":"string"},{"type":"null"}],"title":"Email"},"password":{"maxLength":256,"minLength":1,"title":"Password","type":"string"},"username":{"anyOf":[{"maxLength":128,"minLength":3,"type":"string"},{"type":"null"}],"title":"Username"}},"required":["password"],"title":"LoginRequest","type":"object"},"LoginResponse":{"properties":{"access_token":{"title":"Access Token","type":"string"},"expires_in":{"title":"Expires In","type":"integer"},"force_mfa_enrollment":{"default":false,"title":"Force Mfa Enrollment","type":"boolean"},"force_password_change":{"default":false,"title":"Force Password Change","type":"boolean"},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message"},"mfa_enrolled_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Mfa Enrolled At"},"refresh_token":{"title":"Refresh Token","type":"string"},"role":{"title":"Role","type":"string"},"token_type":{"default":"bearer","title":"Token Type","type":"string"},"username":{"title":"Username","type":"string"}},"required":["access_token","refresh_token","expires_in","username","role"],"title":"LoginResponse","type":"object"},"LowBalanceCompanyRead":{"properties":{"company_id":{"title":"Company Id","type":"integer"},"company_name":{"title":"Company Name","type":"string"},"currency":{"pattern":"^[A-Z]{3}$","title":"Currency","type":"string"},"current_balance":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Current Balance","type":"string"},"status":{"enum":["warning","critical","suspended"],"title":"Status","type":"string"}},"required":["company_id","company_name","current_balance","currency","status"],"title":"LowBalanceCompanyRead","type":"object"},"MCPToolConfig":{"properties":{"description":{"title":"Description","type":"string"},"enabled":{"title":"Enabled","type":"boolean"},"input_schema":{"additionalProperties":true,"title":"Input Schema","type":"object"},"name":{"title":"Name","type":"string"},"permission":{"title":"Permission","type":"string"},"requires_confirmation":{"title":"Requires Confirmation","type":"boolean"}},"required":["name","description","permission","requires_confirmation","enabled","input_schema"],"title":"MCPToolConfig","type":"object"},"MCPToolUpdate":{"properties":{"enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Enabled"},"requires_confirmation":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Requires Confirmation"}},"title":"MCPToolUpdate","type":"object"},"MatchedRoutingRule":{"description":"Routing rule selected by the simulator.","properties":{"destination_id":{"title":"Destination Id","type":"integer"},"destination_name":{"title":"Destination Name","type":"string"},"id":{"title":"Id","type":"integer"}},"required":["id","destination_id","destination_name"],"title":"MatchedRoutingRule","type":"object"},"MatrixCdrSample":{"properties":{"call_id":{"title":"Call Id","type":"string"},"disposition":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Disposition"},"duration":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Duration"},"duration_sec":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Duration Sec"},"rejection_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rejection Reason"},"revenue":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Revenue"},"started_at":{"title":"Started At","type":"string"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},"required":["call_id","started_at"],"title":"MatrixCdrSample","type":"object"},"MatrixCellDetail":{"properties":{"cdr_sample":{"items":{"$ref":"#/components/schemas/MatrixCdrSample"},"title":"Cdr Sample","type":"array"},"did":{"title":"Did","type":"integer"},"oid":{"title":"Oid","type":"integer"},"trend":{"items":{"$ref":"#/components/schemas/MatrixTrendPoint"},"title":"Trend","type":"array"}},"required":["oid","did","cdr_sample","trend"],"title":"MatrixCellDetail","type":"object"},"MatrixCellValue":{"properties":{"did":{"title":"Did","type":"integer"},"oid":{"title":"Oid","type":"integer"},"value":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Value","type":"string"}},"required":["oid","did","value"],"title":"MatrixCellValue","type":"object"},"MatrixDimension":{"properties":{"id":{"title":"Id","type":"integer"},"label":{"title":"Label","type":"string"}},"required":["id","label"],"title":"MatrixDimension","type":"object"},"MatrixTrendPoint":{"properties":{"day":{"title":"Day","type":"string"},"value":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Value","type":"string"}},"required":["day","value"],"title":"MatrixTrendPoint","type":"object"},"MfaRequiredResponse":{"properties":{"mfa_session_token":{"title":"Mfa Session Token","type":"string"},"requires_mfa":{"default":true,"title":"Requires Mfa","type":"boolean"}},"required":["mfa_session_token"],"title":"MfaRequiredResponse","type":"object"},"MovementsLogResponse":{"properties":{"items":{"items":{"$ref":"#/components/schemas/BalanceMovementRead"},"title":"Items","type":"array"},"total":{"title":"Total","type":"integer"}},"required":["items","total"],"title":"MovementsLogResponse","type":"object"},"NocAggregateOut":{"additionalProperties":true,"properties":{"acd_5m_seconds":{"title":"Acd 5M Seconds","type":"number"},"active_calls":{"title":"Active Calls","type":"integer"},"aloc_5m_seconds":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Aloc 5M Seconds"},"asr_5m_percent":{"title":"Asr 5M Percent","type":"number"},"calls_sparkline":{"items":{"$ref":"#/components/schemas/NocSparklinePointOut"},"title":"Calls Sparkline","type":"array"},"cps_1m":{"title":"Cps 1M","type":"number"},"fas_5m_percent":{"title":"Fas 5M Percent","type":"number"},"pdd_p95_ms":{"title":"Pdd P95 Ms","type":"number"},"recent_alerts":{"items":{"$ref":"#/components/schemas/NocRecentAlertOut"},"title":"Recent Alerts","type":"array"},"snapshot_at":{"title":"Snapshot At","type":"string"},"system_health":{"items":{"$ref":"#/components/schemas/NocSystemHealthOut"},"title":"System Health","type":"array"},"terminators":{"items":{"$ref":"#/components/schemas/NocTerminatorAggregateOut"},"title":"Terminators","type":"array"}},"required":["snapshot_at","active_calls","cps_1m","asr_5m_percent","acd_5m_seconds","aloc_5m_seconds","fas_5m_percent","pdd_p95_ms","terminators","system_health","calls_sparkline","recent_alerts"],"title":"NocAggregateOut","type":"object"},"NocRecentAlertOut":{"additionalProperties":true,"properties":{"name":{"title":"Name","type":"string"},"severity":{"title":"Severity","type":"string"},"starts_at":{"title":"Starts At","type":"string"},"summary":{"title":"Summary","type":"string"}},"required":["name","severity","summary","starts_at"],"title":"NocRecentAlertOut","type":"object"},"NocSparklinePointOut":{"additionalProperties":true,"properties":{"bucket":{"title":"Bucket","type":"string"},"calls":{"title":"Calls","type":"integer"}},"required":["bucket","calls"],"title":"NocSparklinePointOut","type":"object"},"NocSystemHealthOut":{"additionalProperties":true,"properties":{"name":{"title":"Name","type":"string"},"status":{"title":"Status","type":"string"},"total":{"title":"Total","type":"integer"},"up":{"title":"Up","type":"integer"}},"required":["name","status","up","total"],"title":"NocSystemHealthOut","type":"object"},"NocTerminatorAggregateOut":{"additionalProperties":true,"properties":{"asr":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Asr"},"calls":{"title":"Calls","type":"integer"},"fas":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Fas"},"id":{"title":"Id","type":"integer"},"name":{"title":"Name","type":"string"},"pdd_avg":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Pdd Avg"}},"required":["id","name","calls"],"title":"NocTerminatorAggregateOut","type":"object"},"NocTestRunOut":{"properties":{"acd_sec":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Acd Sec"},"asr_pct":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Asr Pct"},"calls_answered":{"title":"Calls Answered","type":"integer"},"calls_attempted":{"title":"Calls Attempted","type":"integer"},"destination_country_iso2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Destination Country Iso2"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"destination_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Destination Name"},"fas_pct":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Fas Pct"},"finished_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Finished At"},"id":{"title":"Id","type":"integer"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"pdd_ms_avg":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Pdd Ms Avg"},"started_at":{"format":"date-time","title":"Started At","type":"string"},"status":{"enum":["queued","running","completed","failed"],"title":"Status","type":"string"},"terminator_id":{"title":"Terminator Id","type":"integer"},"terminator_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Terminator Name"},"ticket_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Ticket Id"}},"required":["id","ticket_id","terminator_id","destination_id","started_at","finished_at","status","calls_attempted","calls_answered","asr_pct","acd_sec","pdd_ms_avg","fas_pct","notes"],"title":"NocTestRunOut","type":"object"},"NocTtTestOut":{"properties":{"acd_sec":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Acd Sec"},"asr_pct":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Asr Pct"},"calls_answered":{"title":"Calls Answered","type":"integer"},"calls_attempted":{"title":"Calls Attempted","type":"integer"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"fas_pct":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Fas Pct"},"finished_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Finished At"},"id":{"title":"Id","type":"integer"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"pdd_ms_avg":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Pdd Ms Avg"},"started_at":{"format":"date-time","title":"Started At","type":"string"},"status":{"enum":["queued","running","completed","failed"],"title":"Status","type":"string"},"terminator_id":{"title":"Terminator Id","type":"integer"},"ticket_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Ticket Id"}},"required":["id","ticket_id","terminator_id","destination_id","started_at","finished_at","status","calls_attempted","calls_answered","asr_pct","acd_sec","pdd_ms_avg","fas_pct","notes"],"title":"NocTtTestOut","type":"object"},"NodeView":{"description":"Node in the routing topology graph.","properties":{"calls_5min":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Calls 5Min"},"fas_percent":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Fas Percent"},"id":{"title":"Id","type":"string"},"label":{"title":"Label","type":"string"},"metadata":{"additionalProperties":true,"title":"Metadata","type":"object"},"pdd_avg_ms":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Pdd Avg Ms"},"status":{"anyOf":[{"enum":["healthy","degraded","down"],"type":"string"},{"type":"null"}],"title":"Status"},"type":{"enum":["originator","destination_group","destination","terminator","routing_plan"],"title":"Type","type":"string"}},"required":["id","type","label","metadata"],"title":"NodeView","type":"object"},"OfferBaseRateOut":{"properties":{"base_rate":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Base Rate","type":"string"},"destination_id":{"title":"Destination Id","type":"integer"},"effective_rate":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Effective Rate","type":"string"},"multiplier":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Multiplier","type":"string"},"tariff_id":{"title":"Tariff Id","type":"integer"}},"required":["tariff_id","destination_id","base_rate","effective_rate","multiplier"],"title":"OfferBaseRateOut","type":"object"},"OfferCreate":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"destination_id":{"title":"Destination Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"override_rate":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"title":"Override Rate"},"scope":{"default":"all_customers","enum":["all_customers","company_subset"],"title":"Scope","type":"string"},"scope_json":{"additionalProperties":{"items":{"type":"integer"},"type":"array"},"title":"Scope Json","type":"object"},"tariff_id":{"title":"Tariff Id","type":"integer"},"valid_from":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid From"},"valid_to":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid To"},"volume_committed_min":{"anyOf":[{"minimum":0.0,"type":"integer"},{"type":"null"}],"title":"Volume Committed Min"}},"required":["name","tariff_id","destination_id","override_rate"],"title":"OfferCreate","type":"object"},"OfferOut":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"destination_id":{"title":"Destination Id","type":"integer"},"id":{"title":"Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"override_rate":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Override Rate","type":"string"},"scope":{"default":"all_customers","enum":["all_customers","company_subset"],"title":"Scope","type":"string"},"scope_json":{"additionalProperties":{"items":{"type":"integer"},"type":"array"},"title":"Scope Json","type":"object"},"tariff_id":{"title":"Tariff Id","type":"integer"},"valid_from":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid From"},"valid_to":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid To"},"volume_committed_min":{"anyOf":[{"minimum":0.0,"type":"integer"},{"type":"null"}],"title":"Volume Committed Min"}},"required":["name","tariff_id","destination_id","override_rate","id"],"title":"OfferOut","type":"object"},"OfferUpdate":{"additionalProperties":false,"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"},"override_rate":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Override Rate"},"scope":{"anyOf":[{"enum":["all_customers","company_subset"],"type":"string"},{"type":"null"}],"title":"Scope"},"scope_json":{"anyOf":[{"additionalProperties":{"items":{"type":"integer"},"type":"array"},"type":"object"},{"type":"null"}],"title":"Scope Json"},"tariff_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Tariff Id"},"valid_from":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid From"},"valid_to":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid To"},"volume_committed_min":{"anyOf":[{"minimum":0.0,"type":"integer"},{"type":"null"}],"title":"Volume Committed Min"}},"title":"OfferUpdate","type":"object"},"OriginatorCallLossRuleCreate":{"properties":{"action":{"default":"warn","enum":["warn","block"],"title":"Action","type":"string"},"auto_recovery_min":{"default":60,"minimum":0.0,"title":"Auto Recovery Min","type":"integer"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"max_loss_percent":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"title":"Max Loss Percent"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"window_minutes":{"default":15,"exclusiveMinimum":0.0,"title":"Window Minutes","type":"integer"}},"required":["max_loss_percent"],"title":"OriginatorCallLossRuleCreate","type":"object"},"OriginatorCallLossRuleOut":{"properties":{"action":{"default":"warn","enum":["warn","block"],"title":"Action","type":"string"},"auto_recovery_min":{"default":60,"minimum":0.0,"title":"Auto Recovery Min","type":"integer"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"id":{"title":"Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"max_loss_percent":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Max Loss Percent","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"originator_id":{"title":"Originator Id","type":"integer"},"window_minutes":{"default":15,"exclusiveMinimum":0.0,"title":"Window Minutes","type":"integer"}},"required":["max_loss_percent","id","originator_id","created_at"],"title":"OriginatorCallLossRuleOut","type":"object"},"OriginatorCallLossRuleUpdate":{"properties":{"action":{"anyOf":[{"enum":["warn","block"],"type":"string"},{"type":"null"}],"title":"Action"},"auto_recovery_min":{"anyOf":[{"minimum":0.0,"type":"integer"},{"type":"null"}],"title":"Auto Recovery Min"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"max_loss_percent":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Max Loss Percent"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"window_minutes":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Window Minutes"}},"title":"OriginatorCallLossRuleUpdate","type":"object"},"OriginatorCreate":{"properties":{"allow_call_loss":{"default":false,"title":"Allow Call Loss","type":"boolean"},"allowed_ips":{"items":{"type":"string"},"title":"Allowed Ips","type":"array"},"company_id":{"title":"Company Id","type":"integer"},"customer_rate_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Customer Rate Id"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"max_channels":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Max Channels"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"preferred_codecs":{"items":{"type":"string"},"title":"Preferred Codecs","type":"array"},"quality_profile_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Quality Profile Id"},"rate_description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rate Description"},"rate_description_mode":{"default":"append","enum":["append","replace"],"title":"Rate Description Mode","type":"string"},"routing_plan_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Routing Plan Id"},"tags":{"items":{"type":"string"},"title":"Tags","type":"array"},"techprefix":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Techprefix"},"techprefix_strip_digits":{"default":0,"minimum":0.0,"title":"Techprefix Strip Digits","type":"integer"},"tier":{"default":"standard","enum":["standard","premium","grey"],"title":"Tier","type":"string"}},"required":["name","company_id"],"title":"OriginatorCreate","type":"object"},"OriginatorNested":{"properties":{"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"id":{"title":"Id","type":"integer"},"name":{"title":"Name","type":"string"}},"required":["id","name","company_id"],"title":"OriginatorNested","type":"object"},"OriginatorOut":{"properties":{"allow_call_loss":{"default":false,"title":"Allow Call Loss","type":"boolean"},"allowed_ips":{"items":{"type":"string"},"title":"Allowed Ips","type":"array"},"company_id":{"title":"Company Id","type":"integer"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"customer_rate_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Customer Rate Id"},"id":{"title":"Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"max_channels":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Max Channels"},"name":{"title":"Name","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"preferred_codecs":{"items":{"type":"string"},"title":"Preferred Codecs","type":"array"},"quality_profile_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Quality Profile Id"},"rate_description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rate Description"},"rate_description_mode":{"default":"append","enum":["append","replace"],"title":"Rate Description Mode","type":"string"},"routing_plan_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Routing Plan Id"},"tags":{"items":{"type":"string"},"title":"Tags","type":"array"},"techprefix":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Techprefix"},"techprefix_strip_digits":{"default":0,"minimum":0.0,"title":"Techprefix Strip Digits","type":"integer"},"tier":{"default":"standard","enum":["standard","premium","grey"],"title":"Tier","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["id","name","company_id","created_at","updated_at"],"title":"OriginatorOut","type":"object"},"OriginatorUpdate":{"properties":{"allow_call_loss":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Allow Call Loss"},"allowed_ips":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Allowed Ips"},"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"customer_rate_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Customer Rate Id"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"max_channels":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Max Channels"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"preferred_codecs":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Preferred Codecs"},"quality_profile_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Quality Profile Id"},"rate_description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rate Description"},"rate_description_mode":{"anyOf":[{"enum":["append","replace"],"type":"string"},{"type":"null"}],"title":"Rate Description Mode"},"routing_plan_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Routing Plan Id"},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tags"},"techprefix":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Techprefix"},"techprefix_strip_digits":{"anyOf":[{"minimum":0.0,"type":"integer"},{"type":"null"}],"title":"Techprefix Strip Digits"},"tier":{"anyOf":[{"enum":["standard","premium","grey"],"type":"string"},{"type":"null"}],"title":"Tier"}},"title":"OriginatorUpdate","type":"object"},"PatternDetectionList":{"properties":{"items":{"items":{"$ref":"#/components/schemas/PatternDetectionOut"},"title":"Items","type":"array"}},"required":["items"],"title":"PatternDetectionList","type":"object"},"PatternDetectionOut":{"properties":{"default_params":{"additionalProperties":true,"title":"Default Params","type":"object"},"description":{"title":"Description","type":"string"},"enabled":{"title":"Enabled","type":"boolean"},"kind":{"enum":["wangiri","irsf","sim_box","ping_calls","msrn_range","auto_call_center","anomalous_cli","concentration_risk","temporal_anomaly"],"title":"Kind","type":"string"},"label":{"title":"Label","type":"string"}},"required":["kind","label","description","default_params","enabled"],"title":"PatternDetectionOut","type":"object"},"PatternFindingList":{"properties":{"has_more":{"title":"Has More","type":"boolean"},"items":{"items":{"$ref":"#/components/schemas/PatternFindingOut"},"title":"Items","type":"array"},"total":{"title":"Total","type":"integer"}},"required":["items","total","has_more"],"title":"PatternFindingList","type":"object"},"PatternFindingOut":{"properties":{"confidence":{"title":"Confidence","type":"number"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"detection_kind":{"enum":["wangiri","irsf","sim_box","ping_calls","msrn_range","auto_call_center","anomalous_cli","concentration_risk","temporal_anomaly"],"title":"Detection Kind","type":"string"},"entity_labels":{"additionalProperties":{"type":"string"},"title":"Entity Labels","type":"object"},"entity_ref":{"additionalProperties":true,"title":"Entity Ref","type":"object"},"entity_type":{"enum":["originator","terminator","destination","cli","dst_prefix","src_prefix","route","time_bucket"],"title":"Entity Type","type":"string"},"evidence_cdr_refs":{"items":{"additionalProperties":true,"type":"object"},"title":"Evidence Cdr Refs","type":"array"},"first_seen_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"First Seen At"},"id":{"format":"uuid","title":"Id","type":"string"},"last_seen_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Last Seen At"},"metrics":{"additionalProperties":true,"title":"Metrics","type":"object"},"params_used":{"additionalProperties":true,"title":"Params Used","type":"object"},"run_id":{"format":"uuid","title":"Run Id","type":"string"},"score":{"title":"Score","type":"number"},"severity":{"enum":["low","medium","high","critical"],"title":"Severity","type":"string"}},"required":["id","run_id","detection_kind","entity_type","entity_ref","severity","confidence","score","metrics","params_used","evidence_cdr_refs","created_at"],"title":"PatternFindingOut","type":"object"},"PatternRunCreate":{"properties":{"detections":{"items":{"enum":["wangiri","irsf","sim_box","ping_calls","msrn_range","auto_call_center","anomalous_cli","concentration_risk","temporal_anomaly"],"type":"string"},"maxItems":9,"minItems":1,"title":"Detections","type":"array"},"idempotency_key":{"anyOf":[{"maxLength":128,"minLength":1,"type":"string"},{"type":"null"}],"title":"Idempotency Key"},"params_override":{"additionalProperties":{"additionalProperties":true,"type":"object"},"propertyNames":{"enum":["wangiri","irsf","sim_box","ping_calls","msrn_range","auto_call_center","anomalous_cli","concentration_risk","temporal_anomaly"]},"title":"Params Override","type":"object"},"scope":{"$ref":"#/components/schemas/PatternScope"},"window_from":{"format":"date-time","title":"Window From","type":"string"},"window_to":{"format":"date-time","title":"Window To","type":"string"}},"required":["window_from","window_to","detections"],"title":"PatternRunCreate","type":"object"},"PatternRunList":{"properties":{"has_more":{"title":"Has More","type":"boolean"},"items":{"items":{"$ref":"#/components/schemas/PatternRunOut"},"title":"Items","type":"array"},"total":{"title":"Total","type":"integer"}},"required":["items","total","has_more"],"title":"PatternRunList","type":"object"},"PatternRunOut":{"properties":{"created_at":{"format":"date-time","title":"Created At","type":"string"},"detections":{"items":{"enum":["wangiri","irsf","sim_box","ping_calls","msrn_range","auto_call_center","anomalous_cli","concentration_risk","temporal_anomaly"],"type":"string"},"title":"Detections","type":"array"},"ended_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Ended At"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"id":{"format":"uuid","title":"Id","type":"string"},"idempotency_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Idempotency Key"},"params_override":{"additionalProperties":true,"title":"Params Override","type":"object"},"requested_by":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Requested By"},"scope":{"additionalProperties":true,"title":"Scope","type":"object"},"started_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Started At"},"status":{"enum":["queued","running","succeeded","failed","canceled"],"title":"Status","type":"string"},"summary":{"additionalProperties":true,"title":"Summary","type":"object"},"trigger_kind":{"enum":["on_demand","scheduled"],"title":"Trigger Kind","type":"string"},"window_from":{"format":"date-time","title":"Window From","type":"string"},"window_to":{"format":"date-time","title":"Window To","type":"string"}},"required":["id","trigger_kind","window_from","window_to","scope","detections","params_override","status","summary","created_at"],"title":"PatternRunOut","type":"object"},"PatternRunQueued":{"properties":{"id":{"format":"uuid","title":"Id","type":"string"},"status":{"enum":["queued","running","succeeded","failed","canceled"],"title":"Status","type":"string"}},"required":["id","status"],"title":"PatternRunQueued","type":"object"},"PatternScheduleCreate":{"properties":{"detections":{"items":{"enum":["wangiri","irsf","sim_box","ping_calls","msrn_range","auto_call_center","anomalous_cli","concentration_risk","temporal_anomaly"],"type":"string"},"maxItems":9,"minItems":1,"title":"Detections","type":"array"},"enabled":{"default":true,"title":"Enabled","type":"boolean"},"interval_minutes":{"maximum":1440.0,"minimum":5.0,"title":"Interval Minutes","type":"integer"},"name":{"maxLength":128,"minLength":1,"title":"Name","type":"string"},"params_override":{"additionalProperties":{"additionalProperties":true,"type":"object"},"propertyNames":{"enum":["wangiri","irsf","sim_box","ping_calls","msrn_range","auto_call_center","anomalous_cli","concentration_risk","temporal_anomaly"]},"title":"Params Override","type":"object"},"scope":{"$ref":"#/components/schemas/PatternScope"},"window_minutes":{"maximum":1440.0,"minimum":5.0,"title":"Window Minutes","type":"integer"}},"required":["name","interval_minutes","window_minutes","detections"],"title":"PatternScheduleCreate","type":"object"},"PatternScheduleList":{"properties":{"items":{"items":{"$ref":"#/components/schemas/PatternScheduleOut"},"title":"Items","type":"array"}},"required":["items"],"title":"PatternScheduleList","type":"object"},"PatternScheduleOut":{"properties":{"created_at":{"format":"date-time","title":"Created At","type":"string"},"created_by":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Created By"},"detections":{"items":{"enum":["wangiri","irsf","sim_box","ping_calls","msrn_range","auto_call_center","anomalous_cli","concentration_risk","temporal_anomaly"],"type":"string"},"title":"Detections","type":"array"},"enabled":{"title":"Enabled","type":"boolean"},"id":{"format":"uuid","title":"Id","type":"string"},"interval_minutes":{"title":"Interval Minutes","type":"integer"},"last_enqueued_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Last Enqueued At"},"name":{"title":"Name","type":"string"},"params_override":{"additionalProperties":true,"title":"Params Override","type":"object"},"scope":{"additionalProperties":true,"title":"Scope","type":"object"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"},"window_minutes":{"title":"Window Minutes","type":"integer"}},"required":["id","name","enabled","interval_minutes","window_minutes","detections","scope","params_override","created_at","updated_at"],"title":"PatternScheduleOut","type":"object"},"PatternScheduleUpdate":{"properties":{"detections":{"anyOf":[{"items":{"enum":["wangiri","irsf","sim_box","ping_calls","msrn_range","auto_call_center","anomalous_cli","concentration_risk","temporal_anomaly"],"type":"string"},"maxItems":9,"minItems":1,"type":"array"},{"type":"null"}],"title":"Detections"},"enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Enabled"},"interval_minutes":{"anyOf":[{"maximum":1440.0,"minimum":5.0,"type":"integer"},{"type":"null"}],"title":"Interval Minutes"},"name":{"anyOf":[{"maxLength":128,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"},"params_override":{"anyOf":[{"additionalProperties":{"additionalProperties":true,"type":"object"},"propertyNames":{"enum":["wangiri","irsf","sim_box","ping_calls","msrn_range","auto_call_center","anomalous_cli","concentration_risk","temporal_anomaly"]},"type":"object"},{"type":"null"}],"title":"Params Override"},"scope":{"anyOf":[{"$ref":"#/components/schemas/PatternScope"},{"type":"null"}]},"window_minutes":{"anyOf":[{"maximum":1440.0,"minimum":5.0,"type":"integer"},{"type":"null"}],"title":"Window Minutes"}},"title":"PatternScheduleUpdate","type":"object"},"PatternScope":{"properties":{"destination_ids":{"items":{"type":"integer"},"maxItems":500,"title":"Destination Ids","type":"array"},"dst_prefixes":{"items":{"type":"string"},"maxItems":200,"title":"Dst Prefixes","type":"array"},"include_test_traffic":{"default":false,"title":"Include Test Traffic","type":"boolean"},"originator_ids":{"items":{"type":"integer"},"maxItems":500,"title":"Originator Ids","type":"array"},"src_prefixes":{"items":{"type":"string"},"maxItems":200,"title":"Src Prefixes","type":"array"},"terminator_ids":{"items":{"type":"integer"},"maxItems":500,"title":"Terminator Ids","type":"array"}},"title":"PatternScope","type":"object"},"PivotResponse":{"properties":{"columns":{"items":{"type":"string"},"title":"Columns","type":"array"},"from_":{"format":"date-time","title":"From","type":"string"},"generated_at":{"format":"date-time","title":"Generated At","type":"string"},"granularity":{"enum":["hour","day","week","month"],"title":"Granularity","type":"string"},"rows":{"items":{"additionalProperties":true,"type":"object"},"title":"Rows","type":"array"},"summary":{"$ref":"#/components/schemas/PivotSummary"},"timezone":{"title":"Timezone","type":"string"},"to_":{"format":"date-time","title":"To","type":"string"}},"required":["generated_at","from_","to_","timezone","granularity","columns","rows","summary"],"title":"PivotResponse","type":"object"},"PivotSummary":{"properties":{"anomalies_count":{"title":"Anomalies Count","type":"integer"},"cost":{"title":"Cost"},"margin_pct":{"anyOf":[{},{"type":"null"}],"title":"Margin Pct"},"profit":{"title":"Profit"},"revenue":{"title":"Revenue"},"total_calls":{"title":"Total Calls","type":"integer"}},"required":["total_calls","revenue","cost","profit","margin_pct","anomalies_count"],"title":"PivotSummary","type":"object"},"PromptExample":{"properties":{"assistant":{"default":"","title":"Assistant","type":"string"},"user":{"default":"","title":"User","type":"string"}},"title":"PromptExample","type":"object"},"PromptTemplate":{"properties":{"few_shot_examples":{"items":{"$ref":"#/components/schemas/PromptExample"},"title":"Few Shot Examples","type":"array"},"id":{"pattern":"^[a-z][a-z0-9_-]{1,63}$","title":"Id","type":"string"},"name":{"maxLength":120,"minLength":1,"title":"Name","type":"string"},"system_prompt":{"minLength":1,"title":"System Prompt","type":"string"},"updated_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Updated At"},"updated_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Updated By"},"use_case":{"enum":["noc","billing","sales","custom"],"title":"Use Case","type":"string"}},"required":["id","name","use_case","system_prompt"],"title":"PromptTemplate","type":"object"},"PromptTemplateCreate":{"properties":{"few_shot_examples":{"items":{"$ref":"#/components/schemas/PromptExample"},"title":"Few Shot Examples","type":"array"},"id":{"pattern":"^[a-z][a-z0-9_-]{1,63}$","title":"Id","type":"string"},"name":{"maxLength":120,"minLength":1,"title":"Name","type":"string"},"system_prompt":{"minLength":1,"title":"System Prompt","type":"string"},"use_case":{"default":"custom","enum":["noc","billing","sales","custom"],"title":"Use Case","type":"string"}},"required":["id","name","system_prompt"],"title":"PromptTemplateCreate","type":"object"},"PromptTemplateUpdate":{"properties":{"few_shot_examples":{"anyOf":[{"items":{"$ref":"#/components/schemas/PromptExample"},"type":"array"},{"type":"null"}],"title":"Few Shot Examples"},"name":{"anyOf":[{"maxLength":120,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"},"system_prompt":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"title":"System Prompt"},"use_case":{"anyOf":[{"enum":["noc","billing","sales","custom"],"type":"string"},{"type":"null"}],"title":"Use Case"}},"title":"PromptTemplateUpdate","type":"object"},"ProviderRateEmbedded":{"properties":{"currency":{"title":"Currency","type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"id":{"title":"Id","type":"integer"},"name":{"title":"Name","type":"string"}},"required":["id","name","currency"],"title":"ProviderRateEmbedded","type":"object"},"QualityAlertMuteIn":{"description":"Body obbligatorio per mute: motivazione tracciata in notes + audit.","properties":{"muted_until":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Muted Until"},"reason":{"maxLength":500,"minLength":3,"title":"Reason","type":"string"}},"required":["reason"],"title":"QualityAlertMuteIn","type":"object"},"QualityAlertOut":{"properties":{"details":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Details"},"fired_at":{"format":"date-time","title":"Fired At","type":"string"},"id":{"title":"Id","type":"integer"},"metric":{"anyOf":[{"enum":["asr","acd","pdd","fas"],"type":"string"},{"type":"null"}],"title":"Metric"},"metric_value":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Metric Value"},"muted_until":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Muted Until"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"policy_id":{"title":"Policy Id","type":"integer"},"resolved_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Resolved At"},"severity":{"enum":["low","medium","high"],"title":"Severity","type":"string"},"status":{"enum":["open","resolved","muted"],"title":"Status","type":"string"}},"required":["id","policy_id","fired_at","resolved_at","metric","metric_value","status","severity","muted_until","details","notes"],"title":"QualityAlertOut","type":"object"},"QualityDryRunIn":{"description":"Input per il preview match di una policy senza persistere alert.","properties":{"scope_destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Destination Id"},"scope_json":{"$ref":"#/components/schemas/QualityPolicyScope"},"scope_originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Originator Id"},"scope_terminator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Terminator Id"},"thresholds":{"items":{"$ref":"#/components/schemas/QualityDryRunThreshold"},"minItems":1,"title":"Thresholds","type":"array"},"window_seconds":{"anyOf":[{"exclusiveMinimum":0.0,"maximum":604800.0,"type":"integer"},{"type":"null"}],"title":"Window Seconds"}},"required":["thresholds"],"title":"QualityDryRunIn","type":"object"},"QualityDryRunMatch":{"properties":{"comparator":{"enum":["gt","lt","gte","lte","eq"],"title":"Comparator","type":"string"},"metric":{"enum":["pdd","fas","asr","acd"],"title":"Metric","type":"string"},"terminator":{"title":"Terminator","type":"string"},"terminator_id":{"title":"Terminator Id","type":"integer"},"threshold_value":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Threshold Value","type":"string"},"value":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Value","type":"string"}},"required":["terminator_id","terminator","metric","value","threshold_value","comparator"],"title":"QualityDryRunMatch","type":"object"},"QualityDryRunOut":{"properties":{"evaluated_from":{"format":"date-time","title":"Evaluated From","type":"string"},"evaluated_to":{"format":"date-time","title":"Evaluated To","type":"string"},"matches":{"items":{"$ref":"#/components/schemas/QualityDryRunMatch"},"title":"Matches","type":"array"},"matches_total":{"title":"Matches Total","type":"integer"},"terminators_evaluated":{"title":"Terminators Evaluated","type":"integer"}},"required":["evaluated_from","evaluated_to","terminators_evaluated","matches","matches_total"],"title":"QualityDryRunOut","type":"object"},"QualityDryRunThreshold":{"properties":{"comparator":{"enum":["gt","lt","gte","lte","eq"],"title":"Comparator","type":"string"},"metric":{"enum":["pdd","fas","asr","acd"],"title":"Metric","type":"string"},"value":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,6}|(?=[\\d.]{1,11}0*$)\\d{0,6}\\.\\d{0,4}0*$)","type":"string"}],"title":"Value"},"window_seconds":{"anyOf":[{"exclusiveMinimum":0.0,"maximum":604800.0,"type":"integer"},{"type":"null"}],"title":"Window Seconds"}},"required":["metric","comparator","value"],"title":"QualityDryRunThreshold","type":"object"},"QualityOpenTtStubIn":{"properties":{"terminator_id":{"title":"Terminator Id","type":"integer"},"timestamp":{"format":"date-time","title":"Timestamp","type":"string"}},"required":["terminator_id","timestamp"],"title":"QualityOpenTtStubIn","type":"object"},"QualityOpenTtStubOut":{"properties":{"event":{"const":"quality.open_tt_clicked","default":"quality.open_tt_clicked","title":"Event","type":"string"},"status":{"const":"logged","default":"logged","title":"Status","type":"string"}},"title":"QualityOpenTtStubOut","type":"object"},"QualityPolicyActionCreate":{"properties":{"kind":{"enum":["notify","webhook","escalate","open_ticket","mute_suggest"],"title":"Kind","type":"string"},"payload":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Payload"},"sort_order":{"default":0,"title":"Sort Order","type":"integer"}},"required":["kind"],"title":"QualityPolicyActionCreate","type":"object"},"QualityPolicyActionOut":{"properties":{"id":{"title":"Id","type":"integer"},"kind":{"enum":["notify","webhook","escalate","open_ticket","mute_suggest"],"title":"Kind","type":"string"},"payload":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Payload"},"policy_id":{"title":"Policy Id","type":"integer"},"sort_order":{"default":0,"title":"Sort Order","type":"integer"}},"required":["kind","id","policy_id"],"title":"QualityPolicyActionOut","type":"object"},"QualityPolicyActionUpdate":{"additionalProperties":false,"properties":{"kind":{"anyOf":[{"enum":["notify","webhook","escalate","open_ticket","mute_suggest"],"type":"string"},{"type":"null"}],"title":"Kind"},"payload":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Payload"},"sort_order":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Sort Order"}},"title":"QualityPolicyActionUpdate","type":"object"},"QualityPolicyCreate":{"properties":{"cooldown_seconds":{"default":3600,"exclusiveMinimum":0.0,"title":"Cooldown Seconds","type":"integer"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"scope_destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Destination Id"},"scope_json":{"$ref":"#/components/schemas/QualityPolicyScope"},"scope_originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Originator Id"},"scope_terminator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Terminator Id"},"severity":{"default":"medium","enum":["low","medium","high"],"title":"Severity","type":"string"}},"required":["name"],"title":"QualityPolicyCreate","type":"object"},"QualityPolicyNotificationCreate":{"properties":{"channel":{"enum":["email","telegram","webhook","sms"],"title":"Channel","type":"string"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"target":{"minLength":1,"title":"Target","type":"string"}},"required":["channel","target"],"title":"QualityPolicyNotificationCreate","type":"object"},"QualityPolicyNotificationOut":{"properties":{"channel":{"enum":["email","telegram","webhook","sms"],"title":"Channel","type":"string"},"id":{"title":"Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"policy_id":{"title":"Policy Id","type":"integer"},"target":{"minLength":1,"title":"Target","type":"string"}},"required":["channel","target","id","policy_id"],"title":"QualityPolicyNotificationOut","type":"object"},"QualityPolicyNotificationUpdate":{"additionalProperties":false,"properties":{"channel":{"anyOf":[{"enum":["email","telegram","webhook","sms"],"type":"string"},{"type":"null"}],"title":"Channel"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"target":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"title":"Target"}},"title":"QualityPolicyNotificationUpdate","type":"object"},"QualityPolicyOut":{"properties":{"actions":{"items":{"$ref":"#/components/schemas/QualityPolicyActionOut"},"title":"Actions","type":"array"},"cooldown_seconds":{"default":3600,"exclusiveMinimum":0.0,"title":"Cooldown Seconds","type":"integer"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"id":{"title":"Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"notifications":{"items":{"$ref":"#/components/schemas/QualityPolicyNotificationOut"},"title":"Notifications","type":"array"},"scope_destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Destination Id"},"scope_json":{"$ref":"#/components/schemas/QualityPolicyScope"},"scope_originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Originator Id"},"scope_terminator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Terminator Id"},"severity":{"default":"medium","enum":["low","medium","high"],"title":"Severity","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["name","id","created_at","updated_at"],"title":"QualityPolicyOut","type":"object"},"QualityPolicyScope":{"additionalProperties":false,"properties":{"company_ids":{"items":{"type":"integer"},"title":"Company Ids","type":"array"},"destination_ids":{"items":{"type":"integer"},"title":"Destination Ids","type":"array"},"originator_ids":{"items":{"type":"integer"},"title":"Originator Ids","type":"array"},"terminator_tiers":{"items":{"enum":["standard","premium","grey"],"type":"string"},"title":"Terminator Tiers","type":"array"}},"title":"QualityPolicyScope","type":"object"},"QualityPolicyThresholdCreate":{"properties":{"comparator":{"enum":["gt","lt","gte","lte","eq"],"title":"Comparator","type":"string"},"metric":{"enum":["asr","acd","pdd","fas"],"title":"Metric","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"value":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,6}|(?=[\\d.]{1,11}0*$)\\d{0,6}\\.\\d{0,4}0*$)","type":"string"}],"title":"Value"},"window_seconds":{"default":900,"exclusiveMinimum":0.0,"title":"Window Seconds","type":"integer"}},"required":["metric","comparator","value"],"title":"QualityPolicyThresholdCreate","type":"object"},"QualityPolicyThresholdOut":{"properties":{"comparator":{"enum":["gt","lt","gte","lte","eq"],"title":"Comparator","type":"string"},"id":{"title":"Id","type":"integer"},"metric":{"enum":["asr","acd","pdd","fas"],"title":"Metric","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"policy_id":{"title":"Policy Id","type":"integer"},"value":{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,6}|(?=[\\d.]{1,11}0*$)\\d{0,6}\\.\\d{0,4}0*$)","title":"Value","type":"string"},"window_seconds":{"default":900,"exclusiveMinimum":0.0,"title":"Window Seconds","type":"integer"}},"required":["metric","comparator","value","id","policy_id"],"title":"QualityPolicyThresholdOut","type":"object"},"QualityPolicyThresholdUpdate":{"additionalProperties":false,"properties":{"comparator":{"anyOf":[{"enum":["gt","lt","gte","lte","eq"],"type":"string"},{"type":"null"}],"title":"Comparator"},"metric":{"anyOf":[{"enum":["asr","acd","pdd","fas"],"type":"string"},{"type":"null"}],"title":"Metric"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"value":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,6}|(?=[\\d.]{1,11}0*$)\\d{0,6}\\.\\d{0,4}0*$)","type":"string"},{"type":"null"}],"title":"Value"},"window_seconds":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Window Seconds"}},"title":"QualityPolicyThresholdUpdate","type":"object"},"QualityPolicyUpdate":{"additionalProperties":false,"properties":{"cooldown_seconds":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Cooldown Seconds"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"},"scope_destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Destination Id"},"scope_json":{"anyOf":[{"$ref":"#/components/schemas/QualityPolicyScope"},{"type":"null"}]},"scope_originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Originator Id"},"scope_terminator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Terminator Id"},"severity":{"anyOf":[{"enum":["low","medium","high"],"type":"string"},{"type":"null"}],"title":"Severity"}},"title":"QualityPolicyUpdate","type":"object"},"RebillChildCompanyOut":{"properties":{"code":{"title":"Code","type":"string"},"current_balance":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Current Balance","type":"string"},"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Name"},"id":{"title":"Id","type":"integer"},"legal_name":{"title":"Legal Name","type":"string"},"tier":{"title":"Tier","type":"string"}},"required":["id","code","legal_name","tier","current_balance"],"title":"RebillChildCompanyOut","type":"object"},"RebillDateRange":{"properties":{"from":{"format":"date","title":"From","type":"string"},"to":{"format":"date","title":"To","type":"string"}},"required":["from","to"],"title":"RebillDateRange","type":"object"},"RebillExecuteRequest":{"properties":{"confirmation_token":{"maxLength":128,"minLength":1,"title":"Confirmation Token","type":"string"},"date_range":{"$ref":"#/components/schemas/RebillDateRange"},"multiplier":{"anyOf":[{"exclusiveMinimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,6}|(?=[\\d.]{1,13}0*$)\\d{0,6}\\.\\d{0,6}0*$)","type":"string"}],"title":"Multiplier"},"scope":{"$ref":"#/components/schemas/RebillScope"}},"required":["scope","multiplier","date_range","confirmation_token"],"title":"RebillExecuteRequest","type":"object"},"RebillExecuteResponse":{"properties":{"rebill_job_id":{"title":"Rebill Job Id","type":"integer"},"summary":{"$ref":"#/components/schemas/RebillSummary"}},"required":["rebill_job_id","summary"],"title":"RebillExecuteResponse","type":"object"},"RebillMarkupRuleCreate":{"properties":{"active":{"default":true,"title":"Active","type":"boolean"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"markup_fixed":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,6}|(?=[\\d.]{1,13}0*$)\\d{0,6}\\.\\d{0,6}0*$)","type":"string"}],"default":"0","title":"Markup Fixed"},"markup_percent":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,3}|(?=[\\d.]{1,6}0*$)\\d{0,3}\\.\\d{0,2}0*$)","type":"string"}],"title":"Markup Percent"},"priority":{"default":100,"maximum":32767.0,"minimum":0.0,"title":"Priority","type":"integer"}},"required":["markup_percent"],"title":"RebillMarkupRuleCreate","type":"object"},"RebillMarkupRuleOut":{"properties":{"active":{"title":"Active","type":"boolean"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"id":{"title":"Id","type":"integer"},"markup_fixed":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Markup Fixed","type":"string"},"markup_percent":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Markup Percent","type":"string"},"priority":{"title":"Priority","type":"integer"},"reseller_company_id":{"title":"Reseller Company Id","type":"integer"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["id","reseller_company_id","destination_id","markup_percent","markup_fixed","priority","active","created_at","updated_at"],"title":"RebillMarkupRuleOut","type":"object"},"RebillMarkupRuleUpdate":{"properties":{"active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Active"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"markup_fixed":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,6}|(?=[\\d.]{1,13}0*$)\\d{0,6}\\.\\d{0,6}0*$)","type":"string"},{"type":"null"}],"title":"Markup Fixed"},"markup_percent":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,3}|(?=[\\d.]{1,6}0*$)\\d{0,3}\\.\\d{0,2}0*$)","type":"string"},{"type":"null"}],"title":"Markup Percent"},"priority":{"anyOf":[{"maximum":32767.0,"minimum":0.0,"type":"integer"},{"type":"null"}],"title":"Priority"}},"title":"RebillMarkupRuleUpdate","type":"object"},"RebillPreviewRequest":{"properties":{"date_range":{"$ref":"#/components/schemas/RebillDateRange"},"multiplier":{"anyOf":[{"exclusiveMinimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,6}|(?=[\\d.]{1,13}0*$)\\d{0,6}\\.\\d{0,6}0*$)","type":"string"}],"title":"Multiplier"},"scope":{"$ref":"#/components/schemas/RebillScope"}},"required":["scope","multiplier","date_range"],"title":"RebillPreviewRequest","type":"object"},"RebillPreviewSummary":{"properties":{"branch_customers_count":{"title":"Branch Customers Count","type":"integer"},"estimated_revenue_delta_eur":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Estimated Revenue Delta Eur","type":"string"},"originators_affected":{"title":"Originators Affected","type":"integer"},"tariffs_action":{"items":{"$ref":"#/components/schemas/RebillTariffAction"},"title":"Tariffs Action","type":"array"},"tariffs_targeted":{"title":"Tariffs Targeted","type":"integer"}},"required":["branch_customers_count","originators_affected","tariffs_targeted","tariffs_action","estimated_revenue_delta_eur"],"title":"RebillPreviewSummary","type":"object"},"RebillReportRow":{"properties":{"calls_count":{"title":"Calls Count","type":"integer"},"period_end":{"format":"date","title":"Period End","type":"string"},"period_start":{"format":"date","title":"Period Start","type":"string"},"reseller_code":{"title":"Reseller Code","type":"string"},"reseller_company_id":{"title":"Reseller Company Id","type":"integer"},"reseller_markup_amount":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Reseller Markup Amount","type":"string"},"reseller_name":{"title":"Reseller Name","type":"string"},"revenue":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue","type":"string"}},"required":["reseller_company_id","reseller_code","reseller_name","period_start","period_end","calls_count","revenue","reseller_markup_amount"],"title":"RebillReportRow","type":"object"},"RebillResellerOut":{"properties":{"children_count":{"title":"Children Count","type":"integer"},"code":{"title":"Code","type":"string"},"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Name"},"id":{"title":"Id","type":"integer"},"legal_name":{"title":"Legal Name","type":"string"},"rules_count":{"title":"Rules Count","type":"integer"},"tier":{"title":"Tier","type":"string"}},"required":["id","code","legal_name","tier","children_count","rules_count"],"title":"RebillResellerOut","type":"object"},"RebillScope":{"properties":{"reseller_company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reseller Company Id"},"type":{"pattern":"^(all_resellers|reseller_branch)$","title":"Type","type":"string"}},"required":["type"],"title":"RebillScope","type":"object"},"RebillSummary":{"properties":{"confirmation_token":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Confirmation Token"},"cost_delta_eur":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Cost Delta Eur","type":"string"},"date_range":{"anyOf":[{"$ref":"#/components/schemas/RebillDateRange"},{"type":"null"}]},"impacted_companies":{"title":"Impacted Companies","type":"integer"},"multiplier":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Multiplier"},"preview_summary":{"anyOf":[{"$ref":"#/components/schemas/RebillPreviewSummary"},{"type":"null"}]},"reseller_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reseller Id"},"scope":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Scope"},"total_rate_changes":{"title":"Total Rate Changes","type":"integer"}},"required":["impacted_companies","total_rate_changes","cost_delta_eur"],"title":"RebillSummary","type":"object"},"RebillTariffAction":{"properties":{"action":{"enum":["in_place_modify","clone_and_remap"],"title":"Action","type":"string"},"clone_will_create":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Clone Will Create"},"estimated_delta_eur":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Estimated Delta Eur","type":"string"},"originators_affected":{"title":"Originators Affected","type":"integer"},"rate_changes":{"title":"Rate Changes","type":"integer"},"reason":{"title":"Reason","type":"string"},"tariff_id":{"title":"Tariff Id","type":"integer"}},"required":["tariff_id","action","reason","originators_affected","rate_changes","estimated_delta_eur"],"title":"RebillTariffAction","type":"object"},"RechargeRequest":{"properties":{"amount":{"anyOf":[{"exclusiveMinimum":0.0,"maximum":1000000.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"title":"Amount"},"method":{"enum":["bank_transfer","credit_card","cash","compensation","promo"],"title":"Method","type":"string"},"notes":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"title":"Notes"},"reference":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Reference"}},"required":["amount","method"],"title":"RechargeRequest","type":"object"},"RecoveryCodesResponse":{"properties":{"recovery_codes":{"items":{"type":"string"},"title":"Recovery Codes","type":"array"}},"required":["recovery_codes"],"title":"RecoveryCodesResponse","type":"object"},"RefreshResponse":{"properties":{"access_token":{"title":"Access Token","type":"string"},"expires_in":{"title":"Expires In","type":"integer"},"force_mfa_enrollment":{"default":false,"title":"Force Mfa Enrollment","type":"boolean"},"force_password_change":{"default":false,"title":"Force Password Change","type":"boolean"},"mfa_enrolled_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Mfa Enrolled At"},"refresh_token":{"title":"Refresh Token","type":"string"},"role":{"title":"Role","type":"string"},"token_type":{"default":"bearer","title":"Token Type","type":"string"},"username":{"title":"Username","type":"string"}},"required":["access_token","refresh_token","expires_in","username","role"],"title":"RefreshResponse","type":"object"},"RefundRequest":{"properties":{"amount":{"anyOf":[{"exclusiveMinimum":0.0,"maximum":1000000.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"title":"Amount"},"method":{"enum":["chargeback","credit_note","service_credit","promo_refund"],"title":"Method","type":"string"},"notes":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"title":"Notes"},"reference":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Reference"}},"required":["amount","method"],"title":"RefundRequest","type":"object"},"RegenerateRecoveryCodesRequest":{"properties":{"password":{"maxLength":256,"minLength":1,"title":"Password","type":"string"}},"required":["password"],"title":"RegenerateRecoveryCodesRequest","type":"object"},"ResetPasswordResponse":{"properties":{"expires_at":{"format":"date-time","title":"Expires At","type":"string"},"temporary_password":{"title":"Temporary Password","type":"string"},"user_id":{"title":"User Id","type":"integer"}},"required":["user_id","temporary_password","expires_at"],"title":"ResetPasswordResponse","type":"object"},"ResolvedAgentFeeOut":{"properties":{"fee_per_minute":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Fee Per Minute"},"percent_profit":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Percent Profit"},"rule_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Rule Id"}},"required":["rule_id","fee_per_minute","percent_profit"],"title":"ResolvedAgentFeeOut","type":"object"},"RolePermissionOut":{"properties":{"granted_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Granted At"},"permission_key":{"title":"Permission Key","type":"string"},"role":{"title":"Role","type":"string"}},"required":["role","permission_key"],"title":"RolePermissionOut","type":"object"},"RotateSecretRequest":{"properties":{"new_plaintext_b64":{"minLength":1,"title":"New Plaintext B64","type":"string"}},"required":["new_plaintext_b64"],"title":"RotateSecretRequest","type":"object"},"RoutingPlanAggregatesOut":{"description":"Aggregati globali per la pagina /routing (KPI grid + counters lista).","properties":{"circuit_breakers_open":{"title":"Circuit Breakers Open","type":"integer"},"coverage_pct":{"title":"Coverage Pct","type":"number"},"destinations_configured":{"title":"Destinations Configured","type":"integer"},"destinations_no_routing":{"title":"Destinations No Routing","type":"integer"},"destinations_total":{"title":"Destinations Total","type":"integer"},"last_sync_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Last Sync At"},"plans_active":{"title":"Plans Active","type":"integer"},"plans_total":{"title":"Plans Total","type":"integer"}},"required":["plans_total","plans_active","destinations_total","destinations_configured","destinations_no_routing","coverage_pct","circuit_breakers_open","last_sync_at"],"title":"RoutingPlanAggregatesOut","type":"object"},"RoutingPlanCoverageDestination":{"properties":{"has_rule":{"title":"Has Rule","type":"boolean"},"id":{"title":"Id","type":"integer"},"name":{"title":"Name","type":"string"}},"required":["id","name","has_rule"],"title":"RoutingPlanCoverageDestination","type":"object"},"RoutingPlanCoverageOut":{"properties":{"covered_destinations":{"items":{"$ref":"#/components/schemas/RoutingPlanCoverageDestination"},"title":"Covered Destinations","type":"array"},"uncovered_destinations":{"items":{"$ref":"#/components/schemas/RoutingPlanCoverageDestination"},"title":"Uncovered Destinations","type":"array"}},"required":["covered_destinations","uncovered_destinations"],"title":"RoutingPlanCoverageOut","type":"object"},"RoutingPlanCreate":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"}},"required":["name"],"title":"RoutingPlanCreate","type":"object"},"RoutingPlanNested":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"id":{"title":"Id","type":"integer"},"is_active":{"title":"Is Active","type":"boolean"},"name":{"title":"Name","type":"string"}},"required":["id","name","is_active"],"title":"RoutingPlanNested","type":"object"},"RoutingPlanOut":{"properties":{"created_at":{"format":"date-time","title":"Created At","type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"id":{"title":"Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["name","id","created_at","updated_at"],"title":"RoutingPlanOut","type":"object"},"RoutingPlanUpdate":{"additionalProperties":false,"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"}},"title":"RoutingPlanUpdate","type":"object"},"RoutingRuleCreate":{"properties":{"destination_id":{"title":"Destination Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"is_failover":{"default":false,"title":"Is Failover","type":"boolean"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"},"priority":{"default":100,"title":"Priority","type":"integer"},"routing_plan_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Routing Plan Id"},"technique":{"default":"lcr","enum":["lcr","percent","round_robin"],"title":"Technique","type":"string"}},"required":["destination_id"],"title":"RoutingRuleCreate","type":"object"},"RoutingRuleOut":{"properties":{"created_at":{"format":"date-time","title":"Created At","type":"string"},"destination_id":{"title":"Destination Id","type":"integer"},"id":{"title":"Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"is_failover":{"default":false,"title":"Is Failover","type":"boolean"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"},"priority":{"default":100,"title":"Priority","type":"integer"},"routing_plan_id":{"title":"Routing Plan Id","type":"integer"},"technique":{"default":"lcr","enum":["lcr","percent","round_robin"],"title":"Technique","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["destination_id","id","routing_plan_id","created_at","updated_at"],"title":"RoutingRuleOut","type":"object"},"RoutingRuleTerminatorCreate":{"properties":{"is_active":{"default":true,"title":"Is Active","type":"boolean"},"preference_order":{"default":100,"title":"Preference Order","type":"integer"},"terminator_id":{"title":"Terminator Id","type":"integer"},"weight":{"default":100,"title":"Weight","type":"integer"}},"required":["terminator_id"],"title":"RoutingRuleTerminatorCreate","type":"object"},"RoutingRuleTerminatorOut":{"properties":{"id":{"title":"Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"preference_order":{"default":100,"title":"Preference Order","type":"integer"},"routing_rule_id":{"title":"Routing Rule Id","type":"integer"},"terminator_id":{"title":"Terminator Id","type":"integer"},"weight":{"default":100,"title":"Weight","type":"integer"}},"required":["terminator_id","id","routing_rule_id"],"title":"RoutingRuleTerminatorOut","type":"object"},"RoutingRuleTerminatorReorderItem":{"additionalProperties":false,"properties":{"id":{"description":"routing_rule_terminator.id","title":"Id","type":"integer"},"preference_order":{"description":"N-attempt tier; terminators with the same value share the same weighted attempt","minimum":1.0,"title":"Preference Order","type":"integer"}},"required":["id","preference_order"],"title":"RoutingRuleTerminatorReorderItem","type":"object"},"RoutingRuleTerminatorReorderRequest":{"additionalProperties":false,"properties":{"order":{"items":{"$ref":"#/components/schemas/RoutingRuleTerminatorReorderItem"},"maxItems":50,"minItems":1,"title":"Order","type":"array"}},"required":["order"],"title":"RoutingRuleTerminatorReorderRequest","type":"object"},"RoutingRuleTerminatorUpdate":{"additionalProperties":false,"properties":{"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"preference_order":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Preference Order"},"terminator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"},"weight":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Weight"}},"title":"RoutingRuleTerminatorUpdate","type":"object"},"RoutingRuleUpdate":{"additionalProperties":false,"properties":{"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"is_failover":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Failover"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"},"priority":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Priority"},"technique":{"anyOf":[{"enum":["lcr","percent","round_robin"],"type":"string"},{"type":"null"}],"title":"Technique"}},"title":"RoutingRuleUpdate","type":"object"},"RoutingRuleWithPlan":{"properties":{"destination":{"$ref":"#/components/schemas/akira_backend__schemas__routing_rule__DestinationNested"},"destination_id":{"title":"Destination Id","type":"integer"},"id":{"title":"Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"is_failover":{"default":false,"title":"Is Failover","type":"boolean"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"},"plan":{"$ref":"#/components/schemas/RoutingPlanNested"},"priority":{"default":100,"title":"Priority","type":"integer"},"routing_plan_id":{"title":"Routing Plan Id","type":"integer"},"technique":{"default":"lcr","enum":["lcr","percent","round_robin"],"title":"Technique","type":"string"},"terminators":{"items":{"$ref":"#/components/schemas/TerminatorRefNested"},"title":"Terminators","type":"array"}},"required":["destination_id","id","routing_plan_id","plan","destination"],"title":"RoutingRuleWithPlan","type":"object"},"RoutingRuleWithTerminatorsOut":{"properties":{"created_at":{"format":"date-time","title":"Created At","type":"string"},"destination_id":{"title":"Destination Id","type":"integer"},"id":{"title":"Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"is_failover":{"default":false,"title":"Is Failover","type":"boolean"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"},"priority":{"default":100,"title":"Priority","type":"integer"},"routing_plan_id":{"title":"Routing Plan Id","type":"integer"},"technique":{"default":"lcr","enum":["lcr","percent","round_robin"],"title":"Technique","type":"string"},"terminators":{"items":{"$ref":"#/components/schemas/RoutingRuleTerminatorOut"},"title":"Terminators","type":"array"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["destination_id","id","routing_plan_id","created_at","updated_at"],"title":"RoutingRuleWithTerminatorsOut","type":"object"},"RoutingTopologyResponse":{"description":"Routing topology response for graph consumers.","properties":{"cache_hit":{"default":false,"title":"Cache Hit","type":"boolean"},"edges":{"items":{"$ref":"#/components/schemas/EdgeView"},"title":"Edges","type":"array"},"generated_at":{"format":"date-time","title":"Generated At","type":"string"},"nodes":{"items":{"$ref":"#/components/schemas/NodeView"},"title":"Nodes","type":"array"}},"required":["nodes","edges","generated_at"],"title":"RoutingTopologyResponse","type":"object"},"RowError":{"properties":{"error":{"title":"Error","type":"string"},"field":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Field"},"raw":{"additionalProperties":true,"title":"Raw","type":"object"},"row_number":{"title":"Row Number","type":"integer"}},"required":["row_number","field","error","raw"],"title":"RowError","type":"object"},"SecretVaultInfo":{"properties":{"algo":{"title":"Algo","type":"string"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"id":{"title":"Id","type":"integer"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"ref":{"title":"Ref","type":"string"},"rotated_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Rotated At"},"rotated_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rotated By"}},"required":["id","ref","algo","created_at","rotated_at","rotated_by","notes"],"title":"SecretVaultInfo","type":"object"},"SelectedTerminator":{"description":"Primary terminator selected for the simulated call.","properties":{"id":{"title":"Id","type":"integer"},"name":{"title":"Name","type":"string"},"sip_uri":{"title":"Sip Uri","type":"string"}},"required":["id","name","sip_uri"],"title":"SelectedTerminator","type":"object"},"SettingCreate":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"environment":{"default":"all","enum":["all","dev","staging","prod"],"title":"Environment","type":"string"},"is_secret":{"default":false,"title":"Is Secret","type":"boolean"},"key":{"maxLength":128,"pattern":"^[a-z][a-z0-9_]*(\\.[a-z][a-z0-9_]*)+$","title":"Key","type":"string"},"value":{"title":"Value"},"value_type":{"anyOf":[{"enum":["string","int","float","bool","json"],"type":"string"},{"type":"null"}],"title":"Value Type"}},"required":["key","value"],"title":"SettingCreate","type":"object"},"SettingHistoryEntry":{"properties":{"changed_at":{"format":"date-time","title":"Changed At","type":"string"},"changed_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Changed By"},"environment":{"enum":["all","dev","staging","prod"],"title":"Environment","type":"string"},"id":{"title":"Id","type":"integer"},"key":{"title":"Key","type":"string"},"new_value":{"anyOf":[{},{"type":"null"}],"title":"New Value"},"old_value":{"anyOf":[{},{"type":"null"}],"title":"Old Value"},"who":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Who"}},"required":["id","key","environment","old_value","new_value","changed_at","changed_by","who"],"title":"SettingHistoryEntry","type":"object"},"SettingOut":{"properties":{"category":{"title":"Category","type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"environment":{"enum":["all","dev","staging","prod"],"title":"Environment","type":"string"},"is_critical":{"default":false,"title":"Is Critical","type":"boolean"},"is_secret":{"title":"Is Secret","type":"boolean"},"key":{"title":"Key","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"},"updated_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Updated By"},"value":{"anyOf":[{},{"type":"null"}],"title":"Value"},"value_type":{"enum":["string","int","float","bool","json"],"title":"Value Type","type":"string"}},"required":["key","environment","value","description","is_secret","updated_at","updated_by","category","value_type"],"title":"SettingOut","type":"object"},"SettingUpdate":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"is_secret":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Secret"},"value":{"anyOf":[{},{"type":"null"}],"title":"Value"},"value_type":{"anyOf":[{"enum":["string","int","float","bool","json"],"type":"string"},{"type":"null"}],"title":"Value Type"}},"title":"SettingUpdate","type":"object"},"SftpConfig":{"properties":{"enabled":{"default":false,"title":"Enabled","type":"boolean"},"file_pattern":{"default":"*.csv","maxLength":255,"title":"File Pattern","type":"string"},"host":{"default":"","maxLength":255,"title":"Host","type":"string"},"port":{"default":22,"maximum":65535.0,"minimum":1.0,"title":"Port","type":"integer"},"schedule":{"default":"*/15 * * * *","maxLength":100,"title":"Schedule","type":"string"},"ssh_key_id":{"default":"","maxLength":255,"title":"Ssh Key Id","type":"string"},"username":{"default":"","maxLength":255,"title":"Username","type":"string"},"watch_directory":{"default":"/incoming","maxLength":500,"title":"Watch Directory","type":"string"}},"title":"SftpConfig","type":"object"},"SimulateRequest":{"description":"Input for a dry-run routing simulation.","properties":{"dialed_number":{"title":"Dialed Number","type":"string"},"originator_id":{"title":"Originator Id","type":"integer"},"test_time_utc":{"format":"date-time","title":"Test Time Utc","type":"string"}},"required":["originator_id","dialed_number","test_time_utc"],"title":"SimulateRequest","type":"object"},"SimulateResponse":{"description":"Full audit trail returned by the dry-run simulator.","properties":{"applied_tariff_rate":{"anyOf":[{"$ref":"#/components/schemas/AppliedTariffRate"},{"type":"null"}]},"estimated_cost_per_min":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Estimated Cost Per Min"},"fallback_chain":{"items":{"$ref":"#/components/schemas/FallbackTerminator"},"title":"Fallback Chain","type":"array"},"matched_routing_rule":{"anyOf":[{"$ref":"#/components/schemas/MatchedRoutingRule"},{"type":"null"}]},"policy_decisions":{"items":{"type":"string"},"title":"Policy Decisions","type":"array"},"selected_terminator":{"anyOf":[{"$ref":"#/components/schemas/SelectedTerminator"},{"type":"null"}]},"warnings":{"items":{"type":"string"},"title":"Warnings","type":"array"}},"required":["matched_routing_rule","selected_terminator","applied_tariff_rate","estimated_cost_per_min","fallback_chain","policy_decisions","warnings"],"title":"SimulateResponse","type":"object"},"SipPasswordSetRequest":{"properties":{"password":{"minLength":1,"title":"Password","type":"string"}},"required":["password"],"title":"SipPasswordSetRequest","type":"object"},"SourceDestinationAnalysisRow":{"properties":{"a_number_country":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"A Number Country"},"a_number_country_label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"A Number Country Label"},"asr":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Asr","type":"string"},"calls":{"title":"Calls","type":"integer"},"cdr_href":{"title":"Cdr Href","type":"string"},"company":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company"},"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"cost":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Cost","type":"string"},"destination":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Destination"},"destination_country":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Destination Country"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"margin":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Margin","type":"string"},"margin_pct":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Margin Pct","type":"string"},"minutes":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Minutes","type":"string"},"originator":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Originator"},"originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"},"revenue":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue","type":"string"},"top_dst_prefix":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Top Dst Prefix"},"view":{"title":"View","type":"string"}},"required":["view","calls","minutes","revenue","cost","margin","margin_pct","asr","cdr_href"],"title":"SourceDestinationAnalysisRow","type":"object"},"SourceDestinationCountryOption":{"properties":{"code":{"title":"Code","type":"string"},"label":{"title":"Label","type":"string"}},"required":["code","label"],"title":"SourceDestinationCountryOption","type":"object"},"SourceDestinationsMatrixResponse":{"properties":{"analysis_rows":{"items":{"$ref":"#/components/schemas/SourceDestinationAnalysisRow"},"title":"Analysis Rows","type":"array"},"cells":{"items":{"$ref":"#/components/schemas/MatrixCellValue"},"title":"Cells","type":"array"},"country_options":{"items":{"$ref":"#/components/schemas/SourceDestinationCountryOption"},"title":"Country Options","type":"array"},"destinations":{"items":{"$ref":"#/components/schemas/MatrixDimension"},"title":"Destinations","type":"array"},"details":{"items":{"$ref":"#/components/schemas/MatrixCellDetail"},"title":"Details","type":"array"},"originators":{"items":{"$ref":"#/components/schemas/MatrixDimension"},"title":"Originators","type":"array"}},"required":["originators","destinations","cells"],"title":"SourceDestinationsMatrixResponse","type":"object"},"StatusBarSignalingOut":{"properties":{"ok":{"title":"Ok","type":"integer"},"total":{"title":"Total","type":"integer"}},"required":["ok","total"],"title":"StatusBarSignalingOut","type":"object"},"SummaryOriginationRow":{"properties":{"acd_seconds":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Acd Seconds"},"answered_calls":{"title":"Answered Calls","type":"integer"},"asr_pct":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Asr Pct","type":"string"},"calls":{"title":"Calls","type":"integer"},"cps":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Cps"},"minutes":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Minutes","type":"string"},"originator":{"title":"Originator","type":"string"},"originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"},"revenue":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue","type":"string"},"tier":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tier"},"top_dest":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Top Dest"}},"required":["originator","calls","answered_calls","minutes","revenue","asr_pct"],"title":"SummaryOriginationRow","type":"object"},"SummaryOriginationSection":{"properties":{"items":{"items":{"$ref":"#/components/schemas/SummaryOriginationRow"},"title":"Items","type":"array"},"totals":{"$ref":"#/components/schemas/SummaryOriginationTotals"}},"required":["items","totals"],"title":"SummaryOriginationSection","type":"object"},"SummaryOriginationTotals":{"properties":{"avg_revenue_per_call":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Avg Revenue Per Call"},"calls":{"title":"Calls","type":"integer"},"minutes":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Minutes","type":"string"},"revenue":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue","type":"string"},"top_originator":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Top Originator"}},"required":["revenue","calls","minutes"],"title":"SummaryOriginationTotals","type":"object"},"SummaryProfitCorridor":{"properties":{"calls":{"title":"Calls","type":"integer"},"cost":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Cost","type":"string"},"destination":{"title":"Destination","type":"string"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"margin_pct":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Margin Pct"},"originator":{"title":"Originator","type":"string"},"originator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"},"profit":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Profit","type":"string"},"revenue":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue","type":"string"}},"required":["originator","destination","calls","revenue","cost","profit"],"title":"SummaryProfitCorridor","type":"object"},"SummaryProfitSection":{"properties":{"cost":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Cost","type":"string"},"margin_pct":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Margin Pct"},"profit":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Profit","type":"string"},"revenue":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Revenue","type":"string"},"top_corridors":{"items":{"$ref":"#/components/schemas/SummaryProfitCorridor"},"title":"Top Corridors","type":"array"}},"required":["revenue","cost","profit","top_corridors"],"title":"SummaryProfitSection","type":"object"},"SummaryResponse":{"properties":{"day":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"title":"Day"},"from_":{"format":"date-time","title":"From","type":"string"},"generated_at":{"format":"date-time","title":"Generated At","type":"string"},"origination":{"$ref":"#/components/schemas/SummaryOriginationSection"},"profit":{"$ref":"#/components/schemas/SummaryProfitSection"},"termination":{"$ref":"#/components/schemas/SummaryTerminationSection"},"timezone":{"title":"Timezone","type":"string"},"to_":{"format":"date-time","title":"To","type":"string"}},"required":["generated_at","from_","to_","timezone","termination","origination","profit"],"title":"SummaryResponse","type":"object"},"SummaryTerminationRow":{"properties":{"acd_seconds":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Acd Seconds"},"answered_calls":{"title":"Answered Calls","type":"integer"},"asr_pct":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Asr Pct","type":"string"},"calls":{"title":"Calls","type":"integer"},"cost":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Cost","type":"string"},"fas_flagged":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Fas Flagged"},"fas_pct":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Fas Pct"},"fraud_flagged":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Fraud Flagged"},"fraud_pct":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Fraud Pct"},"minutes":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Minutes","type":"string"},"pdd_avg_ms":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Pdd Avg Ms"},"terminator":{"title":"Terminator","type":"string"},"terminator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"},"tier":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tier"}},"required":["terminator","calls","answered_calls","minutes","cost","asr_pct"],"title":"SummaryTerminationRow","type":"object"},"SummaryTerminationSection":{"properties":{"items":{"items":{"$ref":"#/components/schemas/SummaryTerminationRow"},"title":"Items","type":"array"},"totals":{"$ref":"#/components/schemas/SummaryTerminationTotals"}},"required":["items","totals"],"title":"SummaryTerminationSection","type":"object"},"SummaryTerminationTotals":{"properties":{"avg_cost_per_call":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Avg Cost Per Call"},"calls":{"title":"Calls","type":"integer"},"cost":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Cost","type":"string"},"minutes":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Minutes","type":"string"},"top_terminator":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Top Terminator"}},"required":["cost","calls","minutes"],"title":"SummaryTerminationTotals","type":"object"},"SupplierCompanyEmbedded":{"properties":{"code":{"title":"Code","type":"string"},"country_iso2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Country Iso2"},"id":{"title":"Id","type":"integer"},"legal_name":{"title":"Legal Name","type":"string"}},"required":["id","code","legal_name","country_iso2"],"title":"SupplierCompanyEmbedded","type":"object"},"SupplierInvoiceIngestionResponse":{"properties":{"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"currency":{"anyOf":[{"pattern":"^[A-Z]{3}$","type":"string"},{"type":"null"}],"title":"Currency"},"detected_rows":{"title":"Detected Rows","type":"integer"},"detected_total":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Detected Total"},"filename":{"title":"Filename","type":"string"},"period_end":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"title":"Period End"},"period_start":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"title":"Period Start"},"status":{"const":"previewed","default":"previewed","title":"Status","type":"string"},"warnings":{"items":{"type":"string"},"title":"Warnings","type":"array"}},"required":["filename","detected_rows"],"title":"SupplierInvoiceIngestionResponse","type":"object"},"SystemStatusBarOut":{"properties":{"acd":{"title":"Acd","type":"number"},"activeCalls":{"title":"Activecalls","type":"integer"},"alerts":{"title":"Alerts","type":"integer"},"asr":{"title":"Asr","type":"number"},"cps":{"title":"Cps","type":"number"},"db":{"title":"Db","type":"string"},"redis":{"title":"Redis","type":"string"},"signaling":{"$ref":"#/components/schemas/StatusBarSignalingOut"}},"required":["signaling","db","redis","alerts","cps","activeCalls","asr","acd"],"title":"SystemStatusBarOut","type":"object"},"TariffCreate":{"properties":{"billing_increment":{"default":"60+60","enum":["60+60","60+1","1+1"],"title":"Billing Increment","type":"string"},"connection_fee":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"default":"0","title":"Connection Fee"},"currency":{"default":"EUR","pattern":"^[A-Z]{3}$","title":"Currency","type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"kind":{"enum":["customer","supplier"],"title":"Kind","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"timezone":{"default":"Europe/Rome","maxLength":64,"minLength":1,"title":"Timezone","type":"string"}},"required":["name","kind"],"title":"TariffCreate","type":"object"},"TariffMailLogOut":{"properties":{"company_id":{"title":"Company Id","type":"integer"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"id":{"title":"Id","type":"integer"},"recipient":{"title":"Recipient","type":"string"},"sent_at":{"format":"date-time","title":"Sent At","type":"string"},"sent_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sent By"},"status":{"title":"Status","type":"string"},"subject":{"title":"Subject","type":"string"},"tariff_id":{"title":"Tariff Id","type":"integer"}},"required":["id","tariff_id","company_id","sent_at","recipient","subject","status"],"title":"TariffMailLogOut","type":"object"},"TariffOut":{"properties":{"billing_increment":{"default":"60+60","enum":["60+60","60+1","1+1"],"title":"Billing Increment","type":"string"},"connection_fee":{"default":"0","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Connection Fee","type":"string"},"created_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Created At"},"currency":{"default":"EUR","pattern":"^[A-Z]{3}$","title":"Currency","type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"destination_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Count"},"future_pending_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Future Pending Count"},"id":{"title":"Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"kind":{"enum":["customer","supplier"],"title":"Kind","type":"string"},"linked_company_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Linked Company Count"},"linked_company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Linked Company Id"},"linked_company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Linked Company Name"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"rate_avg":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Rate Avg"},"rate_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Rate Count"},"rate_max":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Rate Max"},"rate_min":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Rate Min"},"timezone":{"default":"Europe/Rome","maxLength":64,"minLength":1,"title":"Timezone","type":"string"},"updated_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Updated At"}},"required":["name","kind","id"],"title":"TariffOut","type":"object"},"TariffRateCreate":{"properties":{"destination_id":{"title":"Destination Id","type":"integer"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"rate":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,8}|(?=[\\d.]{1,15}0*$)\\d{0,8}\\.\\d{0,6}0*$)","type":"string"}],"title":"Rate"},"valid_from":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid From"},"valid_to":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid To"}},"required":["destination_id","rate"],"title":"TariffRateCreate","type":"object"},"TariffRateOut":{"properties":{"country":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Country"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"destination_id":{"title":"Destination Id","type":"integer"},"destination_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Destination Name"},"destination_prefix":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Destination Prefix"},"id":{"title":"Id","type":"integer"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"rate":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Rate","type":"string"},"tariff_id":{"title":"Tariff Id","type":"integer"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"},"valid_from":{"format":"date-time","title":"Valid From","type":"string"},"valid_to":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid To"}},"required":["id","tariff_id","destination_id","rate","valid_from","valid_to","notes","created_at","updated_at"],"title":"TariffRateOut","type":"object"},"TariffRateUpdate":{"additionalProperties":false,"properties":{"increment_seconds":{"anyOf":[{"minimum":1.0,"type":"integer"},{"type":"null"}],"title":"Increment Seconds"},"min_duration_seconds":{"anyOf":[{"minimum":0.0,"type":"integer"},{"type":"null"}],"title":"Min Duration Seconds"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"rate":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,8}|(?=[\\d.]{1,15}0*$)\\d{0,8}\\.\\d{0,6}0*$)","type":"string"},{"type":"null"}],"title":"Rate"},"rate_per_minute":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,8}|(?=[\\d.]{1,15}0*$)\\d{0,8}\\.\\d{0,6}0*$)","type":"string"},{"type":"null"}],"title":"Rate Per Minute"},"setup_fee":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,8}|(?=[\\d.]{1,15}0*$)\\d{0,8}\\.\\d{0,6}0*$)","type":"string"},{"type":"null"}],"title":"Setup Fee"},"valid_to":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Valid To"}},"title":"TariffRateUpdate","type":"object"},"TariffSendMailPreviewOut":{"properties":{"attachment_name":{"title":"Attachment Name","type":"string"},"body":{"title":"Body","type":"string"},"can_send":{"title":"Can Send","type":"boolean"},"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Name"},"html":{"title":"Html","type":"string"},"logs":{"items":{"$ref":"#/components/schemas/TariffMailLogOut"},"title":"Logs","type":"array"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"},"recipient":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Recipient"},"subject":{"title":"Subject","type":"string"},"tariff_id":{"title":"Tariff Id","type":"integer"},"template_slug":{"title":"Template Slug","type":"string"}},"required":["tariff_id","subject","body","html","template_slug","attachment_name","can_send"],"title":"TariffSendMailPreviewOut","type":"object"},"TariffTimeBandCreate":{"additionalProperties":false,"properties":{"active":{"default":true,"title":"Active","type":"boolean"},"days_of_week":{"items":{"type":"integer"},"minItems":1,"title":"Days Of Week","type":"array"},"hour_end":{"maximum":24.0,"minimum":0.0,"title":"Hour End","type":"integer"},"hour_start":{"maximum":23.0,"minimum":0.0,"title":"Hour Start","type":"integer"},"multiplier":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"default":"1.0","title":"Multiplier"},"name":{"maxLength":120,"minLength":1,"title":"Name","type":"string"},"priority":{"default":100,"maximum":1000.0,"minimum":0.0,"title":"Priority","type":"integer"}},"required":["name","days_of_week","hour_start","hour_end"],"title":"TariffTimeBandCreate","type":"object"},"TariffTimeBandOut":{"properties":{"active":{"default":true,"title":"Active","type":"boolean"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"days_of_week":{"items":{"type":"integer"},"minItems":1,"title":"Days Of Week","type":"array"},"hour_end":{"maximum":24.0,"minimum":0.0,"title":"Hour End","type":"integer"},"hour_start":{"maximum":23.0,"minimum":0.0,"title":"Hour Start","type":"integer"},"id":{"title":"Id","type":"integer"},"multiplier":{"default":"1.0","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Multiplier","type":"string"},"name":{"maxLength":120,"minLength":1,"title":"Name","type":"string"},"priority":{"default":100,"maximum":1000.0,"minimum":0.0,"title":"Priority","type":"integer"},"tariff_id":{"title":"Tariff Id","type":"integer"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["name","days_of_week","hour_start","hour_end","id","tariff_id","created_at","updated_at"],"title":"TariffTimeBandOut","type":"object"},"TariffTimeBandUpdate":{"additionalProperties":false,"properties":{"active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Active"},"days_of_week":{"anyOf":[{"items":{"type":"integer"},"minItems":1,"type":"array"},{"type":"null"}],"title":"Days Of Week"},"hour_end":{"anyOf":[{"maximum":24.0,"minimum":0.0,"type":"integer"},{"type":"null"}],"title":"Hour End"},"hour_start":{"anyOf":[{"maximum":23.0,"minimum":0.0,"type":"integer"},{"type":"null"}],"title":"Hour Start"},"multiplier":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Multiplier"},"name":{"anyOf":[{"maxLength":120,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"},"priority":{"anyOf":[{"maximum":1000.0,"minimum":0.0,"type":"integer"},{"type":"null"}],"title":"Priority"}},"title":"TariffTimeBandUpdate","type":"object"},"TariffUpdate":{"additionalProperties":false,"properties":{"billing_increment":{"anyOf":[{"enum":["60+60","60+1","1+1"],"type":"string"},{"type":"null"}],"title":"Billing Increment"},"connection_fee":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Connection Fee"},"currency":{"anyOf":[{"pattern":"^[A-Z]{3}$","type":"string"},{"type":"null"}],"title":"Currency"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"},"timezone":{"anyOf":[{"maxLength":64,"minLength":1,"type":"string"},{"type":"null"}],"title":"Timezone"}},"title":"TariffUpdate","type":"object"},"TariffUploadJobOut":{"properties":{"errors":{"title":"Errors","type":"integer"},"executed_at":{"format":"date-time","title":"Executed At","type":"string"},"id":{"title":"Id","type":"integer"},"raw_log":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Raw Log"},"rows_imported":{"title":"Rows Imported","type":"integer"},"sender":{"title":"Sender","type":"string"},"status":{"enum":["ok","errore","parziale"],"title":"Status","type":"string"},"template_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Template Name"}},"required":["id","executed_at","sender","rows_imported","errors","status"],"title":"TariffUploadJobOut","type":"object"},"TariffUploadTemplateCreate":{"properties":{"active":{"default":true,"title":"Active","type":"boolean"},"attachment_type":{"default":"auto-detect","enum":["XLSX","CSV","auto-detect"],"title":"Attachment Type","type":"string"},"company_id":{"title":"Company Id","type":"integer"},"header_rows":{"default":1,"minimum":0.0,"title":"Header Rows","type":"integer"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"prefix_column":{"anyOf":[{"type":"integer"},{"type":"string"}],"default":0,"title":"Prefix Column"},"rate_column":{"anyOf":[{"type":"integer"},{"type":"string"}],"default":1,"title":"Rate Column"},"sender_pattern":{"maxLength":500,"minLength":1,"title":"Sender Pattern","type":"string"},"subject_pattern":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Subject Pattern"},"tariff_id":{"title":"Tariff Id","type":"integer"}},"required":["name","sender_pattern","company_id","tariff_id"],"title":"TariffUploadTemplateCreate","type":"object"},"TariffUploadTemplateOut":{"properties":{"active":{"default":true,"title":"Active","type":"boolean"},"attachment_type":{"default":"auto-detect","enum":["XLSX","CSV","auto-detect"],"title":"Attachment Type","type":"string"},"company_id":{"title":"Company Id","type":"integer"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Name"},"header_rows":{"default":1,"minimum":0.0,"title":"Header Rows","type":"integer"},"id":{"title":"Id","type":"integer"},"last_run_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Last Run At"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"prefix_column":{"anyOf":[{"type":"integer"},{"type":"string"}],"default":0,"title":"Prefix Column"},"rate_column":{"anyOf":[{"type":"integer"},{"type":"string"}],"default":1,"title":"Rate Column"},"sender_pattern":{"maxLength":500,"minLength":1,"title":"Sender Pattern","type":"string"},"subject_pattern":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Subject Pattern"},"tariff_id":{"title":"Tariff Id","type":"integer"},"tariff_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tariff Name"}},"required":["name","sender_pattern","company_id","tariff_id","id"],"title":"TariffUploadTemplateOut","type":"object"},"TariffUploadTemplateUpdate":{"properties":{"active":{"default":true,"title":"Active","type":"boolean"},"attachment_type":{"default":"auto-detect","enum":["XLSX","CSV","auto-detect"],"title":"Attachment Type","type":"string"},"company_id":{"title":"Company Id","type":"integer"},"header_rows":{"default":1,"minimum":0.0,"title":"Header Rows","type":"integer"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"prefix_column":{"anyOf":[{"type":"integer"},{"type":"string"}],"default":0,"title":"Prefix Column"},"rate_column":{"anyOf":[{"type":"integer"},{"type":"string"}],"default":1,"title":"Rate Column"},"sender_pattern":{"maxLength":500,"minLength":1,"title":"Sender Pattern","type":"string"},"subject_pattern":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Subject Pattern"},"tariff_id":{"title":"Tariff Id","type":"integer"}},"required":["name","sender_pattern","company_id","tariff_id"],"title":"TariffUploadTemplateUpdate","type":"object"},"TerminationStatsResponse":{"properties":{"from_":{"format":"date-time","title":"From","type":"string"},"generated_at":{"format":"date-time","title":"Generated At","type":"string"},"quality_metrics_available":{"title":"Quality Metrics Available","type":"boolean"},"rows":{"items":{"$ref":"#/components/schemas/TerminationStatsRow"},"title":"Rows","type":"array"},"timezone":{"title":"Timezone","type":"string"},"to_":{"format":"date-time","title":"To","type":"string"},"totals":{"$ref":"#/components/schemas/TerminationStatsTotals"}},"required":["generated_at","from_","to_","timezone","quality_metrics_available","rows","totals"],"title":"TerminationStatsResponse","type":"object"},"TerminationStatsRow":{"properties":{"acd_seconds":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Acd Seconds"},"answered_calls":{"title":"Answered Calls","type":"integer"},"asr_pct":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Asr Pct","type":"string"},"calls":{"title":"Calls","type":"integer"},"cost":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Cost","type":"string"},"cost_pct":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Cost Pct","type":"string"},"destination_count":{"title":"Destination Count","type":"integer"},"fas_pct":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Fas Pct"},"fraud_risk":{"title":"Fraud Risk","type":"boolean"},"pdd_seconds":{"anyOf":[{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Pdd Seconds"},"quality_metrics_available":{"title":"Quality Metrics Available","type":"boolean"},"supplier":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Supplier"},"supplier_company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Supplier Company Id"},"terminator":{"title":"Terminator","type":"string"},"terminator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"},"tier":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tier"},"traffic_pct":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Traffic Pct","type":"string"}},"required":["terminator","calls","answered_calls","traffic_pct","asr_pct","cost","cost_pct","destination_count","quality_metrics_available","fraud_risk"],"title":"TerminationStatsRow","type":"object"},"TerminationStatsTotals":{"properties":{"answered_calls":{"title":"Answered Calls","type":"integer"},"calls":{"title":"Calls","type":"integer"},"cost":{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Cost","type":"string"},"destination_count":{"title":"Destination Count","type":"integer"}},"required":["calls","answered_calls","cost","destination_count"],"title":"TerminationStatsTotals","type":"object"},"TerminatorCreate":{"properties":{"auth_type":{"default":"ip_only","enum":["ip_only","digest"],"title":"Auth Type","type":"string"},"auth_vault_secret_id":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"Auth Vault Secret Id"},"caller_id_custom_rule":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Caller Id Custom Rule"},"caller_id_format":{"default":"transparent","enum":["transparent","cc_num","plus_cc_num","custom"],"title":"Caller Id Format","type":"string"},"cc_mail":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Cc Mail"},"coverage_tags":{"items":{"type":"string"},"title":"Coverage Tags","type":"array"},"health_check_enabled":{"default":false,"title":"Health Check Enabled","type":"boolean"},"health_check_interval_s":{"default":60,"exclusiveMinimum":0.0,"title":"Health Check Interval S","type":"integer"},"health_check_last":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Health Check Last"},"health_check_status":{"default":"unknown","enum":["unknown","up","degraded","down"],"title":"Health Check Status","type":"string"},"inbound_ip_whitelist":{"items":{"anyOf":[{"format":"ipv4","type":"string"},{"format":"ipv6","type":"string"},{"type":"string"}]},"title":"Inbound Ip Whitelist","type":"array"},"include_pai_header":{"default":true,"title":"Include Pai Header","type":"boolean"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"max_channels":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Max Channels"},"max_cps":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Cps"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"preferred_codec_test":{"default":"Any available","maxLength":64,"title":"Preferred Codec Test","type":"string"},"preferred_codecs_out":{"items":{"type":"string"},"title":"Preferred Codecs Out","type":"array"},"provider_rate_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Provider Rate Id"},"qp_source_prefix":{"anyOf":[{"maxLength":16,"type":"string"},{"type":"null"}],"title":"Qp Source Prefix"},"qp_tech_prefix":{"anyOf":[{"maxLength":16,"type":"string"},{"type":"null"}],"title":"Qp Tech Prefix"},"sip_uri":{"maxLength":500,"minLength":5,"title":"Sip Uri","type":"string"},"supplier_company_id":{"title":"Supplier Company Id","type":"integer"},"tags":{"items":{"type":"string"},"title":"Tags","type":"array"},"techprefix":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Techprefix"},"techprefix_add_digits":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Techprefix Add Digits"},"tgrp":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Tgrp"},"tier":{"default":"standard","enum":["standard","premium","grey"],"title":"Tier","type":"string"},"vendor_mail":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Vendor Mail"},"vendor_skype":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Vendor Skype"}},"required":["sip_uri","name","supplier_company_id"],"title":"TerminatorCreate","type":"object"},"TerminatorNested":{"properties":{"id":{"title":"Id","type":"integer"},"name":{"title":"Name","type":"string"}},"required":["id","name"],"title":"TerminatorNested","type":"object"},"TerminatorNumberRewriteRuleCreate":{"properties":{"action":{"enum":["add_prefix","strip_prefix","replace","format_e164"],"title":"Action","type":"string"},"action_value":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Action Value"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"match_pattern":{"maxLength":255,"minLength":1,"title":"Match Pattern","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"sort_order":{"default":100,"title":"Sort Order","type":"integer"}},"required":["match_pattern","action"],"title":"TerminatorNumberRewriteRuleCreate","type":"object"},"TerminatorNumberRewriteRuleOut":{"properties":{"action":{"enum":["add_prefix","strip_prefix","replace","format_e164"],"title":"Action","type":"string"},"action_value":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Action Value"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"id":{"title":"Id","type":"integer"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"match_pattern":{"maxLength":255,"minLength":1,"title":"Match Pattern","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"sort_order":{"default":100,"title":"Sort Order","type":"integer"},"terminator_id":{"title":"Terminator Id","type":"integer"}},"required":["match_pattern","action","id","terminator_id","created_at"],"title":"TerminatorNumberRewriteRuleOut","type":"object"},"TerminatorNumberRewriteRuleUpdate":{"properties":{"action":{"anyOf":[{"enum":["add_prefix","strip_prefix","replace","format_e164"],"type":"string"},{"type":"null"}],"title":"Action"},"action_value":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Action Value"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"match_pattern":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Match Pattern"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"sort_order":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Sort Order"}},"title":"TerminatorNumberRewriteRuleUpdate","type":"object"},"TerminatorOut":{"properties":{"auth_type":{"default":"ip_only","enum":["ip_only","digest"],"title":"Auth Type","type":"string"},"auth_vault_secret_id":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"Auth Vault Secret Id"},"caller_id_custom_rule":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Caller Id Custom Rule"},"caller_id_format":{"default":"transparent","enum":["transparent","cc_num","plus_cc_num","custom"],"title":"Caller Id Format","type":"string"},"cc_mail":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Cc Mail"},"coverage_tags":{"items":{"type":"string"},"title":"Coverage Tags","type":"array"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"current_load":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Current Load"},"devices_count":{"default":0,"title":"Devices Count","type":"integer"},"health_check_enabled":{"default":false,"title":"Health Check Enabled","type":"boolean"},"health_check_interval_s":{"default":60,"exclusiveMinimum":0.0,"title":"Health Check Interval S","type":"integer"},"health_check_last":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Health Check Last"},"health_check_status":{"default":"unknown","enum":["unknown","up","degraded","down"],"title":"Health Check Status","type":"string"},"id":{"title":"Id","type":"integer"},"inbound_ip_whitelist":{"items":{"anyOf":[{"format":"ipv4","type":"string"},{"format":"ipv6","type":"string"},{"type":"string"}]},"title":"Inbound Ip Whitelist","type":"array"},"include_pai_header":{"default":true,"title":"Include Pai Header","type":"boolean"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"last_call_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Last Call At"},"max_channels":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Max Channels"},"max_cps":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Cps"},"name":{"title":"Name","type":"string"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"preferred_codec_test":{"default":"Any available","maxLength":64,"title":"Preferred Codec Test","type":"string"},"preferred_codecs_out":{"items":{"type":"string"},"title":"Preferred Codecs Out","type":"array"},"provider_rate":{"anyOf":[{"$ref":"#/components/schemas/ProviderRateEmbedded"},{"type":"null"}]},"provider_rate_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Provider Rate Id"},"provider_rate_missing":{"default":false,"title":"Provider Rate Missing","type":"boolean"},"qp_source_prefix":{"anyOf":[{"maxLength":16,"type":"string"},{"type":"null"}],"title":"Qp Source Prefix"},"qp_tech_prefix":{"anyOf":[{"maxLength":16,"type":"string"},{"type":"null"}],"title":"Qp Tech Prefix"},"rewrites_count":{"default":0,"title":"Rewrites Count","type":"integer"},"sip_uri":{"maxLength":500,"minLength":5,"title":"Sip Uri","type":"string"},"supplier_company":{"anyOf":[{"$ref":"#/components/schemas/SupplierCompanyEmbedded"},{"type":"null"}]},"supplier_company_id":{"title":"Supplier Company Id","type":"integer"},"tags":{"items":{"type":"string"},"title":"Tags","type":"array"},"techprefix":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Techprefix"},"techprefix_add_digits":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Techprefix Add Digits"},"tgrp":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Tgrp"},"tier":{"default":"standard","enum":["standard","premium","grey"],"title":"Tier","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"},"vendor_mail":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Vendor Mail"},"vendor_skype":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Vendor Skype"}},"required":["sip_uri","id","name","supplier_company_id","created_at","updated_at"],"title":"TerminatorOut","type":"object"},"TerminatorRefNested":{"properties":{"id":{"title":"Id","type":"integer"},"is_active":{"title":"Is Active","type":"boolean"},"name":{"title":"Name","type":"string"},"priority":{"title":"Priority","type":"integer"},"terminator_id":{"title":"Terminator Id","type":"integer"},"terminator_name":{"title":"Terminator Name","type":"string"},"weight":{"title":"Weight","type":"integer"},"weight_pct":{"title":"Weight Pct","type":"integer"}},"required":["id","terminator_id","terminator_name","name","weight","weight_pct","priority","is_active"],"title":"TerminatorRefNested","type":"object"},"TerminatorUpdate":{"properties":{"auth_type":{"anyOf":[{"enum":["ip_only","digest"],"type":"string"},{"type":"null"}],"title":"Auth Type"},"auth_vault_secret_id":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"Auth Vault Secret Id"},"caller_id_custom_rule":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Caller Id Custom Rule"},"caller_id_format":{"anyOf":[{"enum":["transparent","cc_num","plus_cc_num","custom"],"type":"string"},{"type":"null"}],"title":"Caller Id Format"},"cc_mail":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Cc Mail"},"coverage_tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Coverage Tags"},"health_check_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Health Check Enabled"},"health_check_interval_s":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Health Check Interval S"},"health_check_last":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Health Check Last"},"health_check_status":{"anyOf":[{"enum":["unknown","up","degraded","down"],"type":"string"},{"type":"null"}],"title":"Health Check Status"},"inbound_ip_whitelist":{"anyOf":[{"items":{"anyOf":[{"format":"ipv4","type":"string"},{"format":"ipv6","type":"string"},{"type":"string"}]},"type":"array"},{"type":"null"}],"title":"Inbound Ip Whitelist"},"include_pai_header":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Include Pai Header"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"max_channels":{"anyOf":[{"exclusiveMinimum":0.0,"type":"integer"},{"type":"null"}],"title":"Max Channels"},"max_cps":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Cps"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Name"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"preferred_codec_test":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Preferred Codec Test"},"preferred_codecs_out":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Preferred Codecs Out"},"provider_rate_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Provider Rate Id"},"qp_source_prefix":{"anyOf":[{"maxLength":16,"type":"string"},{"type":"null"}],"title":"Qp Source Prefix"},"qp_tech_prefix":{"anyOf":[{"maxLength":16,"type":"string"},{"type":"null"}],"title":"Qp Tech Prefix"},"sip_uri":{"anyOf":[{"maxLength":500,"minLength":5,"type":"string"},{"type":"null"}],"title":"Sip Uri"},"supplier_company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Supplier Company Id"},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tags"},"techprefix":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Techprefix"},"techprefix_add_digits":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Techprefix Add Digits"},"tgrp":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"title":"Tgrp"},"tier":{"anyOf":[{"enum":["standard","premium","grey"],"type":"string"},{"type":"null"}],"title":"Tier"},"vendor_mail":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"title":"Vendor Mail"},"vendor_skype":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Vendor Skype"}},"title":"TerminatorUpdate","type":"object"},"TicketCreate":{"additionalProperties":false,"properties":{"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"destination_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"},"initial_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Initial Message"},"quality_alert_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Quality Alert Id"},"severity":{"anyOf":[{"enum":["critical","high","medium","low"],"type":"string"},{"type":"null"}],"default":"medium","title":"Severity"},"source":{"default":"manual","enum":["manual","email","quality_alert","from_test"],"title":"Source","type":"string"},"subject":{"maxLength":255,"minLength":3,"title":"Subject","type":"string"},"terminator_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"}},"required":["subject"],"title":"TicketCreate","type":"object"},"TicketFromTestOut":{"properties":{"assigned_to":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Assigned To"},"body":{"title":"Body","type":"string"},"closed_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Closed At"},"code":{"title":"Code","type":"string"},"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Name"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"email_thread_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email Thread Id"},"from_test_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"From Test Id"},"id":{"title":"Id","type":"integer"},"noc_email_sent":{"default":false,"title":"Noc Email Sent","type":"boolean"},"noc_email_skipped_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Noc Email Skipped Reason"},"severity":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Severity"},"source":{"enum":["manual","email","quality_alert","from_test"],"title":"Source","type":"string"},"status":{"enum":["open","in_progress","waiting","resolved","closed"],"title":"Status","type":"string"},"subject":{"title":"Subject","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["id","code","company_id","subject","body","status","source","email_thread_id","from_test_id","assigned_to","severity","created_at","updated_at","closed_at"],"title":"TicketFromTestOut","type":"object"},"TicketMessageOut":{"properties":{"author_email":{"title":"Author Email","type":"string"},"body":{"title":"Body","type":"string"},"id":{"title":"Id","type":"integer"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"},"ts":{"format":"date-time","title":"Ts","type":"string"},"type":{"enum":["comment","status_change","assignment","attachment"],"title":"Type","type":"string"}},"required":["id","type","body","author_email","metadata","ts"],"title":"TicketMessageOut","type":"object"},"TicketOut":{"properties":{"assigned_to":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Assigned To"},"body":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Body"},"closed_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Closed At"},"code":{"title":"Code","type":"string"},"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Name"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"email_thread_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email Thread Id"},"from_test_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"From Test Id"},"id":{"title":"Id","type":"integer"},"severity":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Severity"},"source":{"enum":["manual","email","quality_alert","from_test"],"title":"Source","type":"string"},"status":{"enum":["open","in_progress","waiting","resolved","closed"],"title":"Status","type":"string"},"subject":{"title":"Subject","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["id","code","company_id","subject","body","status","source","email_thread_id","from_test_id","assigned_to","severity","created_at","updated_at","closed_at"],"title":"TicketOut","type":"object"},"TicketTimelineOut":{"properties":{"events":{"items":{"$ref":"#/components/schemas/TicketMessageOut"},"title":"Events","type":"array"}},"required":["events"],"title":"TicketTimelineOut","type":"object"},"TicketUpdate":{"additionalProperties":false,"properties":{"assigned_to":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"Assigned To"},"severity":{"anyOf":[{"enum":["critical","high","medium","low"],"type":"string"},{"type":"null"}],"title":"Severity"},"status":{"anyOf":[{"enum":["open","in_progress","waiting","resolved","closed"],"type":"string"},{"type":"null"}],"title":"Status"},"subject":{"anyOf":[{"maxLength":255,"minLength":3,"type":"string"},{"type":"null"}],"title":"Subject"}},"title":"TicketUpdate","type":"object"},"TokenResponse":{"properties":{"access_token":{"title":"Access Token","type":"string"},"expires_in":{"title":"Expires In","type":"integer"},"force_mfa_enrollment":{"default":false,"title":"Force Mfa Enrollment","type":"boolean"},"force_password_change":{"default":false,"title":"Force Password Change","type":"boolean"},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message"},"mfa_enrolled_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Mfa Enrolled At"},"must_reenroll":{"default":false,"title":"Must Reenroll","type":"boolean"},"refresh_token":{"title":"Refresh Token","type":"string"},"role":{"title":"Role","type":"string"},"token_type":{"default":"bearer","title":"Token Type","type":"string"},"username":{"title":"Username","type":"string"}},"required":["access_token","refresh_token","expires_in","username","role"],"title":"TokenResponse","type":"object"},"TokenUsageDashboard":{"properties":{"days":{"items":{"$ref":"#/components/schemas/TokenUsageDay"},"title":"Days","type":"array"},"projected_monthly_cost_eur":{"title":"Projected Monthly Cost Eur","type":"number"},"top_users":{"items":{"$ref":"#/components/schemas/TokenUsageUser"},"title":"Top Users","type":"array"},"total_tokens":{"title":"Total Tokens","type":"integer"}},"required":["days","top_users","total_tokens","projected_monthly_cost_eur"],"title":"TokenUsageDashboard","type":"object"},"TokenUsageDay":{"properties":{"day":{"title":"Day","type":"string"},"input_tokens":{"title":"Input Tokens","type":"integer"},"output_tokens":{"title":"Output Tokens","type":"integer"},"projected_cost_eur":{"title":"Projected Cost Eur","type":"number"},"total_tokens":{"title":"Total Tokens","type":"integer"}},"required":["day","input_tokens","output_tokens","total_tokens","projected_cost_eur"],"title":"TokenUsageDay","type":"object"},"TokenUsageUser":{"properties":{"projected_cost_eur":{"title":"Projected Cost Eur","type":"number"},"total_tokens":{"title":"Total Tokens","type":"integer"},"user_id":{"title":"User Id","type":"string"}},"required":["user_id","total_tokens","projected_cost_eur"],"title":"TokenUsageUser","type":"object"},"ToolCallRequest":{"description":"Generic tool call payload accepted by the AgentCore bridge.","properties":{"arguments":{"additionalProperties":true,"title":"Arguments","type":"object"},"context":{"additionalProperties":true,"title":"Context","type":"object"},"name":{"minLength":1,"title":"Name","type":"string"},"user_id":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"null"}],"title":"User Id"}},"required":["name"],"title":"ToolCallRequest","type":"object"},"UserCreate":{"properties":{"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"email":{"format":"email","title":"Email","type":"string"},"full_name":{"maxLength":255,"minLength":1,"title":"Full Name","type":"string"},"is_active":{"default":true,"title":"Is Active","type":"boolean"},"password":{"anyOf":[{"maxLength":128,"minLength":12,"type":"string"},{"type":"null"}],"title":"Password"},"roles":{"items":{"type":"string"},"minItems":1,"title":"Roles","type":"array"}},"required":["email","full_name","roles"],"title":"UserCreate","type":"object"},"UserInviteCreate":{"properties":{"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"email":{"format":"email","title":"Email","type":"string"},"full_name":{"maxLength":255,"minLength":1,"title":"Full Name","type":"string"},"roles":{"items":{"type":"string"},"minItems":1,"title":"Roles","type":"array"}},"required":["email","full_name","roles"],"title":"UserInviteCreate","type":"object"},"UserInviteResponse":{"properties":{"email":{"title":"Email","type":"string"},"expires_at":{"format":"date-time","title":"Expires At","type":"string"},"invite_url":{"title":"Invite Url","type":"string"},"user_id":{"title":"User Id","type":"integer"}},"required":["user_id","email","expires_at","invite_url"],"title":"UserInviteResponse","type":"object"},"UserOut":{"properties":{"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Name"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"email":{"title":"Email","type":"string"},"full_name":{"title":"Full Name","type":"string"},"id":{"title":"Id","type":"integer"},"is_active":{"title":"Is Active","type":"boolean"},"last_login_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Last Login At"},"mfa_enabled":{"title":"Mfa Enabled","type":"boolean"},"roles":{"items":{"type":"string"},"title":"Roles","type":"array"}},"required":["id","email","full_name","roles","company_id","company_name","is_active","mfa_enabled","last_login_at","created_at"],"title":"UserOut","type":"object"},"UserUpdate":{"properties":{"company_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"},"full_name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"title":"Full Name"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"roles":{"anyOf":[{"items":{"type":"string"},"minItems":1,"type":"array"},{"type":"null"}],"title":"Roles"}},"title":"UserUpdate","type":"object"},"ValidationError":{"properties":{"ctx":{"title":"Context","type":"object"},"input":{"title":"Input"},"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"title":"Location","type":"array"},"msg":{"title":"Message","type":"string"},"type":{"title":"Error Type","type":"string"}},"required":["loc","msg","type"],"title":"ValidationError","type":"object"},"VerifyRecoveryRequest":{"properties":{"mfa_session_token":{"minLength":1,"title":"Mfa Session Token","type":"string"},"recovery_code":{"maxLength":16,"minLength":8,"title":"Recovery Code","type":"string"}},"required":["mfa_session_token","recovery_code"],"title":"VerifyRecoveryRequest","type":"object"},"VerifyRequest":{"properties":{"code":{"maxLength":8,"minLength":6,"title":"Code","type":"string"},"mfa_session_token":{"minLength":1,"title":"Mfa Session Token","type":"string"}},"required":["mfa_session_token","code"],"title":"VerifyRequest","type":"object"},"akira_backend__schemas__cdr__DestinationNested":{"properties":{"country_iso2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Country Iso2"},"id":{"title":"Id","type":"integer"},"name":{"title":"Name","type":"string"}},"required":["id","name","country_iso2"],"title":"DestinationNested","type":"object"},"akira_backend__schemas__routing_rule__DestinationNested":{"properties":{"country_iso2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Country Iso2"},"id":{"title":"Id","type":"integer"},"name":{"title":"Name","type":"string"}},"required":["id","name"],"title":"DestinationNested","type":"object"}}},"info":{"contact":{"email":"support@asheep.it","name":"Akira support"},"description":"\nAkira softswitch class-4 REST API.\n\n## Authentication\nBearer token (JWT). Obtain via `POST /api/v1/auth/login`.\n\n## Rate limiting\nTier-based: anonymous 10rpm, user 100rpm, admin 1000rpm.\n\n## Idempotency\n`POST`/`PATCH` mutations support the `Idempotency-Key` header with a 24h cache.\n\n## Versioning\nPath-based `/api/v1`. A future `/api/v2` is reserved for breaking changes.\n","license":{"name":"Proprietary"},"title":"Akira API","version":"0.1.0"},"openapi":"3.1.0","paths":{"/api/v1/access-policies":{"get":{"operationId":"list_access_policies_api_v1_access_policies_get","parameters":[{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"action","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Action"}},{"in":"query","name":"q","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AccessPolicyOut"},"title":"Response List Access Policies Api V1 Access Policies Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Access Policies","tags":["access-policies"]},"post":{"operationId":"create_access_policy_api_v1_access_policies_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessPolicyCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessPolicyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Access Policy","tags":["access-policies"]}},"/api/v1/access-policies/{id}":{"delete":{"operationId":"delete_access_policy_api_v1_access_policies__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Access Policy","tags":["access-policies"]},"get":{"operationId":"get_access_policy_api_v1_access_policies__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessPolicyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Access Policy","tags":["access-policies"]},"patch":{"operationId":"update_access_policy_api_v1_access_policies__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessPolicyUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessPolicyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Access Policy","tags":["access-policies"]}},"/api/v1/access-policies/{id}/authorized-originators":{"get":{"operationId":"list_authorized_originators_api_v1_access_policies__id__authorized_originators_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AuthorizedOriginatorOut"},"title":"Response List Authorized Originators Api V1 Access Policies  Id  Authorized Originators Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Authorized Originators","tags":["access-policies"]},"post":{"operationId":"create_authorized_originator_api_v1_access_policies__id__authorized_originators_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizedOriginatorCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizedOriginatorOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Authorized Originator","tags":["access-policies"]}},"/api/v1/access-policies/{id}/authorized-originators/{originator_id}":{"delete":{"operationId":"delete_authorized_originator_api_v1_access_policies__id__authorized_originators__originator_id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"originator_id","required":true,"schema":{"title":"Originator Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Authorized Originator","tags":["access-policies"]}},"/api/v1/accounts":{"get":{"operationId":"list_accounts_api_v1_accounts_get","parameters":[{"in":"query","name":"search","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Search"}},{"in":"query","name":"q","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"in":"query","name":"role_name","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Role Name"}},{"in":"query","name":"role","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Role"}},{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"mfa_enrolled","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Mfa Enrolled"}},{"in":"query","name":"mfa_status","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mfa Status"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":500,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AccountOut"},"title":"Response List Accounts Api V1 Accounts Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Accounts","tags":["accounts"]},"post":{"operationId":"create_account_api_v1_accounts_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Account","tags":["accounts"]}},"/api/v1/accounts/bulk-actions":{"post":{"operationId":"bulk_actions_api_v1_accounts_bulk_actions_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkActionRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkActionResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Bulk Actions","tags":["accounts"]}},"/api/v1/accounts/{id}":{"delete":{"operationId":"delete_account_api_v1_accounts__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Account","tags":["accounts"]},"get":{"operationId":"get_account_api_v1_accounts__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Account","tags":["accounts"]},"patch":{"operationId":"update_account_api_v1_accounts__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Account","tags":["accounts"]}},"/api/v1/accounts/{id}/extra-permissions":{"get":{"operationId":"list_extra_permissions_api_v1_accounts__id__extra_permissions_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/ExtraPermissionOut"},"title":"Response List Extra Permissions Api V1 Accounts  Id  Extra Permissions Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Extra Permissions","tags":["accounts"]},"post":{"operationId":"add_extra_permission_api_v1_accounts__id__extra_permissions_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExtraPermissionIn"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExtraPermissionOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Add Extra Permission","tags":["accounts"]}},"/api/v1/accounts/{id}/extra-permissions/{permission_key}":{"delete":{"operationId":"remove_extra_permission_api_v1_accounts__id__extra_permissions__permission_key__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"permission_key","required":true,"schema":{"title":"Permission Key","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Remove Extra Permission","tags":["accounts"]}},"/api/v1/accounts/{id}/login-attempts":{"get":{"operationId":"list_login_attempts_api_v1_accounts__id__login_attempts_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"limit","required":false,"schema":{"default":20,"maximum":500,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/LoginAttemptOut"},"title":"Response List Login Attempts Api V1 Accounts  Id  Login Attempts Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Login Attempts","tags":["accounts"]}},"/api/v1/accounts/{id}/recovery-codes/regenerate":{"post":{"operationId":"regenerate_recovery_codes_api_v1_accounts__id__recovery_codes_regenerate_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecoveryCodesResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Regenerate Recovery Codes","tags":["accounts"]}},"/api/v1/accounts/{id}/role-permissions":{"get":{"operationId":"get_role_permissions_api_v1_accounts__id__role_permissions_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/RolePermissionOut"},"title":"Response Get Role Permissions Api V1 Accounts  Id  Role Permissions Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Role Permissions","tags":["accounts"]}},"/api/v1/accounts/{id}/sessions/force-logout":{"post":{"operationId":"force_logout_api_v1_accounts__id__sessions_force_logout_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Force Logout","tags":["accounts"]}},"/api/v1/admin/ai-agent/config":{"get":{"operationId":"get_config_api_v1_admin_ai_agent_config_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AiAgentConfig"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Config","tags":["admin-ai-agent"]},"put":{"operationId":"put_config_api_v1_admin_ai_agent_config_put","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AiAgentConfig"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AiAgentConfig"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Put Config","tags":["admin-ai-agent"]}},"/api/v1/admin/ai-agent/conversations":{"get":{"operationId":"list_conversations_api_v1_admin_ai_agent_conversations_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"query","name":"from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"From"}},{"in":"query","name":"to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"To"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AIAgentConversationResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Conversations","tags":["admin-ai-agent"]}},"/api/v1/admin/ai-agent/prompts":{"get":{"operationId":"list_prompts_api_v1_admin_ai_agent_prompts_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/PromptTemplate"},"title":"Response List Prompts Api V1 Admin Ai Agent Prompts Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Prompts","tags":["admin-ai-agent"]},"post":{"operationId":"create_prompt_api_v1_admin_ai_agent_prompts_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PromptTemplateCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PromptTemplate"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Prompt","tags":["admin-ai-agent"]}},"/api/v1/admin/ai-agent/prompts/{prompt_id}":{"delete":{"operationId":"delete_prompt_api_v1_admin_ai_agent_prompts__prompt_id__delete","parameters":[{"in":"path","name":"prompt_id","required":true,"schema":{"title":"Prompt Id","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Prompt","tags":["admin-ai-agent"]},"patch":{"operationId":"update_prompt_api_v1_admin_ai_agent_prompts__prompt_id__patch","parameters":[{"in":"path","name":"prompt_id","required":true,"schema":{"title":"Prompt Id","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PromptTemplateUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PromptTemplate"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Prompt","tags":["admin-ai-agent"]}},"/api/v1/admin/ai-agent/status":{"get":{"operationId":"agent_status_api_v1_admin_ai_agent_status_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AIAgentStatus"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Agent Status","tags":["admin-ai-agent"]}},"/api/v1/admin/ai-agent/tools":{"get":{"operationId":"list_tools_api_v1_admin_ai_agent_tools_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/MCPToolConfig"},"title":"Response List Tools Api V1 Admin Ai Agent Tools Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Tools","tags":["admin-ai-agent"]}},"/api/v1/admin/ai-agent/tools/{name}":{"patch":{"operationId":"update_tool_api_v1_admin_ai_agent_tools__name__patch","parameters":[{"in":"path","name":"name","required":true,"schema":{"title":"Name","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPToolUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPToolConfig"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Tool","tags":["admin-ai-agent"]}},"/api/v1/admin/ai-agent/usage":{"get":{"operationId":"token_usage_api_v1_admin_ai_agent_usage_get","parameters":[{"in":"query","name":"days","required":false,"schema":{"default":30,"maximum":90,"minimum":1,"title":"Days","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenUsageDashboard"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Token Usage","tags":["admin-ai-agent"]}},"/api/v1/admin/auto-upload/imap":{"get":{"operationId":"get_imap_config_api_v1_admin_auto_upload_imap_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImapConfig"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Imap Config","tags":["admin"]},"put":{"operationId":"put_imap_config_api_v1_admin_auto_upload_imap_put","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImapConfig"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImapConfig"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Put Imap Config","tags":["admin"]}},"/api/v1/admin/auto-upload/jobs":{"get":{"operationId":"list_jobs_api_v1_admin_auto_upload_jobs_get","parameters":[{"in":"query","name":"company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AutoUploadJobOut"},"title":"Response List Jobs Api V1 Admin Auto Upload Jobs Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Jobs","tags":["admin"]},"post":{"operationId":"create_job_api_v1_admin_auto_upload_jobs_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutoUploadJobCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutoUploadJobOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Job","tags":["admin"]}},"/api/v1/admin/auto-upload/jobs/{job_id}":{"delete":{"operationId":"delete_job_api_v1_admin_auto_upload_jobs__job_id__delete","parameters":[{"in":"path","name":"job_id","required":true,"schema":{"title":"Job Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Job","tags":["admin"]},"patch":{"operationId":"update_job_api_v1_admin_auto_upload_jobs__job_id__patch","parameters":[{"in":"path","name":"job_id","required":true,"schema":{"title":"Job Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutoUploadJobUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutoUploadJobOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Job","tags":["admin"]}},"/api/v1/admin/auto-upload/jobs/{job_id}/run":{"post":{"operationId":"run_job_now_api_v1_admin_auto_upload_jobs__job_id__run_post","parameters":[{"in":"path","name":"job_id","required":true,"schema":{"title":"Job Id","type":"integer"}},{"in":"query","name":"source_file_path","required":true,"schema":{"title":"Source File Path","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutoUploadRunOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Run Job Now","tags":["admin"]}},"/api/v1/admin/auto-upload/jobs/{job_id}/runs":{"get":{"operationId":"list_runs_api_v1_admin_auto_upload_jobs__job_id__runs_get","parameters":[{"in":"path","name":"job_id","required":true,"schema":{"title":"Job Id","type":"integer"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AutoUploadRunOut"},"title":"Response List Runs Api V1 Admin Auto Upload Jobs  Job Id  Runs Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Runs","tags":["admin"]}},"/api/v1/admin/auto-upload/sftp":{"get":{"operationId":"get_sftp_config_api_v1_admin_auto_upload_sftp_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SftpConfig"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Sftp Config","tags":["admin"]},"put":{"operationId":"put_sftp_config_api_v1_admin_auto_upload_sftp_put","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SftpConfig"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SftpConfig"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Put Sftp Config","tags":["admin"]}},"/api/v1/admin/bulk-import/apply":{"post":{"operationId":"apply_import_api_v1_admin_bulk_import_apply_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_apply_import_api_v1_admin_bulk_import_apply_post"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkImportReport"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Apply Import","tags":["admin"]}},"/api/v1/admin/bulk-import/preview":{"post":{"operationId":"preview_import_api_v1_admin_bulk_import_preview_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_preview_import_api_v1_admin_bulk_import_preview_post"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkImportReport"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Preview Import","tags":["admin"]}},"/api/v1/admin/rebill/execute":{"post":{"operationId":"execute_rebill_api_v1_admin_rebill_execute_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RebillExecuteRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RebillExecuteResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Execute Rebill","tags":["admin-rebill"]}},"/api/v1/admin/rebill/preview":{"post":{"operationId":"preview_rebill_api_v1_admin_rebill_preview_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RebillPreviewRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RebillSummary"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Preview Rebill","tags":["admin-rebill"]}},"/api/v1/admin/servers":{"get":{"operationId":"list_admin_servers_api_v1_admin_servers_get","parameters":[{"in":"query","name":"environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Environment"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"X-Environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Environment"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AdminServerOut"},"title":"Response List Admin Servers Api V1 Admin Servers Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Admin Servers","tags":["admin-servers"]}},"/api/v1/admin/system/settings":{"get":{"operationId":"get_admin_system_settings_api_v1_admin_system_settings_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdminSystemSettingsOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Admin System Settings","tags":["admin-system-settings"]},"put":{"operationId":"update_admin_system_settings_api_v1_admin_system_settings_put","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"title":"Payload","type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdminSystemSettingsOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Admin System Settings","tags":["admin-system-settings"]}},"/api/v1/admin/users":{"get":{"operationId":"list_users_api_v1_admin_users_get","parameters":[{"in":"query","name":"search","required":false,"schema":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"title":"Search"}},{"in":"query","name":"role","required":false,"schema":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Role"}},{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/UserOut"},"title":"Response List Users Api V1 Admin Users Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Users","tags":["admin"]},"post":{"operationId":"create_user_api_v1_admin_users_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create User","tags":["admin"]}},"/api/v1/admin/users/invite":{"post":{"operationId":"invite_user_api_v1_admin_users_invite_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserInviteCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserInviteResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Invite User","tags":["admin"]}},"/api/v1/admin/users/{user_id}":{"patch":{"operationId":"update_user_api_v1_admin_users__user_id__patch","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"title":"User Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update User","tags":["admin"]}},"/api/v1/admin/users/{user_id}/reset-mfa":{"post":{"operationId":"reset_mfa_api_v1_admin_users__user_id__reset_mfa_post","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"title":"User Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Reset Mfa","tags":["admin"]}},"/api/v1/admin/users/{user_id}/reset-password":{"post":{"operationId":"reset_password_api_v1_admin_users__user_id__reset_password_post","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"title":"User Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResetPasswordResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Reset Password","tags":["admin"]}},"/api/v1/agents":{"get":{"operationId":"list_agents_api_v1_agents_get","parameters":[{"in":"query","name":"company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"}},{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AgentOut"},"title":"Response List Agents Api V1 Agents Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Agents","tags":["agents"]},"post":{"operationId":"create_agent_api_v1_agents_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Agent","tags":["agents"]}},"/api/v1/agents/commissions/report":{"get":{"operationId":"commission_report_api_v1_agents_commissions_report_get","parameters":[{"in":"query","name":"period_start","required":true,"schema":{"format":"date","title":"Period Start","type":"string"}},{"in":"query","name":"period_end","required":true,"schema":{"format":"date","title":"Period End","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AgentCommissionReportRow"},"title":"Response Commission Report Api V1 Agents Commissions Report Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Commission Report","tags":["agents"]}},"/api/v1/agents/{id}":{"delete":{"operationId":"delete_agent_api_v1_agents__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Agent","tags":["agents"]},"get":{"operationId":"get_agent_api_v1_agents__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Agent","tags":["agents"]},"patch":{"operationId":"update_agent_api_v1_agents__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Agent","tags":["agents"]}},"/api/v1/agents/{id}/commissions":{"get":{"operationId":"list_commissions_api_v1_agents__id__commissions_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AgentCommissionOut"},"title":"Response List Commissions Api V1 Agents  Id  Commissions Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Commissions","tags":["agents"]}},"/api/v1/agents/{id}/commissions/compute":{"post":{"operationId":"compute_commission_api_v1_agents__id__commissions_compute_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentCommissionComputeIn"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentCommissionOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Compute Commission","tags":["agents"]}},"/api/v1/agents/{id}/commissions/{commission_id}":{"patch":{"operationId":"update_commission_status_api_v1_agents__id__commissions__commission_id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"commission_id","required":true,"schema":{"title":"Commission Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentCommissionStatusIn"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentCommissionOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Commission Status","tags":["agents"]}},"/api/v1/agents/{id}/fee-rules":{"get":{"operationId":"list_fee_rules_api_v1_agents__id__fee_rules_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AgentFeeRuleOut"},"title":"Response List Fee Rules Api V1 Agents  Id  Fee Rules Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Fee Rules","tags":["agents"]},"post":{"operationId":"create_fee_rule_api_v1_agents__id__fee_rules_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentFeeRuleCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentFeeRuleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Fee Rule","tags":["agents"]}},"/api/v1/agents/{id}/fee-rules/resolve":{"get":{"operationId":"resolve_fee_rule_api_v1_agents__id__fee_rules_resolve_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"at","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"At"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolvedAgentFeeOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Resolve Fee Rule","tags":["agents"]}},"/api/v1/agents/{id}/fee-rules/{rule_id}":{"delete":{"operationId":"delete_fee_rule_api_v1_agents__id__fee_rules__rule_id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"rule_id","required":true,"schema":{"title":"Rule Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Fee Rule","tags":["agents"]},"get":{"operationId":"get_fee_rule_api_v1_agents__id__fee_rules__rule_id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"rule_id","required":true,"schema":{"title":"Rule Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentFeeRuleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Fee Rule","tags":["agents"]},"patch":{"operationId":"update_fee_rule_api_v1_agents__id__fee_rules__rule_id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"rule_id","required":true,"schema":{"title":"Rule Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentFeeRuleUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentFeeRuleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Fee Rule","tags":["agents"]}},"/api/v1/audit":{"get":{"description":"Return audit log entries with optional filters and offset pagination.","operationId":"list_audit_log_api_v1_audit_get","parameters":[{"in":"query","name":"entity_type","required":false,"schema":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Entity Type"}},{"in":"query","name":"entity_id","required":false,"schema":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Entity Id"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"query","name":"action","required":false,"schema":{"anyOf":[{"enum":["INSERT","UPDATE","DELETE","INVALIDATE","base_currency_change"],"type":"string"},{"type":"null"}],"title":"Action"}},{"in":"query","name":"from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"From"}},{"in":"query","name":"to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"To"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuditLogResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Audit Log","tags":["audit"]}},"/api/v1/auth/change-password":{"post":{"description":"Change the current user's password and clear the forced-change flag.","operationId":"change_password_api_v1_auth_change_password_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangePasswordPayload"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"title":"Response Change Password Api V1 Auth Change Password Post","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Change Password","tags":["auth"]}},"/api/v1/auth/invite/{token}":{"post":{"description":"Consume a one-time invite token and activate the invited user.","operationId":"accept_invite_api_v1_auth_invite__token__post","parameters":[{"in":"path","name":"token","required":true,"schema":{"title":"Token","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InviteSetPasswordPayload"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"title":"Response Accept Invite Api V1 Auth Invite  Token  Post","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Accept Invite","tags":["auth"]}},"/api/v1/auth/login":{"post":{"description":"Authenticate username/password and issue access plus refresh tokens.","operationId":"login_api_v1_auth_login_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoginRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/LoginResponse"},{"$ref":"#/components/schemas/MfaRequiredResponse"}],"title":"Response Login Api V1 Auth Login Post"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Login","tags":["auth"]}},"/api/v1/auth/logout":{"post":{"description":"Revoke the current refresh token when provided and clear the refresh cookie.","operationId":"logout_api_v1_auth_logout_post","parameters":[{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"title":"Response Logout Api V1 Auth Logout Post","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Logout","tags":["auth"]}},"/api/v1/auth/me":{"get":{"description":"Return the authenticated user identity.","operationId":"me_api_v1_auth_me_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrentUserResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Me","tags":["auth"]}},"/api/v1/auth/mfa/challenge":{"post":{"operationId":"challenge_api_v1_auth_mfa_challenge_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Challenge","tags":["auth"]}},"/api/v1/auth/mfa/confirm":{"post":{"operationId":"confirm_api_v1_auth_mfa_confirm_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConfirmRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConfirmResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Confirm","tags":["auth"]}},"/api/v1/auth/mfa/enroll":{"post":{"operationId":"enroll_api_v1_auth_mfa_enroll_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnrollResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Enroll","tags":["auth"]}},"/api/v1/auth/mfa/recovery-codes/regenerate":{"post":{"operationId":"regenerate_recovery_codes_api_v1_auth_mfa_recovery_codes_regenerate_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegenerateRecoveryCodesRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecoveryCodesResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Regenerate Recovery Codes","tags":["auth"]}},"/api/v1/auth/mfa/verify":{"post":{"operationId":"verify_api_v1_auth_mfa_verify_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Verify","tags":["auth"]}},"/api/v1/auth/mfa/verify-recovery":{"post":{"operationId":"verify_recovery_api_v1_auth_mfa_verify_recovery_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyRecoveryRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Verify Recovery","tags":["auth"]}},"/api/v1/auth/refresh":{"post":{"description":"Rotate a refresh token and revoke the previous jti.\n\nAccepts the refresh token from an explicit Authorization header or from\nthe httpOnly akira_refresh cookie set during login/MFA.","operationId":"refresh_endpoint_api_v1_auth_refresh_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RefreshResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Refresh Endpoint","tags":["auth"]}},"/api/v1/benchmark/active-asr":{"get":{"description":"ASR target of the running job, polled per call by the loop VAS answer-bot.\n\nUnauthenticated + rate-limit-exempt: it returns only a 0-100 integer and is\nfetched by FreeSWITCH mod_curl (which can't carry the runner token) on every\nlooped call to throttle answers to the target ASR.","operationId":"active_asr_api_v1_benchmark_active_asr_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"responses":{"200":{"content":{"text/plain":{"schema":{"type":"string"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Active Asr","tags":["benchmark"]}},"/api/v1/benchmark/jobs":{"get":{"operationId":"list_benchmark_jobs_api_v1_benchmark_jobs_get","parameters":[{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/BenchmarkJobOut"},"title":"Response List Benchmark Jobs Api V1 Benchmark Jobs Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Benchmark Jobs","tags":["benchmark"]},"post":{"operationId":"create_benchmark_job_api_v1_benchmark_jobs_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BenchmarkJobCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BenchmarkJobOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Benchmark Job","tags":["benchmark"]}},"/api/v1/benchmark/jobs/{job_id}":{"delete":{"description":"Delete a benchmark job (cleanup). Refuses a RUNNING job \u2014 abort it first so\nthe runner stops claiming/executing it before the row disappears.","operationId":"delete_benchmark_job_endpoint_api_v1_benchmark_jobs__job_id__delete","parameters":[{"in":"path","name":"job_id","required":true,"schema":{"title":"Job Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Benchmark Job Endpoint","tags":["benchmark"]},"get":{"operationId":"get_benchmark_job_api_v1_benchmark_jobs__job_id__get","parameters":[{"in":"path","name":"job_id","required":true,"schema":{"title":"Job Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BenchmarkJobOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Benchmark Job","tags":["benchmark"]}},"/api/v1/benchmark/jobs/{job_id}/abort":{"post":{"operationId":"abort_benchmark_job_endpoint_api_v1_benchmark_jobs__job_id__abort_post","parameters":[{"in":"path","name":"job_id","required":true,"schema":{"title":"Job Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/BenchmarkAbortRequest"},{"type":"null"}],"title":"Payload"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BenchmarkAbortResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Abort Benchmark Job Endpoint","tags":["benchmark"]}},"/api/v1/benchmark/jobs/{job_id}/start":{"post":{"description":"Operator action: promote a scheduled job to real (non dry-run) running.","operationId":"start_benchmark_job_endpoint_api_v1_benchmark_jobs__job_id__start_post","parameters":[{"in":"path","name":"job_id","required":true,"schema":{"title":"Job Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BenchmarkJobOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Start Benchmark Job Endpoint","tags":["benchmark"]}},"/api/v1/benchmark/ring":{"get":{"description":"Per-call simulated ring/PDD (milliseconds) for the loop VAS answer-bot.\n\nUnauthenticated + rate-limit-exempt: fetched by FreeSWITCH mod_curl per looped\ncall, in the action data ``sleep ${curl(.../ring)}``. ``kind=answer`` returns a\nhuman pickup delay (~3-12s, peak ~5s); ``kind=noanswer`` a long ring before 480\n(~18-25s). Emulates human behaviour; the rung seconds are NOT billed (billing is\nanswer\u2192hangup via cdr_answered_ts). A curl failure makes ``sleep`` no-op (0),\ndegrading safely to the previous instant-answer behaviour.","operationId":"ring_api_v1_benchmark_ring_get","parameters":[{"in":"query","name":"kind","required":false,"schema":{"default":"answer","title":"Kind","type":"string"}}],"responses":{"200":{"content":{"text/plain":{"schema":{"type":"string"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Ring","tags":["benchmark"]}},"/api/v1/benchmark/roll":{"get":{"description":"Per-call ASR dice for the loop VAS answer-bot: returns 'answer' or 'busy'.\n\nUnauthenticated + rate-limit-exempt: fetched by FreeSWITCH mod_curl on every\nlooped call. The VAS rejects 'busy' (486) and answers anything else (so a curl\nfailure safely defaults to answer). Rolling here avoids fragile nested\n``${cond(${rand}...)}`` expansion in the dialplan.","operationId":"roll_api_v1_benchmark_roll_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"responses":{"200":{"content":{"text/plain":{"schema":{"type":"string"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Roll","tags":["benchmark"]}},"/api/v1/benchmark/runner/next":{"get":{"description":"Runner daemon claims (leases) the next running, real job; 204 when idle.","operationId":"runner_next_job_api_v1_benchmark_runner_next_get","parameters":[{"in":"query","name":"runner_id","required":true,"schema":{"maxLength":128,"minLength":1,"title":"Runner Id","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"X-Benchmark-Runner-Token","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Benchmark-Runner-Token"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BenchmarkRunnerJob"}}},"description":"Successful Response"},"204":{"description":"no job to run"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Runner Next Job","tags":["benchmark"]}},"/api/v1/benchmark/runner/{job_id}/complete":{"post":{"description":"Runner reports terminal status (done/failed) + final metrics.","operationId":"runner_complete_api_v1_benchmark_runner__job_id__complete_post","parameters":[{"in":"path","name":"job_id","required":true,"schema":{"title":"Job Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"X-Benchmark-Runner-Token","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Benchmark-Runner-Token"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BenchmarkRunnerComplete"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BenchmarkRunnerAck"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Runner Complete","tags":["benchmark"]}},"/api/v1/benchmark/runner/{job_id}/heartbeat":{"post":{"description":"Runner reports live metrics + renews its lease; ack tells it whether to abort.","operationId":"runner_heartbeat_api_v1_benchmark_runner__job_id__heartbeat_post","parameters":[{"in":"path","name":"job_id","required":true,"schema":{"title":"Job Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"X-Benchmark-Runner-Token","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Benchmark-Runner-Token"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BenchmarkRunnerHeartbeat"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BenchmarkRunnerAck"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Runner Heartbeat","tags":["benchmark"]}},"/api/v1/billing/balance":{"get":{"operationId":"get_billing_balance_overview_api_v1_billing_balance_get","parameters":[{"in":"query","name":"as_of","required":false,"schema":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"title":"As Of"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BillingBalanceOverview"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Billing Balance Overview","tags":["billing"]}},"/api/v1/billing/low-balance-companies":{"get":{"operationId":"list_low_balance_companies_api_v1_billing_low_balance_companies_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/LowBalanceCompanyRead"},"title":"Response List Low Balance Companies Api V1 Billing Low Balance Companies Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Low Balance Companies","tags":["billing"]}},"/api/v1/blocked-calls":{"get":{"operationId":"list_blocked_calls_api_v1_blocked_calls_get","parameters":[{"in":"query","name":"originator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"}},{"in":"query","name":"policy_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Policy Id"}},{"in":"query","name":"from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"From"}},{"in":"query","name":"to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"To"}},{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":100,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/BlockedCallOut"},"title":"Response List Blocked Calls Api V1 Blocked Calls Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Blocked Calls","tags":["blocked-calls"]}},"/api/v1/cdr":{"get":{"operationId":"list_cdr_api_v1_cdr_get","parameters":[{"in":"query","name":"from","required":true,"schema":{"format":"date-time","title":"From","type":"string"}},{"in":"query","name":"to","required":true,"schema":{"format":"date-time","title":"To","type":"string"}},{"in":"query","name":"originator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"}},{"in":"query","name":"terminator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"destination_group_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Group Id"}},{"in":"query","name":"customer_company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Customer Company Id"}},{"in":"query","name":"src","required":false,"schema":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Src"}},{"in":"query","name":"dst","required":false,"schema":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Dst"}},{"in":"query","name":"src_country","required":false,"schema":{"anyOf":[{"maxLength":2,"pattern":"^[A-Za-z]{2}$","type":"string"},{"type":"null"}],"title":"Src Country"}},{"in":"query","name":"dst_country","required":false,"schema":{"anyOf":[{"maxLength":2,"pattern":"^[A-Za-z]{2}$","type":"string"},{"type":"null"}],"title":"Dst Country"}},{"in":"query","name":"disposition","required":false,"schema":{"anyOf":[{"enum":["ANSWERED","BUSY","NO_ANSWER","FAILED","CANCELLED"],"type":"string"},{"type":"null"}],"title":"Disposition"}},{"in":"query","name":"rejection_reason","required":false,"schema":{"anyOf":[{"enum":["missed_customer_rate","missed_provider_rate","no_route","not_authorized","suspended"],"type":"string"},{"type":"null"}],"title":"Rejection Reason"}},{"in":"query","name":"fraud_flagged","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Fraud Flagged"}},{"in":"query","name":"sip_code","required":false,"schema":{"anyOf":[{"maximum":699,"minimum":100,"type":"integer"},{"type":"null"}],"title":"Sip Code"}},{"in":"query","name":"call_id","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Call Id"}},{"in":"query","name":"pdd_min","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pdd Min"}},{"in":"query","name":"sip_cause_min","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Sip Cause Min"}},{"in":"query","name":"answered_only","required":false,"schema":{"default":false,"title":"Answered Only","type":"boolean"}},{"in":"query","name":"errors","required":false,"schema":{"default":false,"title":"Errors","type":"boolean"}},{"in":"query","name":"short","required":false,"schema":{"default":false,"title":"Short","type":"boolean"}},{"in":"query","name":"fraud","required":false,"schema":{"default":false,"title":"Fraud","type":"boolean"}},{"in":"query","name":"with_recording","required":false,"schema":{"default":false,"title":"With Recording","type":"boolean"}},{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":1000,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"sort","required":false,"schema":{"default":"-started_at","enum":["-started_at","started_at","-revenue"],"title":"Sort","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CdrListResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Cdr","tags":["cdr"]}},"/api/v1/cdr/export":{"get":{"operationId":"export_cdr_api_v1_cdr_export_get","parameters":[{"in":"query","name":"from","required":true,"schema":{"format":"date-time","title":"From","type":"string"}},{"in":"query","name":"to","required":true,"schema":{"format":"date-time","title":"To","type":"string"}},{"in":"query","name":"format","required":false,"schema":{"default":"csv","enum":["csv","xlsx"],"title":"Format","type":"string"}},{"in":"query","name":"originator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"}},{"in":"query","name":"terminator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"destination_group_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Group Id"}},{"in":"query","name":"customer_company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Customer Company Id"}},{"in":"query","name":"src","required":false,"schema":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Src"}},{"in":"query","name":"dst","required":false,"schema":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Dst"}},{"in":"query","name":"src_country","required":false,"schema":{"anyOf":[{"maxLength":2,"pattern":"^[A-Za-z]{2}$","type":"string"},{"type":"null"}],"title":"Src Country"}},{"in":"query","name":"dst_country","required":false,"schema":{"anyOf":[{"maxLength":2,"pattern":"^[A-Za-z]{2}$","type":"string"},{"type":"null"}],"title":"Dst Country"}},{"in":"query","name":"disposition","required":false,"schema":{"anyOf":[{"enum":["ANSWERED","BUSY","NO_ANSWER","FAILED","CANCELLED"],"type":"string"},{"type":"null"}],"title":"Disposition"}},{"in":"query","name":"rejection_reason","required":false,"schema":{"anyOf":[{"enum":["missed_customer_rate","missed_provider_rate","no_route","not_authorized","suspended"],"type":"string"},{"type":"null"}],"title":"Rejection Reason"}},{"in":"query","name":"fraud_flagged","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Fraud Flagged"}},{"in":"query","name":"sip_code","required":false,"schema":{"anyOf":[{"maximum":699,"minimum":100,"type":"integer"},{"type":"null"}],"title":"Sip Code"}},{"in":"query","name":"call_id","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Call Id"}},{"in":"query","name":"pdd_min","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pdd Min"}},{"in":"query","name":"sip_cause_min","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Sip Cause Min"}},{"in":"query","name":"answered_only","required":false,"schema":{"default":false,"title":"Answered Only","type":"boolean"}},{"in":"query","name":"errors","required":false,"schema":{"default":false,"title":"Errors","type":"boolean"}},{"in":"query","name":"short","required":false,"schema":{"default":false,"title":"Short","type":"boolean"}},{"in":"query","name":"fraud","required":false,"schema":{"default":false,"title":"Fraud","type":"boolean"}},{"in":"query","name":"with_recording","required":false,"schema":{"default":false,"title":"With Recording","type":"boolean"}},{"in":"query","name":"sort","required":false,"schema":{"default":"-started_at","enum":["-started_at","started_at","-revenue"],"title":"Sort","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Export Cdr","tags":["cdr"]}},"/api/v1/cdr/ingest":{"post":{"operationId":"ingest_cdr_api_v1_cdr_ingest_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CdrIngestPayload"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CdrIngestResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Ingest Cdr","tags":["cdr"]}},"/api/v1/cdr/{call_id}/sip-trace":{"get":{"operationId":"get_cdr_sip_trace_api_v1_cdr__call_id__sip_trace_get","parameters":[{"in":"path","name":"call_id","required":true,"schema":{"title":"Call Id","type":"string"}},{"in":"query","name":"from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"From"}},{"in":"query","name":"to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"To"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CdrSipTraceResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Cdr Sip Trace","tags":["cdr"]}},"/api/v1/cdr/{call_id}/trace":{"get":{"operationId":"get_cdr_sip_trace_api_v1_cdr__call_id__trace_get","parameters":[{"in":"path","name":"call_id","required":true,"schema":{"title":"Call Id","type":"string"}},{"in":"query","name":"from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"From"}},{"in":"query","name":"to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"To"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CdrSipTraceResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Cdr Sip Trace","tags":["cdr"]}},"/api/v1/companies":{"get":{"operationId":"list_companies_api_v1_companies_get","parameters":[{"in":"query","name":"kind","required":false,"schema":{"anyOf":[{"enum":["customer","supplier","both"],"type":"string"},{"type":"null"}],"title":"Kind"}},{"in":"query","name":"tier","required":false,"schema":{"anyOf":[{"enum":["wholesale","reseller","mobile","tier1"],"type":"string"},{"type":"null"}],"title":"Tier"}},{"in":"query","name":"country","required":false,"schema":{"anyOf":[{"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Country"}},{"in":"query","name":"q","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/CompanyOut"},"title":"Response List Companies Api V1 Companies Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Companies","tags":["companies"]},"post":{"operationId":"create_company_api_v1_companies_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanyCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Company","tags":["companies"]}},"/api/v1/companies/{company_id}/balance":{"get":{"operationId":"get_company_balance_api_v1_companies__company_id__balance_get","parameters":[{"in":"path","name":"company_id","required":true,"schema":{"title":"Company Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BalanceRead"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Company Balance","tags":["billing"]}},"/api/v1/companies/{company_id}/balance/movements":{"get":{"operationId":"list_balance_movements_api_v1_companies__company_id__balance_movements_get","parameters":[{"in":"path","name":"company_id","required":true,"schema":{"title":"Company Id","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MovementsLogResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Balance Movements","tags":["billing"]}},"/api/v1/companies/{company_id}/balance/recharge":{"post":{"operationId":"recharge_balance_api_v1_companies__company_id__balance_recharge_post","parameters":[{"in":"path","name":"company_id","required":true,"schema":{"title":"Company Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"Idempotency-Key","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Idempotency-Key"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RechargeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BalanceMovementRead"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Recharge Balance","tags":["billing"]}},"/api/v1/companies/{company_id}/balance/refund":{"post":{"operationId":"refund_balance_api_v1_companies__company_id__balance_refund_post","parameters":[{"in":"path","name":"company_id","required":true,"schema":{"title":"Company Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"Idempotency-Key","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Idempotency-Key"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RefundRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BalanceMovementRead"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Refund Balance","tags":["billing"]}},"/api/v1/companies/{id}":{"delete":{"operationId":"delete_company_api_v1_companies__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Company","tags":["companies"]},"get":{"operationId":"get_company_api_v1_companies__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Company","tags":["companies"]},"patch":{"operationId":"update_company_api_v1_companies__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanyUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Company","tags":["companies"]}},"/api/v1/currencies":{"get":{"operationId":"list_currencies_api_v1_currencies_get","parameters":[{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/CurrencyOut"},"title":"Response List Currencies Api V1 Currencies Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Currencies","tags":["currencies"]},"post":{"operationId":"create_currency_api_v1_currencies_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrencyCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrencyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Currency","tags":["currencies"]}},"/api/v1/currencies/exchange-rates":{"get":{"operationId":"get_exchange_rate_api_v1_currencies_exchange_rates_get","parameters":[{"in":"query","name":"base","required":true,"schema":{"pattern":"^[A-Z]{3}$","title":"Base","type":"string"}},{"in":"query","name":"quote","required":true,"schema":{"pattern":"^[A-Z]{3}$","title":"Quote","type":"string"}},{"in":"query","name":"at","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"At"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExchangeRateLookupOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Exchange Rate","tags":["currencies"]},"post":{"operationId":"create_exchange_rate_api_v1_currencies_exchange_rates_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrencyExchangeRateCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrencyExchangeRateOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Exchange Rate","tags":["currencies"]}},"/api/v1/currencies/exchange-rates/cache/invalidate":{"post":{"description":"Invalidate Redis FX-rate cache entries.","operationId":"invalidate_currencies_cache_api_v1_currencies_exchange_rates_cache_invalidate_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":{"anyOf":[{"type":"integer"},{"type":"string"}]},"title":"Response Invalidate Currencies Cache Api V1 Currencies Exchange Rates Cache Invalidate Post","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Invalidate Currencies Cache","tags":["currencies"]}},"/api/v1/currencies/exchange-rates/history":{"get":{"operationId":"list_exchange_rate_history_api_v1_currencies_exchange_rates_history_get","parameters":[{"in":"query","name":"base","required":true,"schema":{"pattern":"^[A-Z]{3}$","title":"Base","type":"string"}},{"in":"query","name":"quote","required":true,"schema":{"pattern":"^[A-Z]{3}$","title":"Quote","type":"string"}},{"in":"query","name":"from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"From"}},{"in":"query","name":"to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"To"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/CurrencyExchangeRateOut"},"title":"Response List Exchange Rate History Api V1 Currencies Exchange Rates History Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Exchange Rate History","tags":["currencies"]}},"/api/v1/currencies/{code}":{"get":{"operationId":"get_currency_api_v1_currencies__code__get","parameters":[{"in":"path","name":"code","required":true,"schema":{"title":"Code","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrencyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Currency","tags":["currencies"]},"patch":{"operationId":"update_currency_api_v1_currencies__code__patch","parameters":[{"in":"path","name":"code","required":true,"schema":{"title":"Code","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrencyUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrencyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Currency","tags":["currencies"]}},"/api/v1/currency-rates":{"get":{"operationId":"list_currency_rates_api_v1_currency_rates_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/CurrencyRateRow"},"title":"Response List Currency Rates Api V1 Currency Rates Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Currency Rates","tags":["currency-rates"]},"post":{"operationId":"create_currency_rate_api_v1_currency_rates_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrencyRateCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrencyRateRow"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Currency Rate","tags":["currency-rates"]}},"/api/v1/currency-rates/summary":{"get":{"operationId":"currency_rates_summary_api_v1_currency_rates_summary_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrencyRateSummary"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Currency Rates Summary","tags":["currency-rates"]}},"/api/v1/currency-rates/sync-ecb":{"post":{"operationId":"sync_ecb_rates_api_v1_currency_rates_sync_ecb_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EcbSyncResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Sync Ecb Rates","tags":["currency-rates"]}},"/api/v1/currency-rates/{rate_id}":{"delete":{"operationId":"delete_currency_rate_api_v1_currency_rates__rate_id__delete","parameters":[{"in":"path","name":"rate_id","required":true,"schema":{"title":"Rate Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Currency Rate","tags":["currency-rates"]},"patch":{"operationId":"update_currency_rate_api_v1_currency_rates__rate_id__patch","parameters":[{"in":"path","name":"rate_id","required":true,"schema":{"title":"Rate Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrencyRateUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrencyRateRow"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Currency Rate","tags":["currency-rates"]}},"/api/v1/destination-groups":{"get":{"operationId":"list_destination_groups_api_v1_destination_groups_get","parameters":[{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"kind","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kind"}},{"in":"query","name":"q","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/DestinationGroupOut"},"title":"Response List Destination Groups Api V1 Destination Groups Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Destination Groups","tags":["destination-groups"]},"post":{"operationId":"create_destination_group_api_v1_destination_groups_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationGroupCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationGroupOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Destination Group","tags":["destination-groups"]}},"/api/v1/destination-groups/{id}":{"delete":{"operationId":"delete_destination_group_api_v1_destination_groups__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Destination Group","tags":["destination-groups"]},"get":{"operationId":"get_destination_group_api_v1_destination_groups__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationGroupOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Destination Group","tags":["destination-groups"]},"patch":{"operationId":"update_destination_group_api_v1_destination_groups__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationGroupUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationGroupOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Destination Group","tags":["destination-groups"]}},"/api/v1/destination-groups/{id}/members":{"get":{"operationId":"list_members_api_v1_destination_groups__id__members_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/DestinationGroupMemberOut"},"title":"Response List Members Api V1 Destination Groups  Id  Members Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Members","tags":["destination-groups"]},"post":{"operationId":"create_member_api_v1_destination_groups__id__members_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationGroupMemberCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationGroupMemberOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Member","tags":["destination-groups"]}},"/api/v1/destination-groups/{id}/members/{destination_id}":{"delete":{"operationId":"delete_member_api_v1_destination_groups__id__members__destination_id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"destination_id","required":true,"schema":{"title":"Destination Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Member","tags":["destination-groups"]}},"/api/v1/destinations":{"get":{"operationId":"list_destinations_api_v1_destinations_get","parameters":[{"in":"query","name":"parent_destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Parent Destination Id"}},{"in":"query","name":"country","required":false,"schema":{"anyOf":[{"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Country"}},{"in":"query","name":"destination_type","required":false,"schema":{"anyOf":[{"enum":["fixed","mobile","premium","special","other"],"type":"string"},{"type":"string"},{"type":"null"}],"title":"Destination Type"}},{"in":"query","name":"q","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":5000,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"order_by","required":false,"schema":{"default":"name","enum":["name","country","updated"],"title":"Order By","type":"string"}},{"in":"query","name":"order","required":false,"schema":{"default":"asc","enum":["asc","desc"],"title":"Order","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/DestinationOut"},"title":"Response List Destinations Api V1 Destinations Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Destinations","tags":["destinations"]},"post":{"operationId":"create_destination_api_v1_destinations_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Destination","tags":["destinations"]}},"/api/v1/destinations/count":{"get":{"operationId":"count_destinations_api_v1_destinations_count_get","parameters":[{"in":"query","name":"parent_destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Parent Destination Id"}},{"in":"query","name":"country","required":false,"schema":{"anyOf":[{"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Country"}},{"in":"query","name":"destination_type","required":false,"schema":{"anyOf":[{"enum":["fixed","mobile","premium","special","other"],"type":"string"},{"type":"string"},{"type":"null"}],"title":"Destination Type"}},{"in":"query","name":"q","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"integer"},"title":"Response Count Destinations Api V1 Destinations Count Get","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Count Destinations","tags":["destinations"]}},"/api/v1/destinations/import":{"post":{"operationId":"import_destinations_api_v1_destinations_import_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationImportRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationImportOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Import Destinations","tags":["destinations"]}},"/api/v1/destinations/lookup":{"get":{"operationId":"lookup_destination_api_v1_destinations_lookup_get","parameters":[{"in":"query","name":"digits","required":true,"schema":{"title":"Digits","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationLookupOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Lookup Destination","tags":["destinations"]}},"/api/v1/destinations/{id}":{"delete":{"operationId":"delete_destination_api_v1_destinations__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Destination","tags":["destinations"]},"get":{"operationId":"get_destination_api_v1_destinations__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Destination","tags":["destinations"]},"patch":{"operationId":"update_destination_api_v1_destinations__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Destination","tags":["destinations"]}},"/api/v1/destinations/{id}/prefixes":{"get":{"operationId":"list_prefixes_api_v1_destinations__id__prefixes_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/DestinationPrefixOut"},"title":"Response List Prefixes Api V1 Destinations  Id  Prefixes Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Prefixes","tags":["destinations"]},"post":{"operationId":"create_prefix_api_v1_destinations__id__prefixes_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/DestinationPrefixCreate"},{"$ref":"#/components/schemas/DestinationPrefixBatchCreate"},{"items":{"$ref":"#/components/schemas/DestinationPrefixCreate"},"type":"array"}],"title":"Payload"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/DestinationPrefixOut"},{"$ref":"#/components/schemas/DestinationPrefixBatchOut"}],"title":"Response Create Prefix Api V1 Destinations  Id  Prefixes Post"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Prefix","tags":["destinations"]}},"/api/v1/destinations/{id}/prefixes/{prefix_id}":{"delete":{"operationId":"delete_prefix_api_v1_destinations__id__prefixes__prefix_id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"prefix_id","required":true,"schema":{"title":"Prefix Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Prefix","tags":["destinations"]},"patch":{"operationId":"update_prefix_api_v1_destinations__id__prefixes__prefix_id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"prefix_id","required":true,"schema":{"title":"Prefix Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationPrefixUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DestinationPrefixOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Prefix","tags":["destinations"]}},"/api/v1/devices":{"get":{"operationId":"list_devices_api_v1_devices_get","parameters":[{"in":"query","name":"host","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Host"}},{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"originator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"}},{"in":"query","name":"terminator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"}},{"in":"query","name":"q","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/DeviceOut"},"title":"Response List Devices Api V1 Devices Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Devices","tags":["devices"]},"post":{"operationId":"create_device_api_v1_devices_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeviceCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeviceOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Device","tags":["devices"]}},"/api/v1/devices/{id}":{"delete":{"operationId":"delete_device_api_v1_devices__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Device","tags":["devices"]},"get":{"operationId":"get_device_api_v1_devices__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeviceOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Device","tags":["devices"]},"patch":{"operationId":"update_device_api_v1_devices__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeviceUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeviceOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Device","tags":["devices"]}},"/api/v1/devices/{id}/sip-password":{"post":{"operationId":"set_sip_password_api_v1_devices__id__sip_password_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SipPasswordSetRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeviceOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Set Sip Password","tags":["devices"]}},"/api/v1/e164-country-codes":{"get":{"description":"Public lookup over the semi-static ITU E.164 dataset.","operationId":"list_country_codes_api_v1_e164_country_codes_get","parameters":[{"description":"Search by country_code, iso_alpha2 or country_name","in":"query","name":"q","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Search by country_code, iso_alpha2 or country_name","title":"Q"}},{"in":"query","name":"iso","required":false,"schema":{"anyOf":[{"maxLength":2,"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Iso"}},{"in":"query","name":"is_shared","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Shared"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":300,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/CountryCodeOut"},"title":"Response List Country Codes Api V1 E164 Country Codes Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Country Codes","tags":["lookup"]}},"/api/v1/e164-country-codes/by-prefix/{prefix}":{"get":{"description":"Return the longest E.164 country code match for normalized digits.","operationId":"lookup_by_prefix_api_v1_e164_country_codes_by_prefix__prefix__get","parameters":[{"in":"path","name":"prefix","required":true,"schema":{"title":"Prefix","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CountryCodeOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Lookup By Prefix","tags":["lookup"]}},"/api/v1/e164-country-codes/{country_code}":{"get":{"description":"Lookup by exact ITU E.164 country calling code.","operationId":"get_country_code_api_v1_e164_country_codes__country_code__get","parameters":[{"in":"path","name":"country_code","required":true,"schema":{"title":"Country Code","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CountryCodeOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Country Code","tags":["lookup"]}},"/api/v1/email-templates/{template_id}/preview":{"post":{"operationId":"preview_email_template_api_v1_email_templates__template_id__preview_post","parameters":[{"in":"path","name":"template_id","required":true,"schema":{"title":"Template Id","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmailTemplatePreviewRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmailTemplatePreviewResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Preview Email Template","tags":["settings"]}},"/api/v1/failover-policies":{"get":{"operationId":"list_failover_policies_api_v1_failover_policies_get","parameters":[{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"q","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/FailoverPolicyOut"},"title":"Response List Failover Policies Api V1 Failover Policies Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Failover Policies","tags":["failover-policies"]},"post":{"operationId":"create_failover_policy_api_v1_failover_policies_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FailoverPolicyCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FailoverPolicyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Failover Policy","tags":["failover-policies"]}},"/api/v1/failover-policies/{id}":{"delete":{"operationId":"delete_failover_policy_api_v1_failover_policies__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Failover Policy","tags":["failover-policies"]},"get":{"operationId":"get_failover_policy_api_v1_failover_policies__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FailoverPolicyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Failover Policy","tags":["failover-policies"]},"patch":{"operationId":"update_failover_policy_api_v1_failover_policies__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FailoverPolicyUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FailoverPolicyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Failover Policy","tags":["failover-policies"]}},"/api/v1/future-tariffs/apply-due":{"post":{"operationId":"apply_due_future_tariffs_endpoint_api_v1_future_tariffs_apply_due_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApplyDueFutureTariffsOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Apply Due Future Tariffs Endpoint","tags":["tariff-rates"]}},"/api/v1/future-tariffs/{id}":{"delete":{"operationId":"delete_future_tariff_api_v1_future_tariffs__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Future Tariff","tags":["tariff-rates"]}},"/api/v1/invoices":{"get":{"operationId":"list_invoices_api_v1_invoices_get","parameters":[{"in":"query","name":"company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"}},{"in":"query","name":"status","required":false,"schema":{"anyOf":[{"enum":["draft","issued","paid","overdue","cancelled"],"type":"string"},{"type":"null"}],"title":"Status"}},{"in":"query","name":"status_in","required":false,"schema":{"anyOf":[{"items":{"enum":["draft","issued","paid","overdue","cancelled"],"type":"string"},"type":"array"},{"type":"null"}],"title":"Status In"}},{"in":"query","name":"type","required":false,"schema":{"anyOf":[{"enum":["customer","supplier","reseller","credit_note","proforma"],"type":"string"},{"type":"null"}],"title":"Type"}},{"in":"query","name":"period_start","required":false,"schema":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"title":"Period Start"}},{"in":"query","name":"period_end","required":false,"schema":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"title":"Period End"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceListResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Invoices","tags":["invoices"]}},"/api/v1/invoices/generate":{"post":{"operationId":"generate_api_v1_invoices_generate_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceGenerateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceDetailRead"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Generate","tags":["invoices"]}},"/api/v1/invoices/generate-batch":{"post":{"operationId":"generate_batch_api_v1_invoices_generate_batch_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceBatchGenerateRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceBatchGenerateResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Generate Batch","tags":["invoices"]}},"/api/v1/invoices/generate-batch/preview":{"post":{"operationId":"preview_generate_batch_api_v1_invoices_generate_batch_preview_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceBatchGenerateRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceBatchGeneratePreviewResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Preview Generate Batch","tags":["invoices"]}},"/api/v1/invoices/supplier-ingestion":{"post":{"operationId":"ingest_supplier_invoice_api_v1_invoices_supplier_ingestion_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_ingest_supplier_invoice_api_v1_invoices_supplier_ingestion_post"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupplierInvoiceIngestionResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Ingest Supplier Invoice","tags":["invoices"]}},"/api/v1/invoices/{invoice_id}":{"get":{"operationId":"get_invoice_api_v1_invoices__invoice_id__get","parameters":[{"in":"path","name":"invoice_id","required":true,"schema":{"title":"Invoice Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceDetailRead"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Invoice","tags":["invoices"]}},"/api/v1/invoices/{invoice_id}/issue":{"post":{"operationId":"issue_api_v1_invoices__invoice_id__issue_post","parameters":[{"in":"path","name":"invoice_id","required":true,"schema":{"title":"Invoice Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceDetailRead"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Issue","tags":["invoices"]}},"/api/v1/invoices/{invoice_id}/pdf":{"get":{"operationId":"download_pdf_api_v1_invoices__invoice_id__pdf_get","parameters":[{"in":"path","name":"invoice_id","required":true,"schema":{"title":"Invoice Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Download Pdf","tags":["invoices"]}},"/api/v1/invoices/{invoice_id}/status":{"patch":{"operationId":"update_status_api_v1_invoices__invoice_id__status_patch","parameters":[{"in":"path","name":"invoice_id","required":true,"schema":{"title":"Invoice Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceStatusUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceDetailRead"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Status","tags":["invoices"]}},"/api/v1/live/calls":{"get":{"description":"SSE stream of Kamailio call lifecycle events from NATS pub/sub.","operationId":"stream_live_calls_api_v1_live_calls_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Stream Live Calls","tags":["live"]}},"/api/v1/live/calls/metrics":{"get":{"description":"KPI-strip aggregates for the Live Calls page, derived from the CDRs (the live\nactive-calls snapshot only holds in-flight calls, so CPS/ASR/PDD cannot be\ncomputed from it). CPS is the call-setup rate over the last minute; ASR/ACD/PDD\nare over a 15-minute trailing window. None when there is no traffic in-window.","operationId":"live_calls_metrics_api_v1_live_calls_metrics_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":true,"title":"Response Live Calls Metrics Api V1 Live Calls Metrics Get","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Live Calls Metrics","tags":["live"]}},"/api/v1/live/calls/snapshot":{"get":{"description":"Return active calls currently tracked in Redis (names resolved from the DB).","operationId":"snapshot_active_calls_api_v1_live_calls_snapshot_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"additionalProperties":true,"type":"object"},"title":"Response Snapshot Active Calls Api V1 Live Calls Snapshot Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Snapshot Active Calls","tags":["live"]}},"/api/v1/noc/aggregate":{"get":{"description":"Return a real-time NOC aggregate snapshot for the dashboard.","operationId":"noc_aggregate_api_v1_noc_aggregate_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NocAggregateOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Noc Aggregate","tags":["noc"]}},"/api/v1/noc/tests":{"get":{"description":"Return recent NOC TT tests, optionally filtered by terminator and status.","operationId":"list_noc_tests_api_v1_noc_tests_get","parameters":[{"in":"query","name":"terminator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"}},{"in":"query","name":"status","required":false,"schema":{"anyOf":[{"enum":["queued","running","completed","failed"],"type":"string"},{"type":"null"}],"title":"Status"}},{"in":"query","name":"limit","required":false,"schema":{"default":20,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"order_by","required":false,"schema":{"default":"started_at","pattern":"^(started_at|finished_at|id)$","title":"Order By","type":"string"}},{"in":"query","name":"order","required":false,"schema":{"default":"desc","pattern":"^(asc|desc)$","title":"Order","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/NocTestRunOut"},"title":"Response List Noc Tests Api V1 Noc Tests Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Noc Tests","tags":["noc"]}},"/api/v1/offers":{"get":{"operationId":"list_offers_api_v1_offers_get","parameters":[{"in":"query","name":"tariff_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Tariff Id"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OfferOut"},"title":"Response List Offers Api V1 Offers Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Offers","tags":["offers"]},"post":{"operationId":"create_offer_api_v1_offers_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Offer","tags":["offers"]}},"/api/v1/offers/base-rate":{"get":{"operationId":"get_offer_base_rate_api_v1_offers_base_rate_get","parameters":[{"in":"query","name":"tariff_id","required":true,"schema":{"title":"Tariff Id","type":"integer"}},{"in":"query","name":"destination_id","required":true,"schema":{"title":"Destination Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferBaseRateOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Offer Base Rate","tags":["offers"]}},"/api/v1/offers/{id}":{"delete":{"operationId":"delete_offer_api_v1_offers__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Offer","tags":["offers"]},"get":{"operationId":"get_offer_api_v1_offers__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Offer","tags":["offers"]},"patch":{"operationId":"update_offer_api_v1_offers__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Offer","tags":["offers"]}},"/api/v1/originators":{"get":{"operationId":"list_originators_api_v1_originators_get","parameters":[{"in":"query","name":"company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"}},{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"tier","required":false,"schema":{"anyOf":[{"enum":["standard","premium","grey"],"type":"string"},{"type":"null"}],"title":"Tier"}},{"in":"query","name":"q","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OriginatorOut"},"title":"Response List Originators Api V1 Originators Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Originators","tags":["originators"]},"post":{"operationId":"create_originator_api_v1_originators_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OriginatorCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OriginatorOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Originator","tags":["originators"]}},"/api/v1/originators/{id}":{"delete":{"operationId":"delete_originator_api_v1_originators__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Originator","tags":["originators"]},"get":{"operationId":"get_originator_api_v1_originators__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OriginatorOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Originator","tags":["originators"]},"patch":{"operationId":"update_originator_api_v1_originators__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OriginatorUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OriginatorOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Originator","tags":["originators"]}},"/api/v1/originators/{id}/activate":{"post":{"operationId":"activate_originator_api_v1_originators__id__activate_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OriginatorOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Activate Originator","tags":["originators"]}},"/api/v1/originators/{id}/call-loss-rules":{"get":{"operationId":"list_call_loss_rules_api_v1_originators__id__call_loss_rules_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OriginatorCallLossRuleOut"},"title":"Response List Call Loss Rules Api V1 Originators  Id  Call Loss Rules Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Call Loss Rules","tags":["originators"]},"post":{"operationId":"create_call_loss_rule_api_v1_originators__id__call_loss_rules_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OriginatorCallLossRuleCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OriginatorCallLossRuleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Call Loss Rule","tags":["originators"]}},"/api/v1/originators/{id}/call-loss-rules/{rule_id}":{"delete":{"operationId":"delete_call_loss_rule_api_v1_originators__id__call_loss_rules__rule_id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"rule_id","required":true,"schema":{"title":"Rule Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Call Loss Rule","tags":["originators"]},"get":{"operationId":"get_call_loss_rule_api_v1_originators__id__call_loss_rules__rule_id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"rule_id","required":true,"schema":{"title":"Rule Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OriginatorCallLossRuleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Call Loss Rule","tags":["originators"]},"patch":{"operationId":"update_call_loss_rule_api_v1_originators__id__call_loss_rules__rule_id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"rule_id","required":true,"schema":{"title":"Rule Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OriginatorCallLossRuleUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OriginatorCallLossRuleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Call Loss Rule","tags":["originators"]}},"/api/v1/originators/{id}/deactivate":{"post":{"operationId":"deactivate_originator_api_v1_originators__id__deactivate_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OriginatorOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Deactivate Originator","tags":["originators"]}},"/api/v1/pattern/detections":{"get":{"operationId":"list_pattern_detections_api_v1_pattern_detections_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatternDetectionList"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Pattern Detections","tags":["pattern"]}},"/api/v1/pattern/findings":{"get":{"operationId":"list_pattern_findings_api_v1_pattern_findings_get","parameters":[{"in":"query","name":"run_id","required":true,"schema":{"format":"uuid","title":"Run Id","type":"string"}},{"in":"query","name":"detection_kind","required":false,"schema":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Detection Kind"}},{"in":"query","name":"severity","required":false,"schema":{"anyOf":[{"enum":["critical","high","medium","low"],"type":"string"},{"type":"null"}],"title":"Severity"}},{"in":"query","name":"entity_type","required":false,"schema":{"anyOf":[{"enum":["originator","terminator","destination","cli","dst_prefix","src_prefix","route","time_bucket"],"type":"string"},{"type":"null"}],"title":"Entity Type"}},{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatternFindingList"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Pattern Findings","tags":["pattern"]}},"/api/v1/pattern/runs":{"get":{"operationId":"list_pattern_runs_api_v1_pattern_runs_get","parameters":[{"in":"query","name":"status","required":false,"schema":{"anyOf":[{"enum":["queued","running","succeeded","failed","canceled"],"type":"string"},{"type":"null"}],"title":"Status"}},{"in":"query","name":"trigger_kind","required":false,"schema":{"anyOf":[{"enum":["on_demand","scheduled"],"type":"string"},{"type":"null"}],"title":"Trigger Kind"}},{"in":"query","name":"detection_kind","required":false,"schema":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"title":"Detection Kind"}},{"in":"query","name":"window_from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Window From"}},{"in":"query","name":"window_to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Window To"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatternRunList"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Pattern Runs","tags":["pattern"]},"post":{"operationId":"create_pattern_run_api_v1_pattern_runs_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatternRunCreate"}}},"required":true},"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatternRunQueued"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Pattern Run","tags":["pattern"]}},"/api/v1/pattern/runs/{run_id}":{"get":{"operationId":"get_pattern_run_api_v1_pattern_runs__run_id__get","parameters":[{"in":"path","name":"run_id","required":true,"schema":{"format":"uuid","title":"Run Id","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatternRunOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Pattern Run","tags":["pattern"]}},"/api/v1/pattern/schedules":{"get":{"operationId":"list_pattern_schedules_api_v1_pattern_schedules_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatternScheduleList"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Pattern Schedules","tags":["pattern"]},"post":{"operationId":"create_pattern_schedule_api_v1_pattern_schedules_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatternScheduleCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatternScheduleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Pattern Schedule","tags":["pattern"]}},"/api/v1/pattern/schedules/{schedule_id}":{"delete":{"operationId":"delete_pattern_schedule_api_v1_pattern_schedules__schedule_id__delete","parameters":[{"in":"path","name":"schedule_id","required":true,"schema":{"format":"uuid","title":"Schedule Id","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Pattern Schedule","tags":["pattern"]},"patch":{"operationId":"update_pattern_schedule_api_v1_pattern_schedules__schedule_id__patch","parameters":[{"in":"path","name":"schedule_id","required":true,"schema":{"format":"uuid","title":"Schedule Id","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatternScheduleUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatternScheduleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Pattern Schedule","tags":["pattern"]}},"/api/v1/public/status/incidents":{"get":{"description":"Return the latest public incidents only.","operationId":"public_incidents_api_v1_public_status_incidents_get","parameters":[{"in":"query","name":"last","required":false,"schema":{"default":10,"maximum":100,"minimum":1,"title":"Last","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"additionalProperties":true,"type":"object"},"title":"Response Public Incidents Api V1 Public Status Incidents Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Public Incidents","tags":["public-status"]}},"/api/v1/public/status/rss":{"get":{"description":"Atom feed for public incident updates.","operationId":"public_status_rss_api_v1_public_status_rss_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"responses":{"200":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Public Status Rss","tags":["public-status"]}},"/api/v1/public/status/services":{"get":{"description":"Real-time service status and uptime trend for the public status page.","operationId":"services_status_api_v1_public_status_services_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"additionalProperties":true,"type":"object"},"title":"Response Services Status Api V1 Public Status Services Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Services Status","tags":["public-status"]}},"/api/v1/quality-alerts":{"get":{"operationId":"list_quality_alerts_api_v1_quality_alerts_get","parameters":[{"in":"query","name":"status","required":false,"schema":{"anyOf":[{"enum":["open","resolved","muted"],"type":"string"},{"type":"null"}],"title":"Status"}},{"in":"query","name":"policy_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Policy Id"}},{"in":"query","name":"from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"From"}},{"in":"query","name":"to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"To"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/QualityAlertOut"},"title":"Response List Quality Alerts Api V1 Quality Alerts Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Quality Alerts","tags":["quality-alerts"]}},"/api/v1/quality-alerts/{id}":{"get":{"operationId":"get_quality_alert_api_v1_quality_alerts__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityAlertOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Quality Alert","tags":["quality-alerts"]}},"/api/v1/quality-alerts/{id}/mute":{"patch":{"description":"Mute alert con motivazione obbligatoria.\n\n`payload.reason` viene persistito nella colonna `notes` dell'alert e\nincluso nel record audit_log (`after.reason`) per il trail completo.","operationId":"mute_quality_alert_api_v1_quality_alerts__id__mute_patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityAlertMuteIn"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityAlertOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Mute Quality Alert","tags":["quality-alerts"]}},"/api/v1/quality-alerts/{id}/resolve":{"patch":{"operationId":"resolve_quality_alert_api_v1_quality_alerts__id__resolve_patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityAlertOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Resolve Quality Alert","tags":["quality-alerts"]}},"/api/v1/quality-alerts/{id}/unmute":{"patch":{"operationId":"unmute_quality_alert_api_v1_quality_alerts__id__unmute_patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityAlertOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Unmute Quality Alert","tags":["quality-alerts"]}},"/api/v1/quality-policies":{"get":{"operationId":"list_quality_policies_api_v1_quality_policies_get","parameters":[{"in":"query","name":"scope_originator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Originator Id"}},{"in":"query","name":"scope_destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Destination Id"}},{"in":"query","name":"scope_terminator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scope Terminator Id"}},{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/QualityPolicyOut"},"title":"Response List Quality Policies Api V1 Quality Policies Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Quality Policies","tags":["quality-policies"]},"post":{"operationId":"create_quality_policy_api_v1_quality_policies_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Quality Policy","tags":["quality-policies"]}},"/api/v1/quality-policies/{id}":{"delete":{"operationId":"delete_quality_policy_api_v1_quality_policies__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Quality Policy","tags":["quality-policies"]},"get":{"operationId":"get_quality_policy_api_v1_quality_policies__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Quality Policy","tags":["quality-policies"]},"patch":{"operationId":"update_quality_policy_api_v1_quality_policies__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Quality Policy","tags":["quality-policies"]}},"/api/v1/quality-policies/{id}/actions":{"get":{"operationId":"list_quality_policy_actions_api_v1_quality_policies__id__actions_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/QualityPolicyActionOut"},"title":"Response List Quality Policy Actions Api V1 Quality Policies  Id  Actions Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Quality Policy Actions","tags":["quality-policies"]},"post":{"operationId":"create_quality_policy_action_api_v1_quality_policies__id__actions_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyActionCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyActionOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Quality Policy Action","tags":["quality-policies"]}},"/api/v1/quality-policies/{id}/actions/{action_id}":{"delete":{"operationId":"delete_quality_policy_action_api_v1_quality_policies__id__actions__action_id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"action_id","required":true,"schema":{"title":"Action Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Quality Policy Action","tags":["quality-policies"]},"patch":{"operationId":"update_quality_policy_action_api_v1_quality_policies__id__actions__action_id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"action_id","required":true,"schema":{"title":"Action Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyActionUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyActionOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Quality Policy Action","tags":["quality-policies"]}},"/api/v1/quality-policies/{id}/notifications":{"get":{"operationId":"list_quality_policy_notifications_api_v1_quality_policies__id__notifications_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/QualityPolicyNotificationOut"},"title":"Response List Quality Policy Notifications Api V1 Quality Policies  Id  Notifications Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Quality Policy Notifications","tags":["quality-policies"]},"post":{"operationId":"create_quality_policy_notification_api_v1_quality_policies__id__notifications_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyNotificationCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyNotificationOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Quality Policy Notification","tags":["quality-policies"]}},"/api/v1/quality-policies/{id}/notifications/{notification_id}":{"delete":{"operationId":"delete_quality_policy_notification_api_v1_quality_policies__id__notifications__notification_id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"notification_id","required":true,"schema":{"title":"Notification Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Quality Policy Notification","tags":["quality-policies"]},"patch":{"operationId":"update_quality_policy_notification_api_v1_quality_policies__id__notifications__notification_id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"notification_id","required":true,"schema":{"title":"Notification Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyNotificationUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyNotificationOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Quality Policy Notification","tags":["quality-policies"]}},"/api/v1/quality-policies/{id}/thresholds":{"get":{"operationId":"list_quality_policy_thresholds_api_v1_quality_policies__id__thresholds_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/QualityPolicyThresholdOut"},"title":"Response List Quality Policy Thresholds Api V1 Quality Policies  Id  Thresholds Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Quality Policy Thresholds","tags":["quality-policies"]},"post":{"operationId":"create_quality_policy_threshold_api_v1_quality_policies__id__thresholds_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyThresholdCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyThresholdOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Quality Policy Threshold","tags":["quality-policies"]}},"/api/v1/quality-policies/{id}/thresholds/{threshold_id}":{"delete":{"operationId":"delete_quality_policy_threshold_api_v1_quality_policies__id__thresholds__threshold_id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"threshold_id","required":true,"schema":{"title":"Threshold Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Quality Policy Threshold","tags":["quality-policies"]},"get":{"operationId":"get_quality_policy_threshold_api_v1_quality_policies__id__thresholds__threshold_id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"threshold_id","required":true,"schema":{"title":"Threshold Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyThresholdOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Quality Policy Threshold","tags":["quality-policies"]},"patch":{"operationId":"update_quality_policy_threshold_api_v1_quality_policies__id__thresholds__threshold_id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"threshold_id","required":true,"schema":{"title":"Threshold Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyThresholdUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityPolicyThresholdOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Quality Policy Threshold","tags":["quality-policies"]}},"/api/v1/rebill/report":{"get":{"operationId":"report_api_v1_rebill_report_get","parameters":[{"in":"query","name":"period_start","required":true,"schema":{"format":"date","title":"Period Start","type":"string"}},{"in":"query","name":"period_end","required":true,"schema":{"format":"date","title":"Period End","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/RebillReportRow"},"title":"Response Report Api V1 Rebill Report Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Report","tags":["rebill"]}},"/api/v1/rebill/resellers":{"get":{"operationId":"list_resellers_api_v1_rebill_resellers_get","parameters":[{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/RebillResellerOut"},"title":"Response List Resellers Api V1 Rebill Resellers Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Resellers","tags":["rebill"]}},"/api/v1/rebill/resellers/{reseller_id}/children":{"get":{"operationId":"list_children_api_v1_rebill_resellers__reseller_id__children_get","parameters":[{"in":"path","name":"reseller_id","required":true,"schema":{"title":"Reseller Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/RebillChildCompanyOut"},"title":"Response List Children Api V1 Rebill Resellers  Reseller Id  Children Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Children","tags":["rebill"]}},"/api/v1/rebill/resellers/{reseller_id}/rules":{"get":{"operationId":"list_rules_api_v1_rebill_resellers__reseller_id__rules_get","parameters":[{"in":"path","name":"reseller_id","required":true,"schema":{"title":"Reseller Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/RebillMarkupRuleOut"},"title":"Response List Rules Api V1 Rebill Resellers  Reseller Id  Rules Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Rules","tags":["rebill"]},"post":{"operationId":"create_rule_api_v1_rebill_resellers__reseller_id__rules_post","parameters":[{"in":"path","name":"reseller_id","required":true,"schema":{"title":"Reseller Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RebillMarkupRuleCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RebillMarkupRuleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Rule","tags":["rebill"]}},"/api/v1/rebill/resellers/{reseller_id}/rules/{rule_id}":{"delete":{"operationId":"delete_rule_api_v1_rebill_resellers__reseller_id__rules__rule_id__delete","parameters":[{"in":"path","name":"reseller_id","required":true,"schema":{"title":"Reseller Id","type":"integer"}},{"in":"path","name":"rule_id","required":true,"schema":{"title":"Rule Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Rule","tags":["rebill"]},"patch":{"operationId":"update_rule_api_v1_rebill_resellers__reseller_id__rules__rule_id__patch","parameters":[{"in":"path","name":"reseller_id","required":true,"schema":{"title":"Reseller Id","type":"integer"}},{"in":"path","name":"rule_id","required":true,"schema":{"title":"Rule Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RebillMarkupRuleUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RebillMarkupRuleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Rule","tags":["rebill"]}},"/api/v1/reports/active-calls":{"get":{"operationId":"active_calls_api_v1_reports_active_calls_get","parameters":[{"in":"query","name":"originator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"}},{"in":"query","name":"terminator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"country","required":false,"schema":{"anyOf":[{"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Country"}},{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActiveCallsResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Active Calls","tags":["reports"]}},"/api/v1/reports/calls-per-day":{"get":{"operationId":"calls_per_day_api_v1_reports_calls_per_day_get","parameters":[{"in":"query","name":"from","required":true,"schema":{"format":"date-time","title":"From","type":"string"}},{"in":"query","name":"to","required":true,"schema":{"format":"date-time","title":"To","type":"string"}},{"in":"query","name":"originator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"}},{"in":"query","name":"terminator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"destination_group_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Group Id"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CallsPerDayResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Calls Per Day","tags":["reports"]}},"/api/v1/reports/calls-per-day/export":{"get":{"operationId":"calls_per_day_export_api_v1_reports_calls_per_day_export_get","parameters":[{"in":"query","name":"from","required":true,"schema":{"format":"date-time","title":"From","type":"string"}},{"in":"query","name":"to","required":true,"schema":{"format":"date-time","title":"To","type":"string"}},{"in":"query","name":"originator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"}},{"in":"query","name":"terminator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"destination_group_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Group Id"}},{"in":"query","name":"format","required":false,"schema":{"default":"csv","enum":["csv","xlsx"],"title":"Format","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Calls Per Day Export","tags":["reports"]}},"/api/v1/reports/consumption":{"get":{"operationId":"consumption_report_api_v1_reports_consumption_get","parameters":[{"in":"query","name":"from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"From"}},{"in":"query","name":"to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"To"}},{"in":"query","name":"period_start","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Period Start"}},{"in":"query","name":"period_end","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Period End"}},{"in":"query","name":"granularity","required":false,"schema":{"default":"day","enum":["day","week","month"],"title":"Granularity","type":"string"}},{"in":"query","name":"customer_id","required":false,"schema":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Customer Id"}},{"in":"query","name":"company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"}},{"in":"query","name":"originator_id","required":false,"schema":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Originator Id"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"destination_group_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Group Id"}},{"in":"query","name":"country","required":false,"schema":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Country"}},{"in":"query","name":"group_by","required":false,"schema":{"anyOf":[{"enum":["company","destination","supplier","country","hour","day_of_week","day"],"type":"string"},{"type":"null"}],"title":"Group By"}},{"in":"query","name":"format","required":false,"schema":{"default":"json","enum":["json","csv","xlsx"],"title":"Format","type":"string"}},{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":1000,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Consumption Report","tags":["reports"]}},"/api/v1/reports/consumption/compare":{"get":{"description":"Period Comparison report (DOC cap. 26.5/26.12).\n\nAggregates calls/minutes/revenue/cost/margin over two arbitrary periods and\nreturns side-by-side rows grouped by company, supplier, destination, country\nor time bucket, with absolute and percent deltas for the dashboard.","operationId":"consumption_compare_api_v1_reports_consumption_compare_get","parameters":[{"in":"query","name":"period_a_from","required":true,"schema":{"format":"date-time","title":"Period A From","type":"string"}},{"in":"query","name":"period_a_to","required":true,"schema":{"format":"date-time","title":"Period A To","type":"string"}},{"in":"query","name":"period_b_from","required":true,"schema":{"format":"date-time","title":"Period B From","type":"string"}},{"in":"query","name":"period_b_to","required":true,"schema":{"format":"date-time","title":"Period B To","type":"string"}},{"in":"query","name":"group_by","required":false,"schema":{"default":"company","enum":["company","destination","supplier","country","hour","day_of_week"],"title":"Group By","type":"string"}},{"in":"query","name":"company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"}},{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":500,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsumptionCompareResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Consumption Compare","tags":["reports"]}},"/api/v1/reports/consumption/daily":{"get":{"operationId":"consumption_daily_chart_api_v1_reports_consumption_daily_get","parameters":[{"in":"query","name":"from","required":true,"schema":{"format":"date-time","title":"From","type":"string"}},{"in":"query","name":"to","required":true,"schema":{"format":"date-time","title":"To","type":"string"}},{"in":"query","name":"company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Consumption Daily Chart","tags":["reports"]}},"/api/v1/reports/consumption/export":{"get":{"operationId":"consumption_export_api_v1_reports_consumption_export_get","parameters":[{"in":"query","name":"from","required":true,"schema":{"format":"date-time","title":"From","type":"string"}},{"in":"query","name":"to","required":true,"schema":{"format":"date-time","title":"To","type":"string"}},{"in":"query","name":"format","required":false,"schema":{"default":"csv","enum":["csv","xlsx"],"title":"Format","type":"string"}},{"in":"query","name":"granularity","required":false,"schema":{"default":"day","enum":["day","week","month"],"title":"Granularity","type":"string"}},{"in":"query","name":"customer_id","required":false,"schema":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Customer Id"}},{"in":"query","name":"originator_id","required":false,"schema":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Originator Id"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"destination_group_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Group Id"}},{"in":"query","name":"country","required":false,"schema":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Country"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Consumption Export","tags":["reports"]}},"/api/v1/reports/live":{"get":{"operationId":"live_report_api_v1_reports_live_get","parameters":[{"in":"query","name":"range","required":false,"schema":{"default":"5m","enum":["5m","1h","24h"],"title":"Range","type":"string"}},{"in":"query","name":"originator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"}},{"in":"query","name":"country","required":false,"schema":{"anyOf":[{"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Country"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"destination_group_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Group Id"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LiveReportResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Live Report","tags":["reports"]}},"/api/v1/reports/live/carrier-health":{"get":{"description":"Carrier Health Matrix Dest\u00d7Term (cap. 23.7).\n\nRows = terminator or destination, columns = time buckets of ``bucket_minutes``.\nCells expose ASR rolling per bucket, with health classification derived from\naggregated ASR / samples (cap. 23.3 ``min_samples`` guard).","operationId":"carrier_health_matrix_api_v1_reports_live_carrier_health_get","parameters":[{"in":"query","name":"range","required":false,"schema":{"default":"2h","enum":["1h","2h","6h","24h"],"title":"Range","type":"string"}},{"in":"query","name":"bucket_minutes","required":false,"schema":{"default":15,"maximum":60,"minimum":1,"title":"Bucket Minutes","type":"integer"}},{"in":"query","name":"group_by","required":false,"schema":{"default":"terminator","enum":["terminator","destination"],"title":"Group By","type":"string"}},{"in":"query","name":"min_samples","required":false,"schema":{"default":20,"maximum":10000,"minimum":0,"title":"Min Samples","type":"integer"}},{"in":"query","name":"originator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"}},{"in":"query","name":"country","required":false,"schema":{"anyOf":[{"pattern":"^[A-Z]{2}$","type":"string"},{"type":"null"}],"title":"Country"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"destination_group_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Group Id"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CarrierHealthMatrixResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Carrier Health Matrix","tags":["reports"]}},"/api/v1/reports/pivot":{"get":{"description":"Return a configurable pivot computed from the CDR hypertable.","operationId":"pivot_report_api_v1_reports_pivot_get","parameters":[{"in":"query","name":"from","required":true,"schema":{"format":"date-time","title":"From","type":"string"}},{"in":"query","name":"to","required":true,"schema":{"format":"date-time","title":"To","type":"string"}},{"in":"query","name":"granularity","required":false,"schema":{"default":"day","enum":["hour","day","week","month"],"title":"Granularity","type":"string"}},{"in":"query","name":"group_by","required":false,"schema":{"anyOf":[{"items":{"enum":["originator","destination","terminator","company","country","hour"],"type":"string"},"type":"array"},{"type":"null"}],"title":"Group By"}},{"in":"query","name":"metrics","required":false,"schema":{"anyOf":[{"items":{"enum":["calls","min_sent","min_billed","dur_orig","dur_term","asr","acd","pdd","revenue","cost","margin","profit","markup","margin_pct"],"type":"string"},"type":"array"},{"type":"null"}],"title":"Metrics"}},{"in":"query","name":"originator","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Originator"}},{"in":"query","name":"destination","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Destination"}},{"in":"query","name":"limit","required":false,"schema":{"default":200,"maximum":500,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PivotResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Pivot Report","tags":["reports"]}},"/api/v1/reports/pivot/export":{"get":{"description":"Download the same pivot rows as CSV/XLSX.","operationId":"pivot_export_api_v1_reports_pivot_export_get","parameters":[{"in":"query","name":"from","required":true,"schema":{"format":"date-time","title":"From","type":"string"}},{"in":"query","name":"to","required":true,"schema":{"format":"date-time","title":"To","type":"string"}},{"in":"query","name":"format","required":false,"schema":{"default":"csv","enum":["csv","xlsx"],"title":"Format","type":"string"}},{"in":"query","name":"granularity","required":false,"schema":{"default":"day","enum":["hour","day","week","month"],"title":"Granularity","type":"string"}},{"in":"query","name":"group_by","required":false,"schema":{"anyOf":[{"items":{"enum":["originator","destination","terminator","company","country","hour"],"type":"string"},"type":"array"},{"type":"null"}],"title":"Group By"}},{"in":"query","name":"metrics","required":false,"schema":{"anyOf":[{"items":{"enum":["calls","min_sent","min_billed","dur_orig","dur_term","asr","acd","pdd","revenue","cost","margin","profit","markup","margin_pct"],"type":"string"},"type":"array"},{"type":"null"}],"title":"Metrics"}},{"in":"query","name":"originator","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Originator"}},{"in":"query","name":"destination","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Destination"}},{"in":"query","name":"terminator","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Terminator"}},{"in":"query","name":"prefix","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Prefix"}},{"in":"query","name":"anomaly","required":false,"schema":{"default":"all","enum":["all","negative","lowmargin","fraud","high"],"title":"Anomaly","type":"string"}},{"in":"query","name":"limit","required":false,"schema":{"default":500,"maximum":500,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Pivot Export","tags":["reports"]}},"/api/v1/reports/quality":{"get":{"operationId":"quality_report_api_v1_reports_quality_get","parameters":[{"in":"query","name":"from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"From"}},{"in":"query","name":"to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"To"}},{"in":"query","name":"period_start","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Period Start"}},{"in":"query","name":"period_end","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Period End"}},{"in":"query","name":"terminator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"}},{"in":"query","name":"group_by","required":false,"schema":{"default":"terminator","enum":["terminator","day"],"title":"Group By","type":"string"}},{"in":"query","name":"format","required":false,"schema":{"default":"json","enum":["json","csv"],"title":"Format","type":"string"}},{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":1000,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"destination_group_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Group Id"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Quality Report","tags":["reports"]}},"/api/v1/reports/quality/dry-run":{"post":{"description":"Preview policy match: nessun alert persistito, audit-log non aggiornato.","operationId":"quality_policy_dry_run_api_v1_reports_quality_dry_run_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityDryRunIn"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityDryRunOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Quality Policy Dry Run","tags":["reports"]}},"/api/v1/reports/quality/open-tt-stub":{"post":{"operationId":"open_tt_stub_api_v1_reports_quality_open_tt_stub_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityOpenTtStubIn"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityOpenTtStubOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Open Tt Stub","tags":["reports"]}},"/api/v1/reports/quality/trend":{"get":{"operationId":"quality_trend_api_v1_reports_quality_trend_get","parameters":[{"in":"query","name":"from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"From"}},{"in":"query","name":"to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"To"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Quality Trend","tags":["reports"]}},"/api/v1/reports/revenue":{"get":{"operationId":"get_revenue_api_v1_reports_revenue_get","parameters":[{"in":"query","name":"period_start","required":true,"schema":{"format":"date-time","title":"Period Start","type":"string"}},{"in":"query","name":"period_end","required":true,"schema":{"format":"date-time","title":"Period End","type":"string"}},{"in":"query","name":"company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"}},{"in":"query","name":"group_by","required":false,"schema":{"default":"month","enum":["company","month","day"],"title":"Group By","type":"string"}},{"in":"query","name":"format","required":false,"schema":{"default":"json","enum":["json","csv"],"title":"Format","type":"string"}},{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":1000,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Revenue","tags":["reports"]}},"/api/v1/reports/settlement":{"get":{"operationId":"get_settlement_api_v1_reports_settlement_get","parameters":[{"in":"query","name":"period_start","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Period Start"}},{"in":"query","name":"period_end","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"title":"Period End"}},{"in":"query","name":"company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"}},{"in":"query","name":"format","required":false,"schema":{"default":"json","enum":["json","csv"],"title":"Format","type":"string"}},{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":1000,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Settlement","tags":["reports"]}},"/api/v1/reports/source-destinations":{"get":{"operationId":"source_destinations_matrix_api_v1_reports_source_destinations_get","parameters":[{"in":"query","name":"from","required":true,"schema":{"format":"date-time","title":"From","type":"string"}},{"in":"query","name":"to","required":true,"schema":{"format":"date-time","title":"To","type":"string"}},{"in":"query","name":"metric","required":false,"schema":{"default":"calls","enum":["calls","minutes","revenue","cost","margin","profit","asr","acd","pdd"],"title":"Metric","type":"string"}},{"in":"query","name":"aggregation","required":false,"schema":{"default":"sum","enum":["sum","avg","max"],"title":"Aggregation","type":"string"}},{"in":"query","name":"group_by","required":false,"schema":{"default":"source","enum":["source","destination","country"],"title":"Group By","type":"string"}},{"in":"query","name":"top_originators","required":false,"schema":{"default":20,"maximum":100,"minimum":1,"title":"Top Originators","type":"integer"}},{"in":"query","name":"top_destinations","required":false,"schema":{"default":30,"maximum":100,"minimum":1,"title":"Top Destinations","type":"integer"}},{"in":"query","name":"min_margin","required":false,"schema":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Min Margin"}},{"in":"query","name":"min_volume","required":false,"schema":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Min Volume"}},{"in":"query","name":"min_profit","required":false,"schema":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"title":"Min Profit"}},{"in":"query","name":"min_calls","required":false,"schema":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"title":"Min Calls"}},{"in":"query","name":"a_number_country","required":false,"schema":{"anyOf":[{"pattern":"^([A-Z]{2}|unknown)$","type":"string"},{"type":"null"}],"title":"A Number Country"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"destination_group_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Group Id"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SourceDestinationsMatrixResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Source Destinations Matrix","tags":["reports"]}},"/api/v1/reports/summary":{"get":{"description":"Return termination, origination and profit sections for a UTC period.","operationId":"summary_report_api_v1_reports_summary_get","parameters":[{"description":"UTC range start","in":"query","name":"from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"format":"date","type":"string"},{"type":"null"}],"description":"UTC range start","title":"From"}},{"description":"UTC range end","in":"query","name":"to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"format":"date","type":"string"},{"type":"null"}],"description":"UTC range end","title":"To"}},{"description":"Legacy UTC day to summarize (YYYY-MM-DD)","in":"query","name":"day","required":false,"schema":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"description":"Legacy UTC day to summarize (YYYY-MM-DD)","title":"Day"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SummaryResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Summary Report","tags":["reports"]}},"/api/v1/reports/summary/export":{"get":{"description":"Download the summary report sections as CSV/XLSX.","operationId":"summary_export_api_v1_reports_summary_export_get","parameters":[{"in":"query","name":"format","required":false,"schema":{"default":"csv","enum":["csv","xlsx"],"title":"Format","type":"string"}},{"description":"UTC range start","in":"query","name":"from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"format":"date","type":"string"},{"type":"null"}],"description":"UTC range start","title":"From"}},{"description":"UTC range end","in":"query","name":"to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"format":"date","type":"string"},{"type":"null"}],"description":"UTC range end","title":"To"}},{"description":"Legacy UTC day to summarize (YYYY-MM-DD)","in":"query","name":"day","required":false,"schema":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"description":"Legacy UTC day to summarize (YYYY-MM-DD)","title":"Day"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Summary Export","tags":["reports"]}},"/api/v1/reports/tariff-comparison":{"get":{"operationId":"get_tariff_comparison_api_v1_reports_tariff_comparison_get","parameters":[{"in":"query","name":"period_start","required":true,"schema":{"format":"date-time","title":"Period Start","type":"string"}},{"in":"query","name":"period_end","required":true,"schema":{"format":"date-time","title":"Period End","type":"string"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"format","required":false,"schema":{"default":"json","enum":["json","csv"],"title":"Format","type":"string"}},{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":1000,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Tariff Comparison","tags":["reports"]}},"/api/v1/reports/termination-stats":{"get":{"description":"Return supplier-side quality and cost scorecard grouped by terminator.","operationId":"termination_stats_api_v1_reports_termination_stats_get","parameters":[{"description":"UTC range start","in":"query","name":"from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"format":"date","type":"string"},{"type":"null"}],"description":"UTC range start","title":"From"}},{"description":"UTC range end","in":"query","name":"to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"format":"date","type":"string"},{"type":"null"}],"description":"UTC range end","title":"To"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminationStatsResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Termination Stats","tags":["reports"]}},"/api/v1/reports/termination-stats/export":{"get":{"description":"Download termination stats rows as CSV/XLSX.","operationId":"termination_stats_export_api_v1_reports_termination_stats_export_get","parameters":[{"in":"query","name":"format","required":false,"schema":{"default":"csv","enum":["csv","xlsx"],"title":"Format","type":"string"}},{"description":"UTC range start","in":"query","name":"from","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"format":"date","type":"string"},{"type":"null"}],"description":"UTC range start","title":"From"}},{"description":"UTC range end","in":"query","name":"to","required":false,"schema":{"anyOf":[{"format":"date-time","type":"string"},{"format":"date","type":"string"},{"type":"null"}],"description":"UTC range end","title":"To"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Termination Stats Export","tags":["reports"]}},"/api/v1/reports/traffic":{"get":{"operationId":"get_traffic_api_v1_reports_traffic_get","parameters":[{"in":"query","name":"period_start","required":true,"schema":{"format":"date-time","title":"Period Start","type":"string"}},{"in":"query","name":"period_end","required":true,"schema":{"format":"date-time","title":"Period End","type":"string"}},{"in":"query","name":"company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"group_by","required":false,"schema":{"default":"hour","enum":["hour","destination"],"title":"Group By","type":"string"}},{"in":"query","name":"format","required":false,"schema":{"default":"json","enum":["json","csv"],"title":"Format","type":"string"}},{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":1000,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Traffic","tags":["reports"]}},"/api/v1/routing-plans":{"get":{"operationId":"list_routing_plans_api_v1_routing_plans_get","parameters":[{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"q","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/RoutingPlanOut"},"title":"Response List Routing Plans Api V1 Routing Plans Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Routing Plans","tags":["routing-plans"]},"post":{"operationId":"create_routing_plan_api_v1_routing_plans_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingPlanCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingPlanOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Routing Plan","tags":["routing-plans"]}},"/api/v1/routing-plans/aggregates":{"get":{"description":"Aggregati globali per la pagina /routing: counters lista + KPI grid.","operationId":"get_routing_plan_aggregates_api_v1_routing_plans_aggregates_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingPlanAggregatesOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Routing Plan Aggregates","tags":["routing-plans"]}},"/api/v1/routing-plans/{id}":{"delete":{"operationId":"delete_routing_plan_api_v1_routing_plans__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Routing Plan","tags":["routing-plans"]},"get":{"operationId":"get_routing_plan_api_v1_routing_plans__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingPlanOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Routing Plan","tags":["routing-plans"]},"patch":{"operationId":"update_routing_plan_api_v1_routing_plans__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingPlanUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingPlanOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Routing Plan","tags":["routing-plans"]}},"/api/v1/routing-plans/{id}/coverage":{"get":{"operationId":"get_routing_plan_coverage_api_v1_routing_plans__id__coverage_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingPlanCoverageOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Routing Plan Coverage","tags":["routing-plans"]}},"/api/v1/routing-plans/{plan_id}/rules":{"get":{"operationId":"list_routing_rules_api_v1_routing_plans__plan_id__rules_get","parameters":[{"in":"path","name":"plan_id","required":true,"schema":{"title":"Plan Id","type":"integer"}},{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/RoutingRuleOut"},"title":"Response List Routing Rules Api V1 Routing Plans  Plan Id  Rules Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Routing Rules","tags":["routing-rules"]},"post":{"operationId":"create_routing_rule_api_v1_routing_plans__plan_id__rules_post","parameters":[{"in":"path","name":"plan_id","required":true,"schema":{"title":"Plan Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingRuleCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingRuleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Routing Rule","tags":["routing-rules"]}},"/api/v1/routing-rule-terminators/{id}":{"delete":{"operationId":"delete_routing_rule_terminator_api_v1_routing_rule_terminators__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Routing Rule Terminator","tags":["routing-rules"]},"patch":{"operationId":"update_routing_rule_terminator_api_v1_routing_rule_terminators__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingRuleTerminatorUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingRuleTerminatorOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Routing Rule Terminator","tags":["routing-rules"]}},"/api/v1/routing-rules":{"get":{"description":"List routing rules across plans for entity detail routing tabs.","operationId":"list_routing_rules_flat_api_v1_routing_rules_get","parameters":[{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"originator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Originator Id"}},{"in":"query","name":"terminator_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Terminator Id"}},{"in":"query","name":"plan_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Plan Id"}},{"in":"query","name":"active_only","required":false,"schema":{"default":true,"title":"Active Only","type":"boolean"}},{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":500,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/RoutingRuleWithPlan"},"title":"Response List Routing Rules Flat Api V1 Routing Rules Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Routing Rules Flat","tags":["routing-rules"]}},"/api/v1/routing-rules/{id}":{"delete":{"operationId":"delete_routing_rule_api_v1_routing_rules__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Routing Rule","tags":["routing-rules"]},"get":{"operationId":"get_routing_rule_api_v1_routing_rules__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingRuleWithTerminatorsOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Routing Rule","tags":["routing-rules"]},"patch":{"operationId":"update_routing_rule_api_v1_routing_rules__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingRuleUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingRuleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Routing Rule","tags":["routing-rules"]}},"/api/v1/routing-rules/{id}/terminators":{"post":{"operationId":"replace_routing_rule_terminators_api_v1_routing_rules__id__terminators_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkTerminatorAssignment"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingRuleWithTerminatorsOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Replace Routing Rule Terminators","tags":["routing-rules"]}},"/api/v1/routing-rules/{id}/terminators/reorder":{"post":{"operationId":"reorder_routing_rule_terminators_api_v1_routing_rules__id__terminators_reorder_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingRuleTerminatorReorderRequest"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Reorder Routing Rule Terminators","tags":["routing-rules"]}},"/api/v1/routing/simulate":{"post":{"description":"Return a dry-run routing simulation for NOC diagnostics.","operationId":"routing_simulate_api_v1_routing_simulate_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SimulateRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SimulateResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Routing Simulate","tags":["routing"]}},"/api/v1/routing/topology":{"get":{"description":"Return the routing topology graph with optional five-minute metrics.\n\nThe default group-level view is the strategic cap. 45 overview. Destination\ndrill-down is intentionally scoped to a single destination group.","operationId":"get_topology_api_v1_routing_topology_get","parameters":[{"in":"query","name":"aggregation_level","required":false,"schema":{"default":"group","enum":["group","destination"],"title":"Aggregation Level","type":"string"}},{"in":"query","name":"group_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Group Id"}},{"in":"query","name":"include_metrics","required":false,"schema":{"default":true,"title":"Include Metrics","type":"boolean"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoutingTopologyResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Topology","tags":["routing"]}},"/api/v1/secrets-vault":{"get":{"description":"List secret refs without exposing plaintext or ciphertext.","operationId":"list_secrets_api_v1_secrets_vault_get","parameters":[{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/SecretVaultInfo"},"title":"Response List Secrets Api V1 Secrets Vault Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Secrets","tags":["secrets-vault"]}},"/api/v1/secrets-vault/{ref}/rotate":{"post":{"description":"Rotate a secret value from base64 input without returning plaintext.","operationId":"rotate_secret_endpoint_api_v1_secrets_vault__ref__rotate_post","parameters":[{"in":"path","name":"ref","required":true,"schema":{"title":"Ref","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RotateSecretRequest"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Rotate Secret Endpoint","tags":["secrets-vault"]}},"/api/v1/settings":{"get":{"operationId":"list_settings_api_v1_settings_get","parameters":[{"in":"query","name":"environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Environment"}},{"in":"query","name":"search","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Search"}},{"in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"X-Environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Environment"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/SettingOut"},"title":"Response List Settings Api V1 Settings Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Settings","tags":["settings"]},"post":{"operationId":"create_setting_api_v1_settings_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"X-Environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Environment"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SettingCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SettingOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Setting","tags":["settings"]}},"/api/v1/settings/{key}":{"delete":{"operationId":"delete_setting_api_v1_settings__key__delete","parameters":[{"in":"path","name":"key","required":true,"schema":{"title":"Key","type":"string"}},{"in":"query","name":"environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Environment"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"X-Environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Environment"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Setting","tags":["settings"]},"get":{"operationId":"get_setting_api_v1_settings__key__get","parameters":[{"in":"path","name":"key","required":true,"schema":{"title":"Key","type":"string"}},{"in":"query","name":"environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Environment"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"X-Environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Environment"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SettingOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Setting","tags":["settings"]},"patch":{"operationId":"update_setting_api_v1_settings__key__patch","parameters":[{"in":"path","name":"key","required":true,"schema":{"title":"Key","type":"string"}},{"in":"query","name":"environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Environment"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"X-Environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Environment"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SettingUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SettingOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Setting","tags":["settings"]}},"/api/v1/settings/{key}/history":{"get":{"operationId":"get_history_api_v1_settings__key__history_get","parameters":[{"in":"path","name":"key","required":true,"schema":{"title":"Key","type":"string"}},{"in":"query","name":"environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Environment"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"X-Environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Environment"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/SettingHistoryEntry"},"title":"Response Get History Api V1 Settings  Key  History Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get History","tags":["settings"]}},"/api/v1/settings/{key}/reveal":{"post":{"operationId":"reveal_secret_api_v1_settings__key__reveal_post","parameters":[{"in":"path","name":"key","required":true,"schema":{"title":"Key","type":"string"}},{"in":"query","name":"environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Environment"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"X-Environment","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Environment"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SettingOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Reveal Secret","tags":["settings"]}},"/api/v1/system-settings/base-currency":{"get":{"operationId":"get_base_currency_api_v1_system_settings_base_currency_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCurrencyOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Base Currency","tags":["system-settings"]},"post":{"operationId":"change_base_currency_api_v1_system_settings_base_currency_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCurrencyChangeRequest"}}},"required":true},"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCurrencyChangeResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Change Base Currency","tags":["system-settings"]}},"/api/v1/system-settings/base-currency/jobs/{job_id}":{"get":{"operationId":"get_base_currency_job_api_v1_system_settings_base_currency_jobs__job_id__get","parameters":[{"in":"path","name":"job_id","required":true,"schema":{"title":"Job Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrencyConversionJobOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Base Currency Job","tags":["system-settings"]}},"/api/v1/system/status-bar":{"get":{"description":"Return the compact system snapshot consumed by the dashboard status bar.","operationId":"system_status_bar_api_v1_system_status_bar_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SystemStatusBarOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"System Status Bar","tags":["system"]}},"/api/v1/tariff-rates/{id}":{"delete":{"operationId":"delete_tariff_rate_api_v1_tariff_rates__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Tariff Rate","tags":["tariff-rates"]},"patch":{"operationId":"update_tariff_rate_api_v1_tariff_rates__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffRateUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffRateOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Tariff Rate","tags":["tariff-rates"]}},"/api/v1/tariff-upload-jobs":{"get":{"operationId":"list_tariff_upload_jobs_api_v1_tariff_upload_jobs_get","parameters":[{"in":"query","name":"limit","required":false,"schema":{"default":20,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/TariffUploadJobOut"},"title":"Response List Tariff Upload Jobs Api V1 Tariff Upload Jobs Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Tariff Upload Jobs","tags":["tariffs"]}},"/api/v1/tariff-upload-templates":{"get":{"operationId":"list_tariff_upload_templates_api_v1_tariff_upload_templates_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/TariffUploadTemplateOut"},"title":"Response List Tariff Upload Templates Api V1 Tariff Upload Templates Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Tariff Upload Templates","tags":["tariffs"]},"post":{"operationId":"create_tariff_upload_template_api_v1_tariff_upload_templates_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffUploadTemplateCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffUploadTemplateOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Tariff Upload Template","tags":["tariffs"]}},"/api/v1/tariff-upload-templates/{template_id}":{"delete":{"operationId":"delete_tariff_upload_template_api_v1_tariff_upload_templates__template_id__delete","parameters":[{"in":"path","name":"template_id","required":true,"schema":{"title":"Template Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Tariff Upload Template","tags":["tariffs"]},"put":{"operationId":"update_tariff_upload_template_api_v1_tariff_upload_templates__template_id__put","parameters":[{"in":"path","name":"template_id","required":true,"schema":{"title":"Template Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffUploadTemplateUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffUploadTemplateOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Tariff Upload Template","tags":["tariffs"]}},"/api/v1/tariffs":{"get":{"operationId":"list_tariffs_api_v1_tariffs_get","parameters":[{"in":"query","name":"kind","required":false,"schema":{"anyOf":[{"enum":["customer","supplier"],"type":"string"},{"type":"null"}],"title":"Kind"}},{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"supplier_company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Supplier Company Id"}},{"in":"query","name":"q","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/TariffOut"},"title":"Response List Tariffs Api V1 Tariffs Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Tariffs","tags":["tariffs"]},"post":{"operationId":"create_tariff_api_v1_tariffs_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Tariff","tags":["tariffs"]}},"/api/v1/tariffs/{id}":{"delete":{"operationId":"delete_tariff_api_v1_tariffs__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Tariff","tags":["tariffs"]},"get":{"operationId":"get_tariff_api_v1_tariffs__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Tariff","tags":["tariffs"]},"patch":{"operationId":"update_tariff_api_v1_tariffs__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Tariff","tags":["tariffs"]}},"/api/v1/tariffs/{id}/send-mail":{"post":{"operationId":"send_tariff_mail_api_v1_tariffs__id__send_mail_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffMailLogOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Send Tariff Mail","tags":["tariffs"]}},"/api/v1/tariffs/{id}/send-mail/preview":{"get":{"operationId":"preview_tariff_send_mail_api_v1_tariffs__id__send_mail_preview_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffSendMailPreviewOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Preview Tariff Send Mail","tags":["tariffs"]}},"/api/v1/tariffs/{tariff_id}/future-rates":{"get":{"operationId":"list_future_tariffs_api_v1_tariffs__tariff_id__future_rates_get","parameters":[{"in":"path","name":"tariff_id","required":true,"schema":{"title":"Tariff Id","type":"integer"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"pending_only","required":false,"schema":{"default":false,"title":"Pending Only","type":"boolean"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/FutureTariffOut"},"title":"Response List Future Tariffs Api V1 Tariffs  Tariff Id  Future Rates Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Future Tariffs","tags":["tariff-rates"]},"post":{"operationId":"create_future_tariff_api_v1_tariffs__tariff_id__future_rates_post","parameters":[{"in":"path","name":"tariff_id","required":true,"schema":{"title":"Tariff Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FutureTariffCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FutureTariffOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Future Tariff","tags":["tariff-rates"]}},"/api/v1/tariffs/{tariff_id}/rates":{"delete":{"operationId":"delete_tariff_rates_for_tariff_api_v1_tariffs__tariff_id__rates_delete","parameters":[{"in":"path","name":"tariff_id","required":true,"schema":{"title":"Tariff Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Tariff Rates For Tariff","tags":["tariff-rates"]},"get":{"operationId":"list_tariff_rates_api_v1_tariffs__tariff_id__rates_get","parameters":[{"in":"path","name":"tariff_id","required":true,"schema":{"title":"Tariff Id","type":"integer"}},{"in":"query","name":"destination_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Destination Id"}},{"in":"query","name":"active_only","required":false,"schema":{"default":true,"title":"Active Only","type":"boolean"}},{"in":"query","name":"q","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/TariffRateOut"},"title":"Response List Tariff Rates Api V1 Tariffs  Tariff Id  Rates Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Tariff Rates","tags":["tariff-rates"]},"post":{"operationId":"create_tariff_rate_api_v1_tariffs__tariff_id__rates_post","parameters":[{"in":"path","name":"tariff_id","required":true,"schema":{"title":"Tariff Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffRateCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffRateOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Tariff Rate","tags":["tariff-rates"]}},"/api/v1/tariffs/{tariff_id}/rates/export.csv":{"get":{"operationId":"export_tariff_rates_api_v1_tariffs__tariff_id__rates_export_csv_get","parameters":[{"in":"path","name":"tariff_id","required":true,"schema":{"title":"Tariff Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Export Tariff Rates","tags":["tariff-rates"]}},"/api/v1/tariffs/{tariff_id}/rates/import":{"post":{"operationId":"import_tariff_rates_api_v1_tariffs__tariff_id__rates_import_post","parameters":[{"in":"path","name":"tariff_id","required":true,"schema":{"title":"Tariff Id","type":"integer"}},{"in":"query","name":"mode","required":false,"schema":{"default":"merge","pattern":"^(merge|replace)$","title":"Mode","type":"string"}},{"in":"query","name":"threshold_percent","required":false,"schema":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"default":"50","title":"Threshold Percent"}},{"in":"query","name":"confirm_replace","required":false,"schema":{"default":false,"title":"Confirm Replace","type":"boolean"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_import_tariff_rates_api_v1_tariffs__tariff_id__rates_import_post"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":true,"title":"Response Import Tariff Rates Api V1 Tariffs  Tariff Id  Rates Import Post","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Import Tariff Rates","tags":["tariff-rates"]}},"/api/v1/tariffs/{tariff_id}/rates/preview":{"post":{"operationId":"preview_tariff_rates_import_api_v1_tariffs__tariff_id__rates_preview_post","parameters":[{"in":"path","name":"tariff_id","required":true,"schema":{"title":"Tariff Id","type":"integer"}},{"in":"query","name":"mode","required":false,"schema":{"default":"merge","pattern":"^(merge|replace)$","title":"Mode","type":"string"}},{"in":"query","name":"threshold_percent","required":false,"schema":{"anyOf":[{"minimum":0.0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"default":"50","title":"Threshold Percent"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_preview_tariff_rates_import_api_v1_tariffs__tariff_id__rates_preview_post"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":true,"title":"Response Preview Tariff Rates Import Api V1 Tariffs  Tariff Id  Rates Preview Post","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Preview Tariff Rates Import","tags":["tariff-rates"]}},"/api/v1/tariffs/{tariff_id}/rates/{id}":{"patch":{"operationId":"update_nested_tariff_rate_api_v1_tariffs__tariff_id__rates__id__patch","parameters":[{"in":"path","name":"tariff_id","required":true,"schema":{"title":"Tariff Id","type":"integer"}},{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffRateUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffRateOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Nested Tariff Rate","tags":["tariff-rates"]}},"/api/v1/tariffs/{tariff_id}/time-bands":{"get":{"operationId":"list_time_bands_api_v1_tariffs__tariff_id__time_bands_get","parameters":[{"in":"path","name":"tariff_id","required":true,"schema":{"title":"Tariff Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/TariffTimeBandOut"},"title":"Response List Time Bands Api V1 Tariffs  Tariff Id  Time Bands Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Time Bands","tags":["tariffs"]},"post":{"operationId":"create_time_band_api_v1_tariffs__tariff_id__time_bands_post","parameters":[{"in":"path","name":"tariff_id","required":true,"schema":{"title":"Tariff Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffTimeBandCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffTimeBandOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Time Band","tags":["tariffs"]}},"/api/v1/tariffs/{tariff_id}/time-bands/{band_id}":{"delete":{"operationId":"delete_time_band_api_v1_tariffs__tariff_id__time_bands__band_id__delete","parameters":[{"in":"path","name":"tariff_id","required":true,"schema":{"title":"Tariff Id","type":"integer"}},{"in":"path","name":"band_id","required":true,"schema":{"title":"Band Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Time Band","tags":["tariffs"]},"patch":{"operationId":"update_time_band_api_v1_tariffs__tariff_id__time_bands__band_id__patch","parameters":[{"in":"path","name":"tariff_id","required":true,"schema":{"title":"Tariff Id","type":"integer"}},{"in":"path","name":"band_id","required":true,"schema":{"title":"Band Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffTimeBandUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TariffTimeBandOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Time Band","tags":["tariffs"]}},"/api/v1/terminators":{"get":{"operationId":"list_terminators_api_v1_terminators_get","parameters":[{"in":"query","name":"supplier_company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Supplier Company Id"}},{"in":"query","name":"is_active","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},{"in":"query","name":"tier","required":false,"schema":{"anyOf":[{"enum":["standard","premium","grey"],"type":"string"},{"type":"null"}],"title":"Tier"}},{"in":"query","name":"health_check_status","required":false,"schema":{"anyOf":[{"enum":["unknown","up","degraded","down"],"type":"string"},{"type":"null"}],"title":"Health Check Status"}},{"in":"query","name":"q","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/TerminatorOut"},"title":"Response List Terminators Api V1 Terminators Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Terminators","tags":["terminators"]},"post":{"operationId":"create_terminator_api_v1_terminators_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminatorCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminatorOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Terminator","tags":["terminators"]}},"/api/v1/terminators/{id}":{"delete":{"operationId":"delete_terminator_api_v1_terminators__id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Terminator","tags":["terminators"]},"get":{"operationId":"get_terminator_api_v1_terminators__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminatorOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Terminator","tags":["terminators"]},"patch":{"operationId":"update_terminator_api_v1_terminators__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminatorUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminatorOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Terminator","tags":["terminators"]}},"/api/v1/terminators/{id}/health-test":{"post":{"operationId":"health_test_terminator_api_v1_terminators__id__health_test_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminatorOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Health Test Terminator","tags":["terminators"]}},"/api/v1/terminators/{id}/rewrite-rules":{"get":{"operationId":"list_rewrite_rules_api_v1_terminators__id__rewrite_rules_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/TerminatorNumberRewriteRuleOut"},"title":"Response List Rewrite Rules Api V1 Terminators  Id  Rewrite Rules Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Rewrite Rules","tags":["terminators"]},"post":{"operationId":"create_rewrite_rule_api_v1_terminators__id__rewrite_rules_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminatorNumberRewriteRuleCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminatorNumberRewriteRuleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Rewrite Rule","tags":["terminators"]}},"/api/v1/terminators/{id}/rewrite-rules/{rule_id}":{"delete":{"operationId":"delete_rewrite_rule_api_v1_terminators__id__rewrite_rules__rule_id__delete","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"rule_id","required":true,"schema":{"title":"Rule Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete Rewrite Rule","tags":["terminators"]},"get":{"operationId":"get_rewrite_rule_api_v1_terminators__id__rewrite_rules__rule_id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"rule_id","required":true,"schema":{"title":"Rule Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminatorNumberRewriteRuleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Rewrite Rule","tags":["terminators"]},"patch":{"operationId":"update_rewrite_rule_api_v1_terminators__id__rewrite_rules__rule_id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"path","name":"rule_id","required":true,"schema":{"title":"Rule Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminatorNumberRewriteRuleUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminatorNumberRewriteRuleOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Rewrite Rule","tags":["terminators"]}},"/api/v1/tickets":{"get":{"operationId":"list_tickets_api_v1_tickets_get","parameters":[{"in":"query","name":"status","required":false,"schema":{"anyOf":[{"enum":["open","in_progress","waiting","resolved","closed"],"type":"string"},{"type":"null"}],"title":"Status"}},{"in":"query","name":"company_id","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Company Id"}},{"in":"query","name":"assigned_to","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Assigned To"}},{"in":"query","name":"severity","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Severity"}},{"in":"query","name":"source","required":false,"schema":{"anyOf":[{"enum":["manual","email","quality_alert","from_test"],"type":"string"},{"type":"null"}],"title":"Source"}},{"description":"Search in subject","in":"query","name":"search","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Search in subject","title":"Search"}},{"in":"query","name":"limit","required":false,"schema":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},{"in":"query","name":"offset","required":false,"schema":{"default":0,"minimum":0,"title":"Offset","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/TicketOut"},"title":"Response List Tickets Api V1 Tickets Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Tickets","tags":["tickets"]},"post":{"operationId":"create_ticket_api_v1_tickets_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TicketCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TicketOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Ticket","tags":["tickets"]}},"/api/v1/tickets/from-test/{test_id}":{"post":{"operationId":"create_ticket_from_noc_test_api_v1_tickets_from_test__test_id__post","parameters":[{"in":"path","name":"test_id","required":true,"schema":{"title":"Test Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TicketFromTestOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create Ticket From Noc Test","tags":["tickets"]}},"/api/v1/tickets/{id}":{"get":{"operationId":"get_ticket_api_v1_tickets__id__get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TicketOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Ticket","tags":["tickets"]},"patch":{"operationId":"update_ticket_api_v1_tickets__id__patch","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TicketUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TicketOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Update Ticket","tags":["tickets"]}},"/api/v1/tickets/{id}/close":{"post":{"operationId":"close_ticket_api_v1_tickets__id__close_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Close Ticket","tags":["tickets"]}},"/api/v1/tickets/{id}/comments":{"post":{"operationId":"add_comment_api_v1_tickets__id__comments_post","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommentCreate"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TicketMessageOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Add Comment","tags":["tickets"]}},"/api/v1/tickets/{id}/tests":{"get":{"operationId":"list_ticket_tests_api_v1_tickets__id__tests_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/NocTtTestOut"},"title":"Response List Ticket Tests Api V1 Tickets  Id  Tests Get","type":"array"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"List Ticket Tests","tags":["tickets"]}},"/api/v1/tickets/{id}/timeline":{"get":{"operationId":"get_ticket_timeline_api_v1_tickets__id__timeline_get","parameters":[{"in":"path","name":"id","required":true,"schema":{"title":"Id","type":"integer"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TicketTimelineOut"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Get Ticket Timeline","tags":["tickets"]}},"/api/v1/wizard/extract":{"post":{"description":"Run AI extraction on a previously ingested document session.\n\nBody: { \"session_id\": \"...\", \"raw_text\": \"...\" (optional override) }\nReturns structured carrier data ready for the wizard form.","operationId":"wizard_extract_api_v1_wizard_extract_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"title":"Body","type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Wizard Extract","tags":["wizard"]}},"/api/v1/wizard/ingest":{"post":{"description":"Accept a carrier tech-form document (PDF or XLSX) and extract raw text.\n\nReturns a session_id and the raw extracted text for subsequent AI extraction.","operationId":"wizard_ingest_api_v1_wizard_ingest_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_wizard_ingest_api_v1_wizard_ingest_post"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Wizard Ingest","tags":["wizard"]}},"/auth/change-password":{"post":{"description":"Change the current user's password and clear the forced-change flag.","operationId":"change_password_auth_change_password_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangePasswordPayload"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"title":"Response Change Password Auth Change Password Post","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Change Password","tags":["auth"]}},"/auth/invite/{token}":{"post":{"description":"Consume a one-time invite token and activate the invited user.","operationId":"accept_invite_auth_invite__token__post","parameters":[{"in":"path","name":"token","required":true,"schema":{"title":"Token","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InviteSetPasswordPayload"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"title":"Response Accept Invite Auth Invite  Token  Post","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Accept Invite","tags":["auth"]}},"/auth/login":{"post":{"description":"Authenticate username/password and issue access plus refresh tokens.","operationId":"login_auth_login_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoginRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/LoginResponse"},{"$ref":"#/components/schemas/MfaRequiredResponse"}],"title":"Response Login Auth Login Post"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Login","tags":["auth"]}},"/auth/logout":{"post":{"description":"Revoke the current refresh token when provided and clear the refresh cookie.","operationId":"logout_auth_logout_post","parameters":[{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"title":"Response Logout Auth Logout Post","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Logout","tags":["auth"]}},"/auth/me":{"get":{"description":"Return the authenticated user identity.","operationId":"me_auth_me_get","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrentUserResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Me","tags":["auth"]}},"/auth/mfa/challenge":{"post":{"operationId":"challenge_auth_mfa_challenge_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Challenge","tags":["auth"]}},"/auth/mfa/confirm":{"post":{"operationId":"confirm_auth_mfa_confirm_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConfirmRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConfirmResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Confirm","tags":["auth"]}},"/auth/mfa/enroll":{"post":{"operationId":"enroll_auth_mfa_enroll_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnrollResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Enroll","tags":["auth"]}},"/auth/mfa/recovery-codes/regenerate":{"post":{"operationId":"regenerate_recovery_codes_auth_mfa_recovery_codes_regenerate_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegenerateRecoveryCodesRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecoveryCodesResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Regenerate Recovery Codes","tags":["auth"]}},"/auth/mfa/verify":{"post":{"operationId":"verify_auth_mfa_verify_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Verify","tags":["auth"]}},"/auth/mfa/verify-recovery":{"post":{"operationId":"verify_recovery_auth_mfa_verify_recovery_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyRecoveryRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Verify Recovery","tags":["auth"]}},"/auth/refresh":{"post":{"description":"Rotate a refresh token and revoke the previous jti.\n\nAccepts the refresh token from an explicit Authorization header or from\nthe httpOnly akira_refresh cookie set during login/MFA.","operationId":"refresh_endpoint_auth_refresh_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RefreshResponse"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Refresh Endpoint","tags":["auth"]}},"/health/live":{"get":{"description":"Liveness probe: only confirms the process can serve requests.","operationId":"live_health_live_get","responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"title":"Response Live Health Live Get","type":"object"}}},"description":"Successful Response"}},"summary":"Live","tags":["health"]}},"/health/ready":{"get":{"description":"Readiness probe: confirms runtime dependencies are reachable.","operationId":"ready_health_ready_get","responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":true,"title":"Response Ready Health Ready Get","type":"object"}}},"description":"Successful Response"}},"summary":"Ready","tags":["health"]}},"/health/startup":{"get":{"description":"Startup probe: one-shot flag set after FastAPI lifespan initialization.","operationId":"startup_health_startup_get","responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"title":"Response Startup Health Startup Get","type":"object"}}},"description":"Successful Response"}},"summary":"Startup","tags":["health"]}},"/mcp":{"get":{"description":"Return bridge metadata and tool manifest.","operationId":"manifest_mcp_get","responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":true,"title":"Response Manifest Mcp Get","type":"object"}}},"description":"Successful Response"}},"summary":"Manifest","tags":["agentcore-mcp"]}},"/mcp/call":{"post":{"description":"Call a tool using a generic MCP-style payload.","operationId":"call_tool_generic_mcp_call_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"x-agent-origin","required":false,"schema":{"default":"","title":"X-Agent-Origin","type":"string"}},{"in":"header","name":"x-confirmation-token","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Confirmation-Token"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToolCallRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":true,"title":"Response Call Tool Generic Mcp Call Post","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Call Tool Generic","tags":["agentcore-mcp"]}},"/mcp/call/{name}":{"post":{"description":"Call a named Akira tool using the canonical TASK-166 route.","operationId":"call_tool_by_path_name_mcp_call__name__post","parameters":[{"in":"path","name":"name","required":true,"schema":{"title":"Name","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"x-agent-origin","required":false,"schema":{"default":"","title":"X-Agent-Origin","type":"string"}},{"in":"header","name":"x-confirmation-token","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Confirmation-Token"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Arguments"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":true,"title":"Response Call Tool By Path Name Mcp Call  Name  Post","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Call Tool By Path Name","tags":["agentcore-mcp"]}},"/mcp/cdr":{"get":{"description":"Return the same manifest for AgentCore configs split by domain.","operationId":"cdr_manifest_mcp_cdr_get","responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":true,"title":"Response Cdr Manifest Mcp Cdr Get","type":"object"}}},"description":"Successful Response"}},"summary":"Cdr Manifest","tags":["agentcore-mcp"]}},"/mcp/confirmations":{"post":{"description":"Issue a confirmation token after AgentCore received user confirmation.","operationId":"request_confirmation_mcp_confirmations_post","parameters":[{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConfirmationRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"title":"Response Request Confirmation Mcp Confirmations Post","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Request Confirmation","tags":["agentcore-mcp"]}},"/mcp/tools":{"get":{"description":"Return AgentCore-visible Akira tools.","operationId":"tools_mcp_tools_get","responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":true,"title":"Response Tools Mcp Tools Get","type":"object"}}},"description":"Successful Response"}},"summary":"Tools","tags":["agentcore-mcp"]}},"/mcp/tools/{name}":{"post":{"description":"Call a named Akira tool.","operationId":"call_tool_by_name_mcp_tools__name__post","parameters":[{"in":"path","name":"name","required":true,"schema":{"title":"Name","type":"string"}},{"in":"query","name":"actor","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor"}},{"in":"header","name":"x-agent-origin","required":false,"schema":{"default":"","title":"X-Agent-Origin","type":"string"}},{"in":"header","name":"x-confirmation-token","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Confirmation-Token"}},{"in":"header","name":"authorization","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Arguments"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":true,"title":"Response Call Tool By Name Mcp Tools  Name  Post","type":"object"}}},"description":"Successful Response"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Call Tool By Name","tags":["agentcore-mcp"]}}},"tags":[{"description":"Authentication and MFA","name":"auth"},{"description":"Customer management","name":"companies"},{"description":"Pricing","name":"tariffs"},{"description":"Balance, invoices, and recharge","name":"billing"},{"description":"Call detail records","name":"cdr"},{"description":"Analytics and standard reports","name":"reports"},{"description":"Routing rules and topology","name":"routing"},{"description":"Real-time live calls SSE","name":"live"},{"description":"AI Interconnection Wizard","name":"wizard"},{"description":"Admin operations requiring admin RBAC","name":"admin"}]}
