{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "#/components/schemas/CallInterceptInfo", "title": "CallInterceptInfo", "type": "object", "required": [ "enabled", "incoming", "outgoing" ], "properties": { "enabled": { "type": "boolean", "example": true, "description": "`true` if call intercept is enabled." }, "incoming": { "type": "object", "required": [ "type", "voicemailEnabled", "announcements" ], "properties": { "type": { "type": "string", "enum": [ "INTERCEPT_ALL", "ALLOW_ALL" ], "description": "`INTERCEPT_ALL` indicated incoming calls are intercepted.\n * `INTERCEPT_ALL` - Incoming calls are routed as the destination and voicemail specify.\n * `ALLOW_ALL` - Incoming calls are not intercepted.\n" }, "voicemailEnabled": { "type": "boolean", "description": "If `true`, the destination will be the virtual line's voicemail." }, "announcements": { "type": "object", "required": [ "greeting", "filename", "newNumber", "zeroTransfer" ], "properties": { "greeting": { "type": "string", "enum": [ "CUSTOM", "DEFAULT" ], "description": "`DEFAULT` indicates that a system default message will be placed when incoming calls are intercepted.\n * `CUSTOM` - A custom greeting is played when incoming calls are intercepted.\n * `DEFAULT` - A System default greeting will be played when incoming calls are intercepted.\n" }, "filename": { "type": "string", "example": "incoming.wav", "description": "Filename of custom greeting; will be an empty string if no custom greeting has been uploaded." }, "newNumber": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If `true`, the caller will hear this new number when the call is intercepted." }, "destination": { "type": "string", "example": "2225551212", "description": "New number caller will hear announced." } }, "description": "Information about the new number announcement." }, "zeroTransfer": { "type": "object", "properties": { "enabled": { "type": "boolean", "example": true, "description": "If `true`, the caller will be transferred to destination of when zero (0) is pressed." }, "destination": { "type": "string", "example": "2225551212", "description": "Destination to which caller will be transferred when zero is pressed." } }, "description": "Information about how the call will be handled if zero (0) is pressed." } }, "description": "Settings related to how incoming calls are handled when the intercept feature is enabled." } }, "description": "Settings related to how incoming calls are handled when the intercept feature is enabled." }, "outgoing": { "type": "object", "required": [ "type", "transferEnabled" ], "properties": { "type": { "type": "string", "enum": [ "INTERCEPT_ALL", "ALLOW_LOCAL_ONLY" ], "description": "`INTERCEPT_ALL` indicated all outgoing calls are intercepted.\n * `INTERCEPT_ALL` - Outgoing calls are routed as the destination and voicemail specify.\n * `ALLOW_LOCAL_ONLY` - Only non-local calls are intercepted.\n" }, "transferEnabled": { "type": "boolean", "example": true, "description": "If `true`, allows transfer and forwarding for the call type." }, "destination": { "type": "string", "example": "2225551212", "description": "Number to which the outbound call be transferred." } }, "description": "Settings related to how outgoing calls are handled when the intercept feature is enabled." } } }