{
   "openapi": "3.0.1",
   "info": {
      "title": "Reports API",
      "description": "The [Reports API](https://developer.vonage.com/en/reports/overview) enables you to request a report of activity for your Vonage account.\n\nDepending on your query pattern, you can choose from one of the two versions of the Reports API: asynchronous and synchronous. The asynchronous version is optimized for infrequent and large data queries (from several records to tens of millions). The synchronous version is optimized for frequent and periodic retrievals of small batches of data records (from one record to tens of thousand per query).\n\nOnly synchronous version supports retrival of data records by message/record ID.\n\nVonage recommends that you limit asynchronous queries to a maximum of 7 million records, by setting the start and end dates accordingly. On average, the asynchronous Reports API takes 5 - 10 minutes to generate 1 million records.\n\n> **Reports API is a paid product.** Full pricing is available at <https://www.vonage.com/communications-apis/pricing/>.",
      "termsOfService": "https://www.nexmo.com/terms-of-use",
      "contact": {
         "name": "Vonage DevRel",
         "url": "https://developer.vonage.com/",
         "email": "devrel@vonage.com"
      },
      "license": {
         "name": "The MIT License (MIT)",
         "url": "https://opensource.org/licenses/MIT"
      },
      "version": "3.1.4",
      "x-metaTitle": "Vonage Reports API Reference | Vonage API Documentation",
      "x-metaDescription": "Find quick answers to questions about the Vonage Reports API in this reference guide. Learn more in Vonage's API documentation."
   },
   "servers": [
      {
         "url": "https://api.nexmo.com",
         "description": "Production server"
      }
   ],
   "security": [
      {
         "basicAuth": []
      }
   ],
   "paths": {
      "/v2/reports/records": {
         "get": {
            "summary": "Load records synchronously",
            "description": "Generate and immediately return report data synchronously. Supports query parameters for filtering. For large datasets, consider using asynchronous reports instead. Two query modes are supported: date-based queries (using date_start/date_end) or ID-based queries (using the id parameter). Only synchronous version supports retrival of data records by message/record ID. When using ID queries, only a limited subset of parameters are allowed: product, account_id, direction, id, include_message, show_concatenated.",
            "operationId": "createSyncReportPublic",
            "parameters": [
               {
                  "name": "product",
                  "in": "query",
                  "description": "The product to return records for.",
                  "required": true,
                  "schema": {
                     "type": "string",
                     "enum": [
                        "SMS",
                        "SMS-TRAFFIC-CONTROL",
                        "VOICE-CALL",
                        "VOICE-FAILED",
                        "VOICE-TTS",
                        "IN-APP-VOICE",
                        "WEBSOCKET-CALL",
                        "ASR",
                        "AMD",
                        "VERIFY-API",
                        "VERIFY-V2",
                        "NUMBER-INSIGHT",
                        "CONVERSATION-EVENT",
                        "CONVERSATION-MESSAGE",
                        "MESSAGES",
                        "VIDEO-API",
                        "NETWORK-API-EVENT",
                        "REPORTS-USAGE"
                     ]
                  }
               },
               {
                  "name": "account_id",
                  "in": "query",
                  "description": "The account ID (API key) you wish to search for. This can differ from the API key in the authorization header because some accounts can request reports for other accounts, e.g. a primary account owner wants to create a report for one of its subaccounts.",
                  "required": true,
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "date_start",
                  "in": "query",
                  "description": "ISO-8601 extended time zone offset or ISO-8601 UTC zone offset formatted date (format `yyyy-mm-ddThh:mm:ss[.sss]±hh:mm` or `yyyy-mm-ddThh:mm:ss[.sss]Z`) for when reports \n        should begin. It filters on the time the API call was received by Vonage and corresponds to the field `date_received` (`date_start` for Voice) in the report file. It is\n        inclusive, i.e. the provided value is less than or equal to the value in the field `date_received` (`date_start` for Voice) in the CDR.<br>If unspecified, defaults\n        to seven days ago.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "date_end",
                  "in": "query",
                  "description": "ISO-8601 extended time zone offset or ISO-8601 UTC zone offset formatted date (format `yyyy-mm-ddThh:mm:ss[.sss]±hh:mm` or `yyyy-mm-ddThh:mm:ss[.sss]Z`) for when report should end.\n        It is exclusive, i.e. the provided value is strictly greater than the value in the field `date_received` in the CDR. <br>If unspecified, defaults to the current time.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "cursor",
                  "in": "query",
                  "description": "Pagination cursor for retrieving the next page of results (date-based queries only)",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "iv",
                  "in": "query",
                  "description": "Initialization vector for encrypted cursor pagination (date-based queries only)",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "id",
                  "in": "query",
                  "description": "The UUID of the message or call to be searched for. You can specify a comma-separated list of UUIDs (maximum 20 UUIDs). If UUIDs are not found they are listed in the response in the `ids_not_found` field.\nWhen the `id` parameter is specified, only the following parameters are accepted: `product`, `account_id`, `direction`, `include_message` and `show_concatenated`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "direction",
                  "in": "query",
                  "description": "Direction of the communication, either `inbound` (received by our services), or `outbound` (originated from our services). Required for products `SMS` and `MESSAGES`. Optional for `VOICE-CALL`,`VOICE-FAILED`, `ASR`.",
                  "schema": {
                     "type": "string",
                     "enum": [
                        "inbound",
                        "outbound"
                     ]
                  }
               },
               {
                  "name": "status",
                  "in": "query",
                  "description": "Status of the event. Optional for `SMS`, `CONVERSATION-EVENT`, `IN-APP-VOICE`, `MESSAGES`, `VOICE-CAL`, `VERIFY-V2`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "from",
                  "in": "query",
                  "description": "Sender ID/number. Optional for `SMS`, `MESSAGES`, `VOICE-CALL`, `VOICE-FAILED`, `ASR`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "to",
                  "in": "query",
                  "description": "Recipient phone number. Optioanl for `SMS`, `VOICE-CALL`, `VOICE-FAILED`, `ASR`, `MESSAGES`, `VERIFY-API`, `VERIFY-V2`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "country",
                  "in": "query",
                  "description": "Country code filter. Optional for `SMS`, `VOICE-CALL`, `VOICE-FAILED`, `ASR`, `MESSAGES`, `VERIFY-API`, `VERIFY-V2`, `NUMBER-INSIGHT`, `NETWORK-API-EVENT`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "network",
                  "in": "query",
                  "description": "Mobile network code filter. Optional for `SMS`, `VOICE-CALL`, `VOICE-FAILED`, `ASR`, `VERIFY-API`, `VERIFY-V2`, `NUMBER-INSIGHT`, `NETWORK-API-EVENT`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "number",
                  "in": "query",
                  "description": "Phone number for lookup. Optional for `NUMBER-INSIGHT`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "locale",
                  "in": "query",
                  "description": "Language/locale. Optional for `VERIFY-API`, `VERIFY-V2`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "include_message",
                  "in": "query",
                  "description": "Include message content in response. Optional for `SMS`, `MESSAGES`.",
                  "schema": {
                     "type": "boolean"
                  }
               },
               {
                  "name": "show_concatenated",
                  "in": "query",
                  "description": "A boolean flag that determines whether the `concatenated` field is included in the report. Optional for `SMS` with `direction=outbound`.",
                  "schema": {
                     "type": "boolean"
                  }
               },
               {
                  "name": "account_ref",
                  "in": "query",
                  "description": "Account reference. Optional for `SMS`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "call_id",
                  "in": "query",
                  "description": "Unique call identifier. Optional for `AMD`, `ASR`, `VOICE-CALL`, `VOICE-FAILED`, `WEBSOCKET-CALL`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "leg_id",
                  "in": "query",
                  "description": "Unique leg identifier for the call. Optional for `IN-APP-VOICE`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "provider",
                  "in": "query",
                  "description": "Messaging provider. Optional for `MESSAGES`.",
                  "schema": {
                     "type": "string",
                     "enum": [
                        "whatsapp",
                        "sms",
                        "mms",
                        "messenger",
                        "viber_service_msg",
                        "instagram",
                        "rcs",
                        "email"
                     ]
                  }
               },
               {
                  "name": "number_type",
                  "in": "query",
                  "description": "Number type. Optional for `VERIFY-API`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "channel",
                  "in": "query",
                  "description": "Verification channel. Optional for `VERIFY-V2`.",
                  "schema": {
                     "type": "string",
                     "enum": [
                        "v2",
                        "email",
                        "silent_auth"
                     ]
                  }
               },
               {
                  "name": "parent_request_id",
                  "in": "query",
                  "description": "Filter by parent request ID, which correlates `v2` verification requests with their associated `email` or `silent_auth` events. Optional for `VERIFY-V2`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "request_type",
                  "in": "query",
                  "description": "Type of Request. Optional for `NETWORK-API-EVENT`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "risk",
                  "in": "query",
                  "description": "Risk assessment level.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "swapped",
                  "in": "query",
                  "description": "Whether the number has been ported/swapped.",
                  "schema": {
                     "type": "boolean"
                  }
               },
               {
                  "name": "conversation_id",
                  "in": "query",
                  "description": "Conversation ID. Optional for `CONVERSATION-EVENT`, `CONVERSATION-MESSAGE`, `IN-APP-VOICE`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "session_id",
                  "in": "query",
                  "description": "Session ID. Optional for `VIDEO-API`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "meeting_id",
                  "in": "query",
                  "description": "Meeting ID. Optional for `VIDEO-API`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "product_name",
                  "in": "query",
                  "description": "Product name for Network API event. Optional for `NETWORK-API-EVENT`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "request_session_id",
                  "in": "query",
                  "description": "Session ID for Network API. Optional for `NETWORK-API-EVENT`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "product_path",
                  "in": "query",
                  "description": "API path. Optional for `NETWORK-API-EVENT`.",
                  "schema": {
                     "type": "string"
                  }
               },
               {
                  "name": "correlation_id",
                  "in": "query",
                  "description": "Correlation ID. Optional for `NETWORK-API-EVENT`.",
                  "schema": {
                     "type": "string"
                  }
               }
            ],
            "responses": {
               "200": {
                  "$ref": "#/components/responses/ReportsRecords200"
               },
               "401": {
                  "$ref": "#/components/responses/401"
               },
               "403": {
                  "$ref": "#/components/responses/403"
               },
               "422": {
                  "$ref": "#/components/responses/422"
               },
               "429": {
                  "$ref": "#/components/responses/429"
               },
               "500": {
                  "$ref": "#/components/responses/500"
               }
            },
            "security": [
               {
                  "basicAuth": []
               }
            ]
         }
      },
      "/v2/reports": {
         "post": {
            "summary": "Create an asynchronous report",
            "description": "Creates an asynchronous report generation request. The report will be processed in the background and you can check its status using the returned report ID. The API returns a combination of the standard required fields and those specified in the input payload.",
            "operationId": "createAsyncReportPublic",
            "requestBody": {
               "description": "Report request parameters",
               "content": {
                  "application/json": {
                     "schema": {
                        "$ref": "#/components/schemas/AnyAsyncRequestParams"
                     }
                  }
               },
               "required": true
            },
            "responses": {
               "200": {
                  "$ref": "#/components/responses/ReportsAsync200"
               },
               "400": {
                  "$ref": "#/components/responses/400"
               },
               "401": {
                  "$ref": "#/components/responses/401"
               },
               "403": {
                  "$ref": "#/components/responses/403"
               },
               "422": {
                  "$ref": "#/components/responses/422"
               },
               "429": {
                  "$ref": "#/components/responses/429"
               },
               "500": {
                  "$ref": "#/components/responses/500"
               }
            },
            "security": [
               {
                  "basicAuth": []
               }
            ]
         }
      },
      "/v2/reports/{reportId}": {
         "get": {
            "summary": "Get status of report",
            "description": "Retrieve the status and details of an asynchronous report using its report ID. \nNote that there is a data retention period of 4 days, so reports older than 4 days will not be able to be retrieved.",
            "operationId": "getAsyncReportPublic",
            "parameters": [
               {
                  "name": "reportId",
                  "in": "path",
                  "description": "Unique identifier of the report (`request_id` in response).",
                  "required": true,
                  "schema": {
                     "type": "string"
                  },
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               }
            ],
            "responses": {
               "200": {
                  "$ref": "#/components/responses/ReportStatus200"
               },
               "401": {
                  "$ref": "#/components/responses/401"
               },
               "404": {
                  "$ref": "#/components/responses/404"
               },
               "429": {
                  "$ref": "#/components/responses/429"
               },
               "500": {
                  "$ref": "#/components/responses/500"
               }
            },
            "security": [
               {
                  "basicAuth": []
               }
            ]
         },
         "delete": {
            "summary": "Cancel the execution of a report",
            "description": "Abort a pending or processing asynchronous report. Reports that are already completed cannot be aborted.",
            "operationId": "abortAsyncReportPublic",
            "parameters": [
               {
                  "name": "reportId",
                  "in": "path",
                  "description": "Unique identifier of the report to abort (`request_id` in response).",
                  "required": true,
                  "schema": {
                     "type": "string"
                  },
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               }
            ],
            "responses": {
               "200": {
                  "$ref": "#/components/responses/ReportDelete200"
               },
               "401": {
                  "$ref": "#/components/responses/401"
               },
               "404": {
                  "$ref": "#/components/responses/404"
               },
               "409": {
                  "$ref": "#/components/responses/409"
               },
               "429": {
                  "$ref": "#/components/responses/429"
               },
               "500": {
                  "$ref": "#/components/responses/500"
               }
            },
            "security": [
               {
                  "basicAuth": []
               }
            ]
         }
      },
      "/v3/media/{file_id}": {
         "get": {
            "operationId": "download-report",
            "security": [
               {
                  "basicAuth": []
               }
            ],
            "summary": "Get report data",
            "description": "Download a zipped archive of the rendered report. The file is available for download for 72 hours.<br> The zip file will be named `<PRODUCT>_<REPORT_ID>.zip`<br> The csv file in the zip archive will be named as `report_<PRODUCT>_<ACCOUNT_ID>_<DATE>.csv` the date will be formatted as `yyyyMMdd`.\n",
            "parameters": [
               {
                  "name": "file_id",
                  "in": "path",
                  "schema": {
                     "type": "string",
                     "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
                  },
                  "description": "UUID of the file.",
                  "required": true
               }
            ],
            "responses": {
               "200": {
                  "$ref": "#/components/responses/MediaDownload200"
               },
               "401": {
                  "$ref": "#/components/responses/401"
               },
               "404": {
                  "$ref": "#/components/responses/404"
               },
               "429": {
                  "$ref": "#/components/responses/429"
               },
               "500": {
                  "$ref": "#/components/responses/500"
               }
            }
         }
      }
   },
   "components": {
      "responses": {
         "400": {
            "description": "Bad Request",
            "headers": {
               "X-Request-Id": {
                  "$ref": "#/components/headers/X-Request-Id"
               }
            },
            "content": {
               "application/problem+json": {
                  "schema": {
                     "$ref": "#/components/schemas/ErrorResponseWithInvalidParameters"
                  }
               }
            }
         },
         "401": {
            "description": "Authentication failure",
            "headers": {
               "X-Request-Id": {
                  "$ref": "#/components/headers/X-Request-Id"
               }
            },
            "content": {
               "application/problem+json": {
                  "schema": {
                     "oneOf": [
                        {
                           "description": "Missing or Invalid Credentials",
                           "type": "object",
                           "required": [
                              "type",
                              "title",
                              "instance"
                           ],
                           "properties": {
                              "type": {
                                 "type": "string",
                                 "description": "Link to error / remediation options",
                                 "example": "https://developer.vonage.com/api-errors/#unathorized"
                              },
                              "title": {
                                 "type": "string",
                                 "description": "Generic error message",
                                 "example": "You did not provide correct credentials."
                              },
                              "detail": {
                                 "type": "string",
                                 "description": "Additional information about the error",
                                 "example": "Check that you're using the correct credentials, and that your account has this feature enabled"
                              },
                              "instance": {
                                 "type": "string",
                                 "description": "Internal Trace ID",
                                 "example": "bf0ca0bf927b3b52e3cb03217e1a1ddf"
                              }
                           }
                        },
                        {
                           "description": "Invalid Application Type",
                           "type": "object",
                           "required": [
                              "type",
                              "title",
                              "instance"
                           ],
                           "properties": {
                              "type": {
                                 "type": "string",
                                 "description": "Link to error / remediation options",
                                 "example": "https://developer.vonage.com/api-errors/#unprovisioned"
                              },
                              "title": {
                                 "type": "string",
                                 "description": "Generic error message",
                                 "example": "The crendentials provided do not have access to the requested product"
                              },
                              "detail": {
                                 "type": "string",
                                 "description": "Additional information about the error",
                                 "example": "Check your API key is correct and has been whitelisted"
                              },
                              "instance": {
                                 "type": "string",
                                 "description": "Internal Trace ID",
                                 "example": "bf0ca0bf927b3b52e3cb03217e1a1ddf"
                              }
                           }
                        }
                     ]
                  }
               }
            }
         },
         "403": {
            "description": "Forbidden",
            "headers": {
               "X-Request-Id": {
                  "$ref": "#/components/headers/X-Request-Id"
               }
            },
            "content": {
               "application/problem+json": {
                  "schema": {
                     "$ref": "#/components/schemas/ErrorResponse"
                  }
               }
            }
         },
         "404": {
            "description": "Not Found",
            "headers": {
               "X-Request-Id": {
                  "$ref": "#/components/headers/X-Request-Id"
               }
            },
            "content": {
               "application/problem+json": {
                  "schema": {
                     "$ref": "#/components/schemas/ErrorResponse"
                  }
               }
            }
         },
         "409": {
            "description": "Conflict",
            "headers": {
               "X-Request-Id": {
                  "$ref": "#/components/headers/X-Request-Id"
               }
            },
            "content": {
               "application/problem+json": {
                  "schema": {
                     "$ref": "#/components/schemas/ErrorResponse"
                  }
               }
            }
         },
         "422": {
            "description": "Unprocessable Entity",
            "headers": {
               "X-Request-Id": {
                  "$ref": "#/components/headers/X-Request-Id"
               }
            },
            "content": {
               "application/problem+json": {
                  "schema": {
                     "$ref": "#/components/schemas/ErrorResponseWithInvalidParameters"
                  }
               }
            }
         },
         "429": {
            "description": "Too Many Requests",
            "headers": {
               "X-Request-Id": {
                  "$ref": "#/components/headers/X-Request-Id"
               },
               "X-RateLimit-Limit": {
                  "$ref": "#/components/headers/X-RateLimit-Limit"
               },
               "X-RateLimit-Remaining": {
                  "$ref": "#/components/headers/X-RateLimit-Remaining"
               },
               "X-RateLimit-Reset": {
                  "$ref": "#/components/headers/X-RateLimit-Reset"
               },
               "Retry-After": {
                  "$ref": "#/components/headers/Retry-After"
               }
            },
            "content": {
               "application/problem+json": {
                  "schema": {
                     "$ref": "#/components/schemas/ErrorResponse"
                  }
               }
            }
         },
         "500": {
            "description": "Internal error",
            "headers": {
               "X-Request-Id": {
                  "$ref": "#/components/headers/X-Request-Id"
               }
            },
            "content": {
               "application/problem+json": {
                  "schema": {
                     "$ref": "#/components/schemas/ErrorResponse"
                  }
               }
            }
         },
         "ReportsRecords200": {
            "description": "Report data retrieved successfully",
            "headers": {
               "X-Request-Id": {
                  "$ref": "#/components/headers/X-Request-Id"
               }
            },
            "content": {
               "application/json": {
                  "schema": {
                     "$ref": "#/components/schemas/AnyRecordsResponse"
                  }
               }
            }
         },
         "ReportsAsync200": {
            "description": "Report creation request accepted",
            "headers": {
               "X-Request-Id": {
                  "$ref": "#/components/headers/X-Request-Id"
               }
            },
            "content": {
               "application/json": {
                  "schema": {
                     "$ref": "#/components/schemas/AnyReportResponse"
                  }
               }
            }
         },
         "ReportStatus200": {
            "description": "Report details retrieved successfully",
            "headers": {
               "X-Request-Id": {
                  "$ref": "#/components/headers/X-Request-Id"
               }
            },
            "content": {
               "application/json": {
                  "schema": {
                     "$ref": "#/components/schemas/AnyReportResponse"
                  }
               }
            }
         },
         "ReportDelete200": {
            "description": "Report aborted successfully",
            "headers": {
               "X-Request-Id": {
                  "$ref": "#/components/headers/X-Request-Id"
               }
            },
            "content": {
               "application/json": {
                  "schema": {
                     "$ref": "#/components/schemas/AnyReportResponse"
                  }
               }
            }
         },
         "MediaDownload200": {
            "description": "Zip file containing CSV report data",
            "headers": {
               "X-Request-Id": {
                  "$ref": "#/components/headers/X-Request-Id"
               }
            },
            "content": {
               "application/json": {
                  "schema": {
                     "type": "object",
                     "description": "Download initiated successfully"
                  }
               },
               "application/octet-stream": {
                  "schema": {
                     "type": "object",
                     "properties": {
                        "report": {
                           "type": "array",
                           "description": "The report in CSV format inside the zip archive.",
                           "items": {
                              "type": "object",
                              "anyOf": [
                                 {
                                    "$ref": "#/components/schemas/ReportsUsageRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/SmsOutboundRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/SmsInboundRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/VoiceRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/VoiceFailedRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/VoiceTtsRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/VoiceInAppRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/VoiceWebSocketRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/VerifyRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/VerifyV2Record"
                                 },
                                 {
                                    "$ref": "#/components/schemas/NumberInsightRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/NumberInsightV2Record"
                                 },
                                 {
                                    "$ref": "#/components/schemas/MessagesOutboundRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/MessagesInboundRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/VoiceAsrRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/VoiceAmdRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/SmsTrafficControlRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/ConversationsEventRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/ConversationsMessageRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/NetworkApiEventRecord"
                                 },
                                 {
                                    "$ref": "#/components/schemas/VideoApiRecord"
                                 }
                              ]
                           }
                        }
                     }
                  }
               }
            }
         }
      },
      "schemas": {
         "BaseRequestParams": {
            "required": [
               "account_id",
               "product"
            ],
            "type": "object",
            "properties": {
               "product": {
                  "type": "string",
                  "description": "Product type for the report",
                  "example": "SMS",
                  "enum": [
                     "SMS",
                     "SMS-TRAFFIC-CONTROL",
                     "VOICE-CALL",
                     "VOICE-FAILED",
                     "VOICE-TTS",
                     "IN-APP-VOICE",
                     "WEBSOCKET-CALL",
                     "ASR",
                     "AMD",
                     "VERIFY-API",
                     "NUMBER-INSIGHT",
                     "VERIFY-V2",
                     "CONVERSATION-EVENT",
                     "CONVERSATION-MESSAGE",
                     "MESSAGES",
                     "VIDEO-API",
                     "NETWORK-API-EVENT",
                     "REPORTS-USAGE"
                  ]
               },
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) you wish to search for. This can differ from the API key in the authorization header because some accounts can request reports for other accounts, e.g. a primary account owner wants to create a report for one of its subaccounts.",
                  "example": "12aa3456"
               },
               "date_start": {
                  "type": "string",
                  "description": "Start date for the report (ISO 8601 format). Not mandatory for async requests - defaults to CURRENT_TIME-7D if not provided.",
                  "example": "2024-02-02T13:50:00+00:00"
               },
               "date_end": {
                  "type": "string",
                  "description": "End date for the report (ISO 8601 format). Defaults to current time if not provided.",
                  "example": "2024-02-07T14:22:08+00:00"
               }
            },
            "description": "Base parameters for all report requests"
         },
         "AsyncRequestFields": {
            "type": "object",
            "properties": {
               "include_subaccounts": {
                  "type": "boolean",
                  "description": "Include data from sub-accounts",
                  "example": true
               },
               "callback_url": {
                  "type": "string",
                  "description": "Webhook URL for completion notifications",
                  "format": "uri",
                  "example": "https://example.com/webhook"
               }
            },
            "description": "Fields for asynchronous report requests"
         },
         "AsyncBaseRequest": {
            "description": "Base structure for asynchronous report request bodies",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRequestParams"
               },
               {
                  "$ref": "#/components/schemas/AsyncRequestFields"
               }
            ]
         },
         "SyncBaseRequest": {
            "description": "Base structure for synchronous report request parameters",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRequestParams"
               }
            ]
         },
         "ReportResponseBase": {
            "required": [
               "_links",
               "items_count",
               "receive_time",
               "request_id",
               "request_status",
               "start_time"
            ],
            "type": "object",
            "properties": {
               "request_id": {
                  "type": "string",
                  "description": "UUID of the request.",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "request_status": {
                  "type": "string",
                  "description": "Status of the request.",
                  "example": "PENDING",
                  "enum": [
                     "PENDING",
                     "PROCESSING",
                     "SUCCESS",
                     "ABORTED",
                     "FAILED",
                     "TRUNCATED"
                  ]
               },
               "receive_time": {
                  "type": "string",
                  "description": "Time at which the request of the report was received.",
                  "example": "2024-02-07T14:22:08+00:00"
               },
               "start_time": {
                  "type": "string",
                  "description": "Time at which the report processing of the report has started.",
                  "example": "2024-02-07T14:22:10+00:00"
               },
               "items_count": {
                  "type": "integer",
                  "description": "Number of records",
                  "format": "int64",
                  "example": 1523
               },
               "_links": {
                  "type": "object",
                  "properties": {
                     "self": {
                        "type": "object",
                        "properties": {
                           "href": {
                              "type": "string",
                              "format": "uri",
                              "example": "https://api.nexmo.com/v2/reports/aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
                           }
                        }
                     },
                     "download_report": {
                        "type": "object",
                        "properties": {
                           "href": {
                              "type": "string",
                              "description": "Download URL",
                              "format": "uri",
                              "example": "https://api.nexmo.com/v3/media/aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
                           }
                        }
                     }
                  },
                  "description": "HAL links"
               }
            },
            "description": "Base response containing report details and status for async requests"
         },
         "SmsFields": {
            "type": "object",
            "properties": {
               "direction": {
                  "required": [
                     "direction"
                  ],
                  "type": "string",
                  "description": "Direction of the communication.",
                  "example": "outbound",
                  "enum": [
                     "inbound",
                     "outbound"
                  ]
               },
               "status": {
                  "type": "string",
                  "description": "The final status of the message delivery filter",
                  "example": "delivered",
                  "enum": [
                     "delivered",
                     "expired",
                     "accepted",
                     "deleted",
                     "unknown",
                     "submitted",
                     "failed",
                     "rejected",
                     "buffered"
                  ]
               },
               "from": {
                  "type": "string",
                  "description": "SMS sent from this phone number. The value specified by the Customer in `from` parameter in SMS request",
                  "example": "447700900001"
               },
               "to": {
                  "type": "string",
                  "description": "Recipient phone number",
                  "example": "447700900000"
               },
               "country": {
                  "type": "string",
                  "description": "The ISO two letter country code",
                  "example": "PL"
               },
               "network": {
                  "type": "string",
                  "description": "The network code of the destination phone number",
                  "example": "12345"
               },
               "client_ref": {
                  "type": "string",
                  "description": "The optional custom reference value",
                  "example": "my-personal-reference"
               },
               "account_ref": {
                  "type": "string",
                  "description": "Account reference.",
                  "example": "customer1234"
               },
               "include_message": {
                  "type": "boolean",
                  "description": "Determines whether the message body is included.",
                  "example": true
               },
               "show_concatenated": {
                  "type": "boolean",
                  "description": "A boolean flag that determines whether the `concatenated` field is included in the report",
                  "example": false
               }
            },
            "description": "SMS"
         },
         "SMS_ASYNC": {
            "description": "SMS",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/SmsFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "SMS",
                        "enum": [
                           "SMS"
                        ]
                     }
                  }
               }
            ]
         },
         "SmsReportResponse": {
            "description": "SMS",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/SMS_ASYNC"
               }
            ]
         },
         "SmsTrafficControlFields": {
            "type": "object",
            "description": "SMS Traffic Control"
         },
         "SMS-TRAFFIC-CONTROL_ASYNC": {
            "description": "SMS Traffic Control",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/SmsTrafficControlFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "SMS-TRAFFIC-CONTROL",
                        "enum": [
                           "SMS-TRAFFIC-CONTROL"
                        ]
                     }
                  }
               }
            ]
         },
         "SmsTrafficControlReportResponse": {
            "description": "SMS Traffic Control",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/SMS-TRAFFIC-CONTROL_ASYNC"
               }
            ]
         },
         "VoiceCallFields": {
            "type": "object",
            "properties": {
               "direction": {
                  "type": "string",
                  "description": "Call direction filter",
                  "example": "outbound",
                  "enum": [
                     "inbound",
                     "outbound"
                  ]
               },
               "from": {
                  "type": "string",
                  "description": "Caller number/ID",
                  "example": "12345678912"
               },
               "to": {
                  "type": "string",
                  "description": "Called number",
                  "example": "22345678912"
               },
               "country": {
                  "type": "string",
                  "description": "Country code",
                  "example": "NG"
               },
               "network": {
                  "type": "string",
                  "description": "Mobile network code",
                  "example": "12345"
               },
               "status": {
                  "type": "string",
                  "description": "Call status filter",
                  "example": "ANSWERED",
                  "enum": [
                     "ANSWERED",
                     "MACHINE",
                     "ERROR"
                  ]
               },
               "call_id": {
                  "type": "string",
                  "description": "Unique call identifier",
                  "example": "dfc0c915f38ae6701d7d114cde2556b1-1"
               }
            },
            "description": "Voice API call"
         },
         "VOICE-CALL_ASYNC": {
            "description": "Voice API",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/VoiceCallFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "VOICE-CALL",
                        "enum": [
                           "VOICE-CALL"
                        ]
                     }
                  }
               }
            ]
         },
         "VoiceReportResponse": {
            "description": "Voice API",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/VOICE-CALL_ASYNC"
               }
            ]
         },
         "VoiceRejectedFields": {
            "type": "object",
            "properties": {
               "direction": {
                  "type": "string",
                  "description": "Call direction filter",
                  "example": "outbound",
                  "enum": [
                     "inbound",
                     "outbound"
                  ]
               },
               "from": {
                  "type": "string",
                  "description": "Caller number/ID",
                  "example": "12345678912"
               },
               "to": {
                  "type": "string",
                  "description": "Called number",
                  "example": "22345678912"
               },
               "country": {
                  "type": "string",
                  "description": "Country code",
                  "example": "PL"
               },
               "call_id": {
                  "type": "string",
                  "description": "Unique call identifier",
                  "example": "dfc0c915f38ae6701d7d114cde2556b1-1"
               }
            },
            "description": "Voice API rejected call"
         },
         "VOICE-FAILED_ASYNC": {
            "description": "Voice Failed",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/VoiceRejectedFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "VOICE-FAILED",
                        "enum": [
                           "VOICE-FAILED"
                        ]
                     }
                  }
               }
            ]
         },
         "VoiceRejectedReportResponse": {
            "description": "Voice Failed",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/VOICE-FAILED_ASYNC"
               }
            ]
         },
         "VoiceTTSFields": {
            "type": "object",
            "description": "Voice Text-to-Speech (TTS)"
         },
         "VOICE-TTS_ASYNC": {
            "description": "Voice TTS",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/VoiceTTSFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "VOICE-TTS",
                        "enum": [
                           "VOICE-TTS"
                        ]
                     }
                  }
               }
            ]
         },
         "VoiceTTSReportResponse": {
            "description": "Voice TTS",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/VOICE-TTS_ASYNC"
               }
            ]
         },
         "AsrFields": {
            "type": "object",
            "properties": {
               "direction": {
                  "type": "string",
                  "description": "Call direction filter",
                  "example": "outbound",
                  "enum": [
                     "inbound",
                     "outbound"
                  ]
               },
               "from": {
                  "type": "string",
                  "description": "Caller ID",
                  "example": "12345678912"
               },
               "to": {
                  "type": "string",
                  "description": "Called number",
                  "example": "12345678912"
               },
               "call_id": {
                  "type": "string",
                  "description": "Unique call identifier",
                  "example": "dfc0c915f38ae6701d7d114cde2556b1-1"
               }
            },
            "description": "Automatic Speech Recognition (ASR)"
         },
         "ASR_ASYNC": {
            "description": "Voice ASR",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/AsrFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "ASR",
                        "enum": [
                           "ASR"
                        ]
                     }
                  }
               }
            ]
         },
         "AsrReportResponse": {
            "description": "Voice ASR",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/ASR_ASYNC"
               }
            ]
         },
         "InAppVoiceFields": {
            "type": "object",
            "properties": {
               "conversation_id": {
                  "type": "string",
                  "description": "Conversation ID",
                  "example": "CON-abc123"
               },
               "status": {
                  "type": "string",
                  "description": "Call termination status",
                  "example": "200"
               },
               "leg_id": {
                  "type": "string",
                  "description": "Unique leg identifier for the call",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               }
            },
            "description": "In-App Voice"
         },
         "IN-APP-VOICE_ASYNC": {
            "description": "In-App Voice",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/InAppVoiceFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "IN-APP-VOICE",
                        "enum": [
                           "IN-APP-VOICE"
                        ]
                     }
                  }
               }
            ]
         },
         "InAppVoiceReportResponse": {
            "description": "In-App Voice",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/IN-APP-VOICE_ASYNC"
               }
            ]
         },
         "WebsocketFields": {
            "type": "object",
            "properties": {
               "call_id": {
                  "type": "string",
                  "description": "Unique WebSocket call identifier",
                  "example": "dfc0c915f38ae6701d7d114cde2556b1-1"
               }
            },
            "description": "Voice WebSocket Call"
         },
         "WEBSOCKET-CALL_ASYNC": {
            "description": "Voice WebSocket Call",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/WebsocketFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "WEBSOCKET-CALL",
                        "enum": [
                           "WEBSOCKET-CALL"
                        ]
                     }
                  }
               }
            ]
         },
         "WebsocketReportResponse": {
            "description": "Voice WebSocket Call",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/WEBSOCKET-CALL_ASYNC"
               }
            ]
         },
         "AmdFields": {
            "type": "object",
            "description": "Answering Machine Detection (AMD)",
            "properties": {
               "call_id": {
                  "type": "string",
                  "description": "Unique call identifier",
                  "example": "dfc0c915f38ae6701d7d114cde2556b1-1"
               }
            }
         },
         "AMD_ASYNC": {
            "description": "Voice AMD (Advanced Machine Detection)",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/AmdFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "AMD",
                        "enum": [
                           "AMD"
                        ]
                     }
                  }
               }
            ]
         },
         "AmdReportResponse": {
            "description": "Voice AMD (Advanced Machine Detection)",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/AMD_ASYNC"
               }
            ]
         },
         "VerifyV1Fields": {
            "type": "object",
            "properties": {
               "to": {
                  "type": "string",
                  "description": "Phone number being verified",
                  "example": "447700900000"
               },
               "network": {
                  "type": "string",
                  "description": "Mobile network code",
                  "example": "20820"
               }
            },
            "description": "Number Verify API"
         },
         "VERIFY-API_ASYNC": {
            "description": "Verify v1",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/VerifyV1Fields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "VERIFY-API",
                        "enum": [
                           "VERIFY-API"
                        ]
                     }
                  }
               }
            ]
         },
         "VerifyReportResponse": {
            "description": "Verify v1",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/VERIFY-API_ASYNC"
               }
            ]
         },
         "VerifyV2Fields": {
            "type": "object",
            "properties": {
               "channel": {
                  "type": "string",
                  "description": "Verification channel",
                  "example": "v2",
                  "enum": [
                     "v2",
                     "email",
                     "silent_auth"
                  ]
               },
               "parent_request_id": {
                  "type": "string",
                  "description": "Filter by parent request ID, which correlates `v2` verification requests with their associated `email` or `silent_auth` events.",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "to": {
                  "type": "string",
                  "description": "Phone number being verified",
                  "example": "123456789000"
               },
               "locale": {
                  "type": "string",
                  "description": "Language/locale",
                  "example": "en-gb"
               },
               "network": {
                  "type": "string",
                  "description": "Mobile network code",
                  "example": "12345"
               },
               "country": {
                  "type": "string",
                  "description": "Country code",
                  "example": "GB"
               },
               "status": {
                  "type": "string",
                  "description": "Verification status",
                  "example": "SUCCESS"
               }
            },
            "description": "Verify v2 API"
         },
         "VERIFY-V2_ASYNC": {
            "description": "Verify v2",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/VerifyV2Fields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "VERIFY-V2",
                        "enum": [
                           "VERIFY-V2"
                        ]
                     }
                  }
               }
            ]
         },
         "VerifyV2ReportResponse": {
            "description": "Verify v2",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/VERIFY-V2_ASYNC"
               }
            ]
         },
         "NIV1Fields": {
            "type": "object",
            "properties": {
               "number": {
                  "type": "string",
                  "description": "Phone number for Number Insight",
                  "example": "447700900000"
               },
               "network": {
                  "type": "string",
                  "description": "Mobile network code",
                  "example": "23420"
               }
            },
            "description": "Number Insight API"
         },
         "NUMBER-INSIGHT_ASYNC": {
            "description": "Number Insight v1",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/NIV1Fields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "NUMBER-INSIGHT",
                        "enum": [
                           "NUMBER-INSIGHT"
                        ]
                     }
                  }
               }
            ]
         },
         "NIReportResponse": {
            "description": "Number Insight v1",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/NUMBER-INSIGHT_ASYNC"
               }
            ]
         },
         "MessagesFields": {
            "type": "object",
            "properties": {
               "direction": {
                  "required": [
                     "direction"
                  ],
                  "type": "string",
                  "description": "Message direction filter",
                  "example": "outbound",
                  "enum": [
                     "inbound",
                     "outbound"
                  ]
               },
               "status": {
                  "type": "string",
                  "description": "Message status filter",
                  "example": "delivered",
                  "enum": [
                     "submitted",
                     "delivered",
                     "read",
                     "rejected",
                     "undeliverable"
                  ]
               },
               "from": {
                  "type": "string",
                  "description": "Sender",
                  "example": "447700900001"
               },
               "to": {
                  "type": "string",
                  "description": "Recipient",
                  "example": "447700900000"
               },
               "provider": {
                  "type": "string",
                  "description": "Messaging provider",
                  "example": "whatsapp",
                  "enum": [
                     "whatsapp",
                     "sms",
                     "mms",
                     "messenger",
                     "viber_service_msg",
                     "instagram",
                     "rcs",
                     "email"
                  ]
               },
               "country": {
                  "type": "string",
                  "description": "Country code",
                  "example": "ES"
               },
               "include_message": {
                  "type": "boolean",
                  "description": "Include message content",
                  "example": true
               }
            },
            "description": "Messages API"
         },
         "MESSAGES_ASYNC": {
            "description": "Messages API",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/MessagesFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "MESSAGES",
                        "enum": [
                           "MESSAGES"
                        ]
                     }
                  }
               }
            ]
         },
         "MessagesReportResponse": {
            "description": "Messages API",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/MESSAGES_ASYNC"
               }
            ]
         },
         "ConversationEventFields": {
            "type": "object",
            "properties": {
               "conversation_id": {
                  "type": "string",
                  "description": "Conversation ID",
                  "example": "CON-d01afdc1-7f8c-49d8-9fc0-e92854xxxxx"
               },
               "status": {
                  "type": "string",
                  "description": "Event status",
                  "example": "SUCCESS"
               }
            },
            "description": "Conversation Event API"
         },
         "CONVERSATION-EVENT_ASYNC": {
            "description": "Conversation Event",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/ConversationEventFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "CONVERSATION-EVENT",
                        "enum": [
                           "CONVERSATION-EVENT"
                        ]
                     }
                  }
               }
            ]
         },
         "ConversationEventReportResponse": {
            "description": "Conversation Event",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/CONVERSATION-EVENT_ASYNC"
               }
            ]
         },
         "ConversationMessageFields": {
            "type": "object",
            "properties": {
               "conversation_id": {
                  "type": "string",
                  "description": "Conversation ID",
                  "example": "CON-d01afdc1-7f8c-49d8-9fc0-e92854xxxxx"
               }
            },
            "description": "Conversation Message API"
         },
         "CONVERSATION-MESSAGE_ASYNC": {
            "description": "Conversation Message",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/ConversationMessageFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "CONVERSATION-MESSAGE",
                        "enum": [
                           "CONVERSATION-MESSAGE"
                        ]
                     }
                  }
               }
            ]
         },
         "ConversationMessageReportResponse": {
            "description": "Conversation Message",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/CONVERSATION-MESSAGE_ASYNC"
               }
            ]
         },
         "ReportsUsageFields": {
            "type": "object",
            "description": "Reports API usage statistics"
         },
         "REPORTS-USAGE_ASYNC": {
            "description": "Reports Usage",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/ReportsUsageFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "REPORTS-USAGE",
                        "enum": [
                           "REPORTS-USAGE"
                        ]
                     }
                  }
               }
            ]
         },
         "ReportsUsageReportResponse": {
            "description": "Reports Usage",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/REPORTS-USAGE_ASYNC"
               }
            ]
         },
         "NetworkApiEventFields": {
            "type": "object",
            "properties": {
               "product_name": {
                  "type": "string",
                  "description": "Product name for Network API event",
                  "example": "camara-sim-swap"
               },
               "request_type": {
                  "type": "string",
                  "description": "Type of Network API request",
                  "example": "check"
               },
               "request_session_id": {
                  "type": "string",
                  "description": "Session ID",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "product_path": {
                  "type": "string",
                  "description": "API path",
                  "example": "/camara/sim-swap/v040/check"
               },
               "correlation_id": {
                  "type": "string",
                  "description": "Correlation ID",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               }
            },
            "description": "Network API Event"
         },
         "NETWORK-API-EVENT_ASYNC": {
            "description": "Network API Event",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/NetworkApiEventFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "NETWORK-API-EVENT",
                        "enum": [
                           "NETWORK-API-EVENT"
                        ]
                     }
                  }
               }
            ]
         },
         "NetworkApiEventReportResponse": {
            "description": "Network API Event",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/NETWORK-API-EVENT_ASYNC"
               }
            ]
         },
         "VideoApiFields": {
            "type": "object",
            "properties": {
               "session_id": {
                  "type": "string",
                  "description": "Unique video session identifier",
                  "example": "1_LEq_MdtdTrWOfAnId7l8ig-wTs_zs3GTmqn0w0cfPFkWw-rzW2u6FgSOegi0n7TyEMiA"
               },
               "meeting_id": {
                  "type": "string",
                  "description": "Unique meeting identifier",
                  "example": "04384913-bc1d-43df-a720-854b4d43f221"
               }
            },
            "description": "Video API"
         },
         "VIDEO-API_ASYNC": {
            "description": "Video API",
            "allOf": [
               {
                  "$ref": "#/components/schemas/AsyncBaseRequest"
               },
               {
                  "$ref": "#/components/schemas/VideoApiFields"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "VIDEO-API",
                        "enum": [
                           "VIDEO-API"
                        ]
                     }
                  }
               }
            ]
         },
         "VideoApiReportResponse": {
            "description": "Video API",
            "allOf": [
               {
                  "$ref": "#/components/schemas/ReportResponseBase"
               },
               {
                  "$ref": "#/components/schemas/VIDEO-API_ASYNC"
               }
            ]
         },
         "AnyAsyncRequestParams": {
            "description": "Discriminated Union Schema for All Asynchronous Request Parameters (Request Body)",
            "discriminator": {
               "propertyName": "product"
            },
            "oneOf": [
               {
                  "$ref": "#/components/schemas/SMS_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/SMS-TRAFFIC-CONTROL_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/VOICE-CALL_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/VOICE-FAILED_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/VOICE-TTS_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/ASR_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/IN-APP-VOICE_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/WEBSOCKET-CALL_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/AMD_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/MESSAGES_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/VERIFY-API_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/VERIFY-V2_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/NUMBER-INSIGHT_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/CONVERSATION-MESSAGE_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/CONVERSATION-EVENT_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/REPORTS-USAGE_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/NETWORK-API-EVENT_ASYNC"
               },
               {
                  "$ref": "#/components/schemas/VIDEO-API_ASYNC"
               }
            ]
         },
         "AnyReportResponse": {
            "description": "Discriminated Union Schema for All Asynchronous Report Responses",
            "oneOf": [
               {
                  "$ref": "#/components/schemas/SmsReportResponse"
               },
               {
                  "$ref": "#/components/schemas/SmsTrafficControlReportResponse"
               },
               {
                  "$ref": "#/components/schemas/VoiceReportResponse"
               },
               {
                  "$ref": "#/components/schemas/VoiceRejectedReportResponse"
               },
               {
                  "$ref": "#/components/schemas/VoiceTTSReportResponse"
               },
               {
                  "$ref": "#/components/schemas/InAppVoiceReportResponse"
               },
               {
                  "$ref": "#/components/schemas/AsrReportResponse"
               },
               {
                  "$ref": "#/components/schemas/WebsocketReportResponse"
               },
               {
                  "$ref": "#/components/schemas/AmdReportResponse"
               },
               {
                  "$ref": "#/components/schemas/MessagesReportResponse"
               },
               {
                  "$ref": "#/components/schemas/VerifyReportResponse"
               },
               {
                  "$ref": "#/components/schemas/VerifyV2ReportResponse"
               },
               {
                  "$ref": "#/components/schemas/NIReportResponse"
               },
               {
                  "$ref": "#/components/schemas/ConversationEventReportResponse"
               },
               {
                  "$ref": "#/components/schemas/ConversationMessageReportResponse"
               },
               {
                  "$ref": "#/components/schemas/ReportsUsageReportResponse"
               },
               {
                  "$ref": "#/components/schemas/NetworkApiEventReportResponse"
               },
               {
                  "$ref": "#/components/schemas/VideoApiReportResponse"
               }
            ]
         },
         "BaseRecordsResponse": {
            "type": "object",
            "properties": {
               "_links": {
                  "type": "object",
                  "properties": {
                     "self": {
                        "type": "object",
                        "properties": {
                           "href": {
                              "type": "string",
                              "format": "uri",
                              "example": "https://api.nexmo.com/v2/reports/sms/records?product=SMS&direction=outbound&date_start=2024-02-01T00:00:00Z&date_end=2024-02-02T00:00:00Z"
                           }
                        }
                     },
                     "next": {
                        "type": "object",
                        "properties": {
                           "href": {
                              "type": "string",
                              "format": "uri",
                              "example": "https://api.nexmo.com/v2/reports/sms/records?product=SMS&direction=outbound&cursor=MTY0OTQ3ODAwMDAwMA"
                           }
                        },
                        "description": "Link to the next page of records. **Present only if pagination is applicable.**"
                     }
                  },
                  "description": "HAL links for navigation and pagination. The `next` link is only present if more records are available."
               },
               "cursor": {
                  "type": "string",
                  "description": "Cursor for paginating results. **Present only if pagination is applicable.**",
                  "example": "MTY0OTQ3ODAwMDAwMA"
               },
               "iv": {
                  "type": "string",
                  "description": "Initialization vector for cursor processing. **Present only if pagination is applicable.**",
                  "example": "8a2c4e6f-12d3-45b6-78c9-0a1b2c3d4e5f"
               },
               "request_id": {
                  "type": "string",
                  "description": "Unique ID associated with this synchronous request.",
                  "example": "a91b34c2-5d98-4c0e-8f23-a6b1c7d4e9f0"
               },
               "request_status": {
                  "type": "string",
                  "description": "The result status of the request.",
                  "example": "SUCCESS",
                  "enum": [
                     "SUCCESS",
                     "TRUNCATED"
                  ]
               },
               "received_at": {
                  "type": "string",
                  "format": "date-time",
                  "description": "Timestamp when the request was processed by the Reports API.",
                  "example": "2024-02-07T14:22:08+00:00"
               },
               "items_count": {
                  "type": "integer",
                  "description": "The number of records returned in this page/response.",
                  "format": "int64",
                  "example": 50
               },
               "ids_not_found": {
                  "type": "string",
                  "description": "A comma-separated list of IDs if the request was made by ID and some were not found.",
                  "example": "id-missing-1,id-missing-2"
               }
            },
            "description": "Base synchronous response containing request metadata and pagination links."
         },
         "SmsOutboundRecordsResponse": {
            "description": "SMS (Outbound)",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "SMS",
                        "enum": [
                           "SMS"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of outbound SMS records",
                        "items": {
                           "$ref": "#/components/schemas/SmsOutboundRecord"
                        }
                     }
                  }
               }
            ]
         },
         "SmsInboundRecordsResponse": {
            "description": "SMS (Inbound)",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "SMS",
                        "enum": [
                           "SMS"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of inbound SMS records",
                        "items": {
                           "$ref": "#/components/schemas/SmsInboundRecord"
                        }
                     }
                  }
               }
            ]
         },
         "SmsTrafficControlRecordsResponse": {
            "description": "SMS Traffic Control",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "SMS-TRAFFIC-CONTROL",
                        "enum": [
                           "SMS-TRAFFIC-CONTROL"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of SMS traffic control records",
                        "items": {
                           "$ref": "#/components/schemas/SmsTrafficControlRecord"
                        }
                     }
                  }
               }
            ]
         },
         "VoiceRecordsResponse": {
            "description": "Voice Call",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "VOICE-CALL",
                        "enum": [
                           "VOICE-CALL"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of voice call records",
                        "items": {
                           "$ref": "#/components/schemas/VoiceRecord"
                        }
                     }
                  }
               }
            ]
         },
         "VoiceInAppRecordsResponse": {
            "description": "In-App Voice",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "IN-APP-VOICE",
                        "enum": [
                           "IN-APP-VOICE"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of in-app voice call records",
                        "items": {
                           "$ref": "#/components/schemas/VoiceInAppRecord"
                        }
                     }
                  }
               }
            ]
         },
         "VoiceTtsRecordsResponse": {
            "description": "Voice TTS",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "VOICE-TTS",
                        "enum": [
                           "VOICE-TTS"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of voice text-to-speech records",
                        "items": {
                           "$ref": "#/components/schemas/VoiceTtsRecord"
                        }
                     }
                  }
               }
            ]
         },
         "VoiceAsrRecordsResponse": {
            "description": "Voice ASR",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "ASR",
                        "enum": [
                           "ASR"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of voice automatic speech recognition records",
                        "items": {
                           "$ref": "#/components/schemas/VoiceAsrRecord"
                        }
                     }
                  }
               }
            ]
         },
         "VoiceWebSocketRecordsResponse": {
            "description": "Voice WebSocket Call",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "WEBSOCKET-CALL",
                        "enum": [
                           "WEBSOCKET-CALL"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of voice WebSocket streaming records",
                        "items": {
                           "$ref": "#/components/schemas/VoiceWebSocketRecord"
                        }
                     }
                  }
               }
            ]
         },
         "VoiceFailedRecordsResponse": {
            "description": "Voice Failed",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "VOICE-FAILED",
                        "enum": [
                           "VOICE-FAILED"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of failed voice call records",
                        "items": {
                           "$ref": "#/components/schemas/VoiceFailedRecord"
                        }
                     }
                  }
               }
            ]
         },
         "VoiceAmdRecordsResponse": {
            "description": "Voice AMD (Advanced Machine Detection)",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "AMD",
                        "enum": [
                           "AMD"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of voice AMD records",
                        "items": {
                           "$ref": "#/components/schemas/VoiceAmdRecord"
                        }
                     }
                  }
               }
            ]
         },
         "MessagesOutboundRecordsResponse": {
            "description": "Messages (Outbound)",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "MESSAGES",
                        "enum": [
                           "MESSAGES"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of outbound Messages API records",
                        "items": {
                           "$ref": "#/components/schemas/MessagesOutboundRecord"
                        }
                     }
                  }
               }
            ]
         },
         "MessagesInboundRecordsResponse": {
            "description": "Messages (Inbound)",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "MESSAGES",
                        "enum": [
                           "MESSAGES"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of inbound Messages API records",
                        "items": {
                           "$ref": "#/components/schemas/MessagesInboundRecord"
                        }
                     }
                  }
               }
            ]
         },
         "VerifyRecordsResponse": {
            "description": "Verify v1",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "VERIFY-API",
                        "enum": [
                           "VERIFY-API"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of Verify API records",
                        "items": {
                           "$ref": "#/components/schemas/VerifyRecord"
                        }
                     }
                  }
               }
            ]
         },
         "VerifyV2RecordsResponse": {
            "description": "Verify v2",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "VERIFY-V2",
                        "enum": [
                           "VERIFY-V2"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of Verify API v2 records",
                        "items": {
                           "$ref": "#/components/schemas/VerifyV2Record"
                        }
                     }
                  }
               }
            ]
         },
         "NumberInsightRecordsResponse": {
            "description": "Number Insight",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "NUMBER-INSIGHT",
                        "enum": [
                           "NUMBER-INSIGHT"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of Number Insight records",
                        "items": {
                           "$ref": "#/components/schemas/NumberInsightRecord"
                        }
                     }
                  }
               }
            ]
         },
         "ConversationsEventRecordsResponse": {
            "description": "Conversations Event",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "CONVERSATION-EVENT",
                        "enum": [
                           "CONVERSATION-EVENT"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of Conversations event records",
                        "items": {
                           "$ref": "#/components/schemas/ConversationsEventRecord"
                        }
                     }
                  }
               }
            ]
         },
         "ConversationsMessageRecordsResponse": {
            "description": "Conversations Message",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "CONVERSATION-MESSAGE",
                        "enum": [
                           "CONVERSATION-MESSAGE"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of Conversations message records",
                        "items": {
                           "$ref": "#/components/schemas/ConversationsMessageRecord"
                        }
                     }
                  }
               }
            ]
         },
         "ReportsUsageRecordsResponse": {
            "description": "Reports Usage",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "REPORTS-USAGE",
                        "enum": [
                           "REPORTS-USAGE"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of Reports API usage records",
                        "items": {
                           "$ref": "#/components/schemas/ReportsUsageRecord"
                        }
                     }
                  }
               }
            ]
         },
         "NetworkApiEventRecordsResponse": {
            "description": "Network API Event",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "NETWORK-API-EVENT",
                        "enum": [
                           "NETWORK-API-EVENT"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of Network API event records",
                        "items": {
                           "$ref": "#/components/schemas/NetworkApiEventRecord"
                        }
                     }
                  }
               }
            ]
         },
         "VideoApiRecordsResponse": {
            "description": "Video API",
            "allOf": [
               {
                  "$ref": "#/components/schemas/BaseRecordsResponse"
               },
               {
                  "type": "object",
                  "properties": {
                     "product": {
                        "type": "string",
                        "example": "VIDEO-API",
                        "enum": [
                           "VIDEO-API"
                        ]
                     }
                  }
               },
               {
                  "type": "object",
                  "properties": {
                     "records": {
                        "type": "array",
                        "description": "List of Video API usage records",
                        "items": {
                           "$ref": "#/components/schemas/VideoApiRecord"
                        }
                     }
                  }
               }
            ]
         },
         "AnyRecordsResponse": {
            "discriminator": {
               "propertyName": "product"
            },
            "oneOf": [
               {
                  "$ref": "#/components/schemas/SmsOutboundRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/SmsInboundRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/SmsTrafficControlRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/VoiceRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/VoiceInAppRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/VoiceTtsRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/VoiceAsrRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/VoiceWebSocketRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/VoiceFailedRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/VoiceAmdRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/MessagesOutboundRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/MessagesInboundRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/VerifyRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/VerifyV2RecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/NumberInsightRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/ConversationsEventRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/ConversationsMessageRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/ReportsUsageRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/NetworkApiEventRecordsResponse"
               },
               {
                  "$ref": "#/components/schemas/VideoApiRecordsResponse"
               }
            ]
         },
         "TierVolume": {
            "type": "string",
            "description": "The predefined volume range that applies to the pricing tier for this usage record. Format: \"{lowerBound}-{upperBound}\" where upperBound can be a number or \"onwards\" for the last open-ended tier. For voice products, values are expressed in seconds. Multiple ranges may be joined by \"_\" when usage spans multiple tiers. Null or empty indicates flat-rate pricing (no tiered model applies).\n",
            "pattern": "^((\\d+)-((\\d+)|onwards))(_(\\d+)-((\\d+)|onwards))*$",
            "example": "1-10000"
         },
         "SmsOutboundRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "12aa3456"
               },
               "message_id": {
                  "type": "string",
                  "description": "Vonage's unique identifier for this message",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "account_ref": {
                  "type": "string",
                  "description": "It's used to identify separate accounts using the SMS endpoint for billing purposes. The field is optional in SMS. It can be empty in the report",
                  "example": "customer1234"
               },
               "client_ref": {
                  "type": "string",
                  "description": "If client-ref parameter were used by the Customer while calling SMS, the value with Client's own reference will be shown in this field. Up to 100 characters.",
                  "example": "my-personal-reference"
               },
               "direction": {
                  "type": "string",
                  "description": "Direction of the call, either `inbound` or `outbound`.",
                  "example": "outbound"
               },
               "from": {
                  "type": "string",
                  "description": "SMS sent from this phone number. The value specified by the Customer in `from` parameter in SMS request (can be numeric, alpha-numeric or short code)",
                  "example": "447700900001"
               },
               "to": {
                  "type": "string",
                  "description": "SMS sent to this phone number. In other words, the destination phone number.",
                  "example": "447700900000"
               },
               "forced_from": {
                  "type": "string",
                  "description": "The number used instead of `from` field by Vonage, but only if there are any special routing rules were applied. It will be empty if not applicable.",
                  "example": "44770090045"
               },
               "changed_from": {
                  "type": "string",
                  "description": "The number used instead of `from` field by Vonage, but only if if Number Pools API was used or if routing rules were changed due to compliance reasons. It will be empty if not applicable.",
                  "example": "NXSMS"
               },
               "concatenated": {
                  "type": "string",
                  "description": "Indicates whether the SMS was split up into multiple parts (due to its length). The field will be available in the report if Reports API were called with the parameter show_concatenated= `true`.",
                  "example": "FALSE"
               },
               "message_body": {
                  "type": "string",
                  "description": "Body of the message sent. Only present if include_message parameter is set to true.",
                  "example": "Hello World!"
               },
               "network": {
                  "type": "string",
                  "description": "The network code of the destination phone number. Taken from a carrier lookup (or sometimes the numbering plan), and always a master network code. Usually an MCC/MNC but sometimes alpha e.g US-FIXED",
                  "example": "12345"
               },
               "network_name": {
                  "type": "string",
                  "description": "The name of the network code",
                  "example": "Orange Polska S.A."
               },
               "country": {
                  "type": "string",
                  "description": "The ISO two letter country code to which the network code belongs in the numbering plan",
                  "example": "PL"
               },
               "country_name": {
                  "type": "string",
                  "description": "Country name of the country code",
                  "example": "Poland"
               },
               "date_received": {
                  "type": "string",
                  "description": "Date when Vonage received SMS request. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-02T13:50:00+00:00"
               },
               "date_finalized": {
                  "type": "string",
                  "description": "Date when the SMS message reached its final state. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-02T13:50:00+00:00"
               },
               "latency": {
                  "type": "string",
                  "description": "Latency of the request in ms",
                  "example": "42"
               },
               "status": {
                  "type": "string",
                  "description": "The final status of the message delivery, derived from the Delivery Receipt (DLR) provided by the carrier/supplier. The statuses are according to \"SMS Delivery statuses\" explained on [Developer portal](https://developer.vonage.com/en/messaging/sms/guides/delivery-receipts#dlr-status-messages) and in [KB article](https://api.support.vonage.com/hc/en-us/articles/360018438551-DLR-Statuses)",
                  "example": "delivered"
               },
               "error_code": {
                  "type": "string",
                  "description": "The specific code indicating the result of the Vonage handoff to the supplier. A code of 0 typically indicates a successful handoff. See the [Delivery Receipt documentation](https://developer.vonage.com/en/messaging/sms/guides/delivery-receipts#dlr-error-codes) for more details",
                  "example": "0"
               },
               "error_code_description": {
                  "type": "string",
                  "description": "A short text explanation for the value in error_code. This confirms the immediate status of the message handover from Vonage to the destination carrier/supplier. See the [Delivery Receipt documentation](https://developer.vonage.com/en/messaging/sms/guides/delivery-receipts#dlr-error-codes) for more details",
                  "example": "Delivered"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of the SMS request. Always returns an empty string.",
                  "example": ""
               },
               "total_price": {
                  "type": "string",
                  "description": "Price of the SMS request",
                  "example": "0.036"
               },
               "id": {
                  "type": "string",
                  "description": "The UUID of the record in the report",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "dcs": {
                  "type": "string",
                  "description": "DCS (Data Coding Scheme) is the encoding with which the message body was delivered to the phone. It is according to the value of the `type` parameter used in SMS request. DCS = 0 (the default value) is for GSM/text. DCS = 8 is for unicode text messages DCS = 4 is for binary text messages",
                  "example": "0"
               },
               "validity_period": {
                  "type": "string",
                  "description": "The validity period of the SMS message used in the `ttl` parameter of the SMS request. The duration in milliseconds the delivery of an SMS will be attempted. By default Vonage attempts delivery for 72 hours, however the maximum effective value depends on the operator and is typically 24 - 48 hours.",
                  "example": "240210092938000+"
               },
               "ip_address": {
                  "type": "string",
                  "description": "The IP address of the Customer's server calling SMS.",
                  "example": "12.23.456.111"
               },
               "udh": {
                  "type": "string",
                  "description": "User Data Header, available if SMS was split up into multiple parts (due to its length). Pay attention: UDHs are not unique values. An 8 bit concatenation UDH is always going to start from `050003`, then the reference e.g. `00` and then the total parts and part index e.g. `0201` for the first part of a two part message",
                  "example": "50003940401"
               },
               "workflow_id": {
                  "type": "string",
                  "description": "RCS workflow_id. Populated only when an SMS is converted to RCS. It matches the workflow_id in the Messages report, allowing retrieval of the corresponding RCS record. Blank if not converted. See details about the feature here - [SMS-to-RCS Transitioning with Branded Text](https://developer.vonage.com/en/messaging/sms/guides/branded-text)",
                  "example": "3TcNjgZvTgbJ41bJGMiHQxf7s6UPsKUEnkhyY"
               },
               "tier_volume": {
                  "$ref": "#/components/schemas/TierVolume"
               }
            },
            "description": "SMS (Outbound)"
         },
         "SmsInboundRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "12aa3456"
               },
               "message_id": {
                  "type": "string",
                  "description": "Vonage's unique identifier for this message",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "direction": {
                  "type": "string",
                  "description": "Direction of the SMS message, either `inbound` or `outbound`.",
                  "example": "inbound"
               },
               "from": {
                  "type": "string",
                  "description": "The phone number that this inbound message was sent from.",
                  "example": "447700900001"
               },
               "to": {
                  "type": "string",
                  "description": "The phone number that the SMS message was sent to. This is Customer's virtual number.",
                  "example": "447700900000"
               },
               "network": {
                  "type": "string",
                  "description": "The network code of the originating phone number. Taken from the numbering plan), and always a master network code. Usually an MCCMNC but sometimes alpha e.g US-FIXED",
                  "example": "12345"
               },
               "network_name": {
                  "type": "string",
                  "description": "The name of the network code",
                  "example": "Orange Polska S.A."
               },
               "country": {
                  "type": "string",
                  "description": "The ISO two letter country code to which the network code belongs in the numbering plan",
                  "example": "PL"
               },
               "country_name": {
                  "type": "string",
                  "description": "Country name of the country code",
                  "example": "Poland"
               },
               "date_received": {
                  "type": "string",
                  "description": "Date when Vonage received the inbound message from it's supplier. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-02T13:50:00+00:00"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of the inbound SMS. Always returns an empty string.",
                  "example": ""
               },
               "total_price": {
                  "type": "string",
                  "description": "Price of the inbound SMS",
                  "example": "0.036"
               },
               "id": {
                  "type": "string",
                  "description": "The UUID of the record in the report",
                  "example": "1D000000A657F123"
               },
               "message_body": {
                  "type": "string",
                  "description": "Body of the message sent. Only present if include_message parameter is set to true.",
                  "example": "Hello World!"
               },
               "tier_volume": {
                  "$ref": "#/components/schemas/TierVolume"
               }
            },
            "description": "SMS (Inbound)"
         },
         "SmsTrafficControlRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "12aa3456"
               },
               "queued_time": {
                  "type": "string",
                  "description": "Date and time when messaged was placed in Vonage queue. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-07-17T12:34:56+00:00"
               },
               "message_id": {
                  "type": "string",
                  "description": "Vonage's unique identifier for this message",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "status": {
                  "type": "string",
                  "description": "Either queued in Vonage or dequeued in Vonage. Possible values: queued, dequeued",
                  "example": "queued"
               },
               "queue_duration": {
                  "type": "string",
                  "description": "Duration of staying in queue in milliseconds",
                  "example": "100"
               },
               "id": {
                  "type": "string",
                  "description": "The unique id of the record in the report",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               }
            },
            "description": "SMS Traffic Control"
         },
         "VoiceRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "123g4567"
               },
               "call_id": {
                  "type": "string",
                  "description": "UUID of the call request",
                  "example": "dfc0c915f38ae6701d7d114cde2556b1-1"
               },
               "direction": {
                  "type": "string",
                  "description": "Direction of the call, either inbound or outbound. One of: inbound or outbound",
                  "example": "outbound"
               },
               "from": {
                  "type": "string",
                  "description": "The number of the caller requested to be used by the Customer. If special routing rules were used, the actual phone number would be replaced with the number from `forced_from` field",
                  "example": "12345678912"
               },
               "to": {
                  "type": "string",
                  "description": "The dialed number in a call. For an inbound call, this will be the virtual number.",
                  "example": "22345678912"
               },
               "forced_from": {
                  "type": "string",
                  "description": "the number used instead of from, but only if there are any special `routing` rules for it. It will be empty if not applicable.",
                  "example": "33345678912"
               },
               "network": {
                  "type": "string",
                  "description": "Network of the destination number",
                  "example": "12345 MX-FIXED"
               },
               "network_name": {
                  "type": "string",
                  "description": "Name of the network used to send the call request",
                  "example": "Airtel Nigeria"
               },
               "country": {
                  "type": "string",
                  "description": "Country where the call request was sent.",
                  "example": "NG"
               },
               "country_name": {
                  "type": "string",
                  "description": "Country name where the call request was sent.",
                  "example": "Nigeria"
               },
               "date_start": {
                  "type": "string",
                  "description": "Date of the start of the call. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-07T14:22:08+00:00"
               },
               "date_end": {
                  "type": "string",
                  "description": "Date of the end of the call. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-07T14:22:56+00:00"
               },
               "duration": {
                  "type": "string",
                  "description": "Duration of the call in seconds",
                  "example": "34"
               },
               "status": {
                  "type": "string",
                  "description": "The final status of the call. Always ANSWERED",
                  "example": "ANSWERED"
               },
               "status_description": {
                  "type": "string",
                  "description": "Description of the status of the call",
                  "example": "The call was successful."
               },
               "status_code": {
                  "type": "string",
                  "description": "The SIP/HTTP response code received",
                  "example": "200"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of the call",
                  "example": "EUR"
               },
               "price": {
                  "type": "string",
                  "description": "Price per minute",
                  "example": "0.07998"
               },
               "total_price": {
                  "type": "string",
                  "description": "Total price of the call",
                  "example": "0.018662"
               },
               "id": {
                  "type": "string",
                  "description": "The unique id of the record in the report",
                  "example": "ebbe1234-da56-78a9-9d5c-3da9787c5720"
               },
               "tier_volume": {
                  "$ref": "#/components/schemas/TierVolume"
               }
            },
            "description": "Voice Call"
         },
         "VoiceInAppRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "abcdef01"
               },
               "request_id": {
                  "type": "string",
                  "description": "Id of the request",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "application_id": {
                  "type": "string",
                  "description": "Id of the application used",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "conversation_id": {
                  "type": "string",
                  "description": "particular Conversation. This should include the `CON-` prefix.",
                  "example": "CON-abc123"
               },
               "user_id": {
                  "type": "string",
                  "description": "User id in the conversation",
                  "example": "NAME"
               },
               "leg_id": {
                  "type": "string",
                  "description": "Id of the call leg",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "client_ref": {
                  "type": "string",
                  "description": "If client-ref parameter were used by the Customer while calling the In-App VOICE API, the value with the Client's own reference will be shown in this field.",
                  "example": "my-personal-reference"
               },
               "date_start": {
                  "type": "string",
                  "description": "Date of the start of the call",
                  "example": "2023-06-28T15:59:06+00:00"
               },
               "date_end": {
                  "type": "string",
                  "description": "Date of the end of the call",
                  "example": "2023-06-28T15:59:06+00:00"
               },
               "duration": {
                  "type": "string",
                  "description": "Duration of the call in seconds",
                  "example": "30"
               },
               "status": {
                  "type": "string",
                  "description": "Status of the termination of the In-App call",
                  "example": "200"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of the request",
                  "example": "EUR"
               },
               "price": {
                  "type": "string",
                  "description": "Price of the request",
                  "example": "0.0040000"
               },
               "total_price": {
                  "type": "string",
                  "description": "The total price of the request",
                  "example": "0.0040000"
               },
               "id": {
                  "type": "string",
                  "description": "The unique id of the record in the report",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               }
            },
            "description": "In-App Voice"
         },
         "VoiceTtsRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "123g4567"
               },
               "from": {
                  "type": "string",
                  "description": "The number of the caller requested to be used by the Customer.",
                  "example": "12345678912"
               },
               "to": {
                  "type": "string",
                  "description": "The dialed number in a call. For an inbound call, this will be the virtual number.",
                  "example": "22345678912"
               },
               "status": {
                  "type": "string",
                  "description": "The final status of the TTS event",
                  "example": "completed"
               },
               "trace_id": {
                  "type": "string",
                  "description": "Trace",
                  "example": "trc-abcdef1234567890"
               },
               "premium": {
                  "type": "string",
                  "description": "<strong>DEPRECATED</strong> Premium/standard",
                  "example": "true",
                  "deprecated": true
               },
               "language": {
                  "type": "string",
                  "description": "BCP-47 language code",
                  "example": "id-ID"
               },
               "style": {
                  "type": "string",
                  "description": "Voice style index",
                  "example": "0"
               },
               "length": {
                  "type": "string",
                  "description": "Message length (in characters)",
                  "example": "12"
               },
               "size": {
                  "type": "string",
                  "description": "Audio file size in bytes",
                  "example": "52480"
               },
               "start_time": {
                  "type": "string",
                  "description": "Date and time, when TTS event started. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-07T14:22:08+00:00"
               },
               "end_time": {
                  "type": "string",
                  "description": "Date and time, when TTS event ended. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-07T14:22:08+00:00"
               },
               "duration": {
                  "type": "string",
                  "description": "Duration of the TTS event in seconds",
                  "example": "0"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of the call",
                  "example": "EUR"
               },
               "price": {
                  "type": "string",
                  "description": "Price per unit",
                  "example": "0.005"
               },
               "total_price": {
                  "type": "string",
                  "description": "Total price of the TTS event",
                  "example": "0.005"
               },
               "tts_type": {
                  "type": "string",
                  "description": "Indicates the voice quality used for the Voice TTS event. Can be one of standard, premium, or premier.",
                  "enum": [
                     "standard",
                     "premium",
                     "premier"
                  ],
                  "example": "standard"
               },
               "creation_date": {
                  "type": "string",
                  "description": "Timestamp of this UDR creation",
                  "example": "2024-02-07T14:22:08+00:00"
               },
               "id": {
                  "type": "string",
                  "description": "The unique id of the record in the report",
                  "example": "ebbe1234-da56-78a9-9d5c-3da9787c5720"
               }
            },
            "description": "Voice TTS"
         },
         "VoiceAsrRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "123g4567"
               },
               "call_id": {
                  "type": "string",
                  "description": "UUID of the call request",
                  "example": "dfc0c915f38ae6701d7d114cde2556b1-1"
               },
               "direction": {
                  "type": "string",
                  "description": "Direction of the call, either inbound or outbound. One of: inbound or outbound",
                  "example": "outbound"
               },
               "from": {
                  "type": "string",
                  "description": "The number of the caller requested to be used by the Customer.",
                  "example": "12345678912"
               },
               "to": {
                  "type": "string",
                  "description": "The dialed number in a call. For an inbound call, this will be the virtual number.",
                  "example": "12345678912"
               },
               "call_date_start": {
                  "type": "string",
                  "description": "ASR start time (explanation from voice team). Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-07T14:22:08+00:00"
               },
               "date_start": {
                  "type": "string",
                  "description": "Event record start (creation) time. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-07T14:22:08+00:00"
               },
               "date_end": {
                  "type": "string",
                  "description": "Event end time. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-07T14:22:08+00:00"
               },
               "duration": {
                  "type": "string",
                  "description": "Duration of call",
                  "example": "6"
               },
               "status": {
                  "type": "string",
                  "description": "Call status",
                  "example": "ok"
               },
               "status_description": {
                  "type": "string",
                  "description": "Call status description",
                  "example": "ERR1: Failed to analyze audio"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of the ASR event",
                  "example": "EUR"
               },
               "price": {
                  "type": "string",
                  "description": "Price of the ASR event",
                  "example": "0.018662"
               },
               "total_price": {
                  "type": "string",
                  "description": "Total price of the ASR event",
                  "example": "0.018662"
               },
               "asr_type": {
                  "type": "string",
                  "description": "Indicates the quality of the ASR service applied to the event. Can be one of standard or premier.",
                  "enum": [
                     "standard",
                     "premier"
                  ],
                  "example": "standard"
               },
               "id": {
                  "type": "string",
                  "description": "The unique id of the record in the report",
                  "example": "ebbe1234-da56-78a9-9d5c-3da9787c5720"
               }
            },
            "description": "Voice ASR"
         },
         "VoiceWebSocketRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "123g4567"
               },
               "call_id": {
                  "type": "string",
                  "description": "UUID of the call request",
                  "example": "dfc0c915f38ae6701d7d114cde2556b1-1"
               },
               "date_start": {
                  "type": "string",
                  "description": "Event start time. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-07T14:22:08+00:00"
               },
               "date_end": {
                  "type": "string",
                  "description": "Event end time. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-07T14:22:08+00:00"
               },
               "duration": {
                  "type": "string",
                  "description": "Duration of event",
                  "example": "30"
               },
               "status": {
                  "type": "string",
                  "description": "Status of event",
                  "example": "completed"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of the ASR event",
                  "example": "EUR"
               },
               "price": {
                  "type": "string",
                  "description": "Price of the ASR event",
                  "example": "0.005"
               },
               "total_price": {
                  "type": "string",
                  "description": "Total price of the ASR event",
                  "example": "0.015"
               },
               "id": {
                  "type": "string",
                  "description": "The unique id of the record in the report",
                  "example": "ebbe1234-da56-78a9-9d5c-3da9787c5720"
               }
            },
            "description": "Voice WebSocket Call"
         },
         "VoiceFailedRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "123g4567"
               },
               "call_id": {
                  "type": "string",
                  "description": "UUID of the call request",
                  "example": "dfc0c915f38ae6701d7d114cde2556b1-1"
               },
               "direction": {
                  "type": "string",
                  "description": "Direction of the call, either `inbound` or `outbound`.",
                  "example": "outbound"
               },
               "from": {
                  "type": "string",
                  "description": "The number of the caller",
                  "example": "12345678912"
               },
               "to": {
                  "type": "string",
                  "description": "The dialed number in a call. For an inbound call, this will be the virtual number.",
                  "example": "22345678912"
               },
               "network": {
                  "type": "string",
                  "description": "Network of the destination number",
                  "example": "12345 MX-FIXED"
               },
               "network_name": {
                  "type": "string",
                  "description": "Name of the network used to send the call request",
                  "example": "Airtel Nigeria"
               },
               "country": {
                  "type": "string",
                  "description": "Country where the call request was sent",
                  "example": "PL"
               },
               "country_name": {
                  "type": "string",
                  "description": "Country name where the call request was sent",
                  "example": "Poland"
               },
               "date_start": {
                  "type": "string",
                  "description": "Date of the start of the call. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-07T14:22:08+00:00"
               },
               "date_end": {
                  "type": "string",
                  "description": "Date of the end of the call. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-07T14:22:08+00:00"
               },
               "status": {
                  "type": "string",
                  "description": "The status of the call. Would be always `FAILED`",
                  "example": "FAILED"
               },
               "status_code": {
                  "type": "string",
                  "description": "The SIP/HTTP response code received.",
                  "example": "480"
               },
               "status_description": {
                  "type": "string",
                  "description": "status_description field in the voice reports should contain values from d.reason field. Example: 486, 487, 480, 404, 502",
                  "example": "Callee currently unavailable"
               },
               "id": {
                  "type": "string",
                  "description": "The unique id of the record in the report",
                  "example": "ebbe1234-da56-78a9-9d5c-3da9787c5720"
               }
            },
            "description": "Voice Failed"
         },
         "VoiceAmdRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "nexmo-vapi-us-east-1"
               },
               "start_time": {
                  "type": "string",
                  "description": "Detection start time. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-3-22 11:24:05+00:00"
               },
               "end_time": {
                  "type": "string",
                  "description": "Detection end time. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-03-22T11:24:19+00:00"
               },
               "amd_result_sent": {
                  "type": "boolean",
                  "description": "If true, AMD events were sent to a requester. Possible values: true, false",
                  "example": false
               },
               "amd_detection_result": {
                  "type": "string",
                  "description": "Result of detection. Either human or machine",
                  "example": "MACHINE"
               },
               "amd_beep_detection_result": {
                  "type": "boolean",
                  "description": "If true, beep was detected. Otherwise false",
                  "example": true
               },
               "amd_user_defined_beep_timeout": {
                  "type": "integer",
                  "description": "Maximum time in seconds Vonage should wait for a machine beep to be detected. Value of a beep_timeout defined by user, when requesting the Voice API. Can be between 30 and 120.",
                  "example": 30
               },
               "amd_user_defined_behavior": {
                  "type": "string",
                  "description": "The value passed to behavior parameter when requesting the Voice API. Possible values: hangup, continue",
                  "example": "continue"
               },
               "amd_user_defined_mode": {
                  "type": "string",
                  "description": "The value passed to mode parameter when requesting the Voice API. Possible values: default, detect, detect_beep",
                  "example": "default"
               },
               "total_price": {
                  "type": "string",
                  "description": "Total price of the AMD feature",
                  "example": "0.018662"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the total_price",
                  "example": "EUR"
               },
               "call_id": {
                  "type": "string",
                  "description": "UUID of the call request",
                  "example": "dfc0c915f38ae6701d7d114cde2556b1-1"
               },
               "id": {
                  "type": "string",
                  "description": "The unique id of the record in the report",
                  "example": "ebbe1234-da56-78a9-9d5c-3da9787c5720"
               }
            },
            "description": "Voice AMD (Advanced Machine Detection)"
         },
         "MessagesOutboundRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "123g4567"
               },
               "message_id": {
                  "type": "string",
                  "description": "Vonage's unique identifier for this message",
                  "example": "a1aa2bcd-6a96-4a9b-bd9d-a72477238b22"
               },
               "client_ref": {
                  "type": "string",
                  "description": "If client-ref parameter were used by the Customer while calling Messages API, the value with Client's own reference will be shown in this field.",
                  "example": "my-personal-reference"
               },
               "direction": {
                  "type": "string",
                  "description": "Direction of the message, either `inbound` or `outbound`.",
                  "example": "outbound"
               },
               "from": {
                  "type": "string",
                  "description": "The phone number/account that this inbound message was sent from.",
                  "example": "447700900001"
               },
               "to": {
                  "type": "string",
                  "description": "The phone number/account that the message was sent to.",
                  "example": "447700900000"
               },
               "message_body": {
                  "type": "string",
                  "description": "Body of the message sent. Only present if include_message parameter is set to true",
                  "example": "Hello World!"
               },
               "country": {
                  "type": "string",
                  "description": "The ISO two letter country code. For whatsapp provider available only for messages with status delivered/read. Not available for `viber` and `messenger` provider. For RCS Conversational pricing model (non-US), data will be available with a delay of up to 48h.",
                  "example": "ES"
               },
               "country_name": {
                  "type": "string",
                  "description": "Country name of the country code. Might be UNKNOWN. For RCS Conversational pricing model (non-US), data will be available with a delay of up to 48h.",
                  "example": "Spain"
               },
               "provider": {
                  "type": "string",
                  "description": "Provider of the message. Can be one of: `whatsapp`, `sms`, `mms`, `messenger`, `viber_service_msg`, `instagram`, `rcs`, `email`",
                  "example": "whatsapp"
               },
               "provider_error_code": {
                  "type": "string",
                  "description": "An error code sent to Vonage from the messaging channel's Provider as per availability",
                  "example": "1020"
               },
               "network": {
                  "type": "string",
                  "description": "The network code of the destination phone number. Relevant and available for provider = `sms` or `mms`. For RCS Conversational pricing model (non-US), data will be available with a delay of up to 48h.",
                  "example": "12345 MX-FIXED"
               },
               "network_name": {
                  "type": "string",
                  "description": "The name of the network code. Relevant and available for provider = `sms` or `mms`. For RCS Conversational pricing model (non-US), data will be available with a delay of up to 48h.",
                  "example": "Airtel Nigeria"
               },
               "session_type": {
                  "type": "string",
                  "description": "The WhatsApp conversation type. Examples: `authentication`, `utility`, `marketing`, `referral_conversion` or `service`. See details on Developer portal. Available only for Whatsapp messages with status `delivered` or `read`.",
                  "example": "marketing"
               },
               "session_id": {
                  "type": "string",
                  "description": "Unique conversation ID for whatsapp. {This may be used or other messaging channels in the future such as Viber} Available only for Whatsapp messages with status `delivered` or `read`.",
                  "example": "12345ef678ce4595751dda993ef59c7e"
               },
               "date_received": {
                  "type": "string",
                  "description": "Date when Vonage received Message API request. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-02T13:50:00+00:00"
               },
               "date_finalized": {
                  "type": "string",
                  "description": "Date when the message reached its current state. The state `read` is not considered. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC. For RCS Conversational pricing model (non-US), data will be available with a delay of up to 48h.",
                  "example": "2024-02-02T13:50:00+00:00"
               },
               "latency": {
                  "type": "string",
                  "description": "Latency of the message request in ms calculated as the difference between date_received and date_finalized. For RCS Conversational pricing model (non-US), data will be available with a delay of up to 48h.",
                  "example": "67"
               },
               "status": {
                  "type": "string",
                  "description": "The state of message in the delivery process. The statuses are according to Messages API statuses. For RCS Conversational pricing model (non-US), data will be available with a delay of up to 48h.",
                  "example": "delivered"
               },
               "error_code": {
                  "type": "string",
                  "description": "Error code of the message, available if status is `rejected`. For RCS Conversational pricing model (non-US), data will be available with a delay of up to 48h.",
                  "example": "1020"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of the message request. For RCS Conversational pricing model (non-US), data will be available with a delay of up to 48h.",
                  "example": "EUR"
               },
               "estimated_price": {
                  "type": "string",
                  "description": "Price that was estimated before any delivery receipt (DR) was received. Not available for `whatsapp` provider.",
                  "example": "0.036"
               },
               "total_price": {
                  "type": "string",
                  "description": "Price calculated after delivery receipt was received, so all the pricing rules are applied. For `WhatsApp` provider it includes both Vonage and Meta fees. In a `conversation` based pricing model, the total price for the entire conversation will be displayed in the first message. Subsequent messages in a conversation will have zero price. In a `per-message-pricing` model, the total price will hold a price for each message as per the type of message. For RCS Conversational pricing model (non-US), the price will be available with a delay of up to 48h",
                  "example": "0.036"
               },
               "workflow_id": {
                  "type": "string",
                  "description": "Unique ID for the failover workflow.",
                  "example": "3TcNjgZvTgbJ41bJGMiHQxf7s6UPsKUEnkhyY"
               },
               "workflow_items_number": {
                  "type": "string",
                  "description": "Indicates the sequence of the messages sent (e.g. `1` for primary, `2` for the first failover).",
                  "example": "1"
               },
               "workflow_items_total": {
                  "type": "string",
                  "description": "Total number of messages attempted in this workflow.",
                  "example": "2"
               },
               "pricing_model": {
                  "type": "string",
                  "description": "Vonage pricing model applied.",
                  "example": "single message"
               },
               "pricing_type": {
                  "type": "string",
                  "description": "Provider's pricing type. Available for WhatsApp only and showing Meta pricing type.",
                  "example": "standard"
               },
               "id": {
                  "type": "string",
                  "description": "The UUID of the record in the report",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "tier_volume": {
                  "$ref": "#/components/schemas/TierVolume"
               }
            },
            "description": "Messages (Outbound)"
         },
         "MessagesInboundRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "123g4567"
               },
               "message_id": {
                  "type": "string",
                  "description": "Vonage's unique identifier for this message",
                  "example": "a1aa2bcd-6a96-4a9b-bd9d-a72477238b22"
               },
               "direction": {
                  "type": "string",
                  "description": "Direction of the message, either `inbound` or `outbound`.",
                  "example": "inbound"
               },
               "from": {
                  "type": "string",
                  "description": "The phone number/account that this inbound message was sent from.",
                  "example": "12345678900"
               },
               "to": {
                  "type": "string",
                  "description": "The phone number/account that the message was sent to.",
                  "example": "12345678900"
               },
               "message_body": {
                  "type": "string",
                  "description": "Body of the message sent. Only present if include_message parameter is set to true.",
                  "example": "Hello World!"
               },
               "provider": {
                  "type": "string",
                  "description": "Provider of the message. Can be one of: `whatsapp`, `sms`, `mms`, `messenger`, `viber_service_msg`, `instagram`, `rcs`, `email` {new providers are added as soon as they are launched}",
                  "example": "whatsapp"
               },
               "network": {
                  "type": "string",
                  "description": "The network code of the originating phone number. Relevant and available for provider = `sms` or `mms`",
                  "example": "12345 MX-FIXED"
               },
               "network_name": {
                  "type": "string",
                  "description": "The name of the network code. Relevant and available for provider = `sms` or `mms`",
                  "example": "Airtel Nigeria"
               },
               "date_received": {
                  "type": "string",
                  "description": "Date when Vonage received a message from a Messaging provider. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-07T14:22:08+00:00"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency used for the total_price. For RCS Conversational pricing model (non-US), data will be available with a delay of up to 48h.",
                  "example": "EUR"
               },
               "total_price": {
                  "type": "string",
                  "description": "The total price for receiving the inbound message. For RCS Conversational pricing model (non-US), the price will be available with a delay of up to 48h.",
                  "example": "0.07998"
               },
               "id": {
                  "type": "string",
                  "description": "The unique id of the record in the report",
                  "example": "a1aa2bcd-6a96-4a9b-bd9d-a72477238b22"
               },
               "tier_volume": {
                  "$ref": "#/components/schemas/TierVolume"
               }
            },
            "description": "Messages (Inbound)"
         },
         "VerifyRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "123g4567"
               },
               "request_id": {
                  "type": "string",
                  "description": "Id of the verify request",
                  "example": "8e67d726ca21409aa38f4e07e73503aa"
               },
               "from": {
                  "type": "string",
                  "description": "An 11-character alphanumeric string that represents the identity of the sender of the verification request. Depending on the destination of the phone number you are sending the verification SMS to, restrictions might apply.",
                  "example": "Vinted"
               },
               "to": {
                  "type": "string",
                  "description": "The mobile or landline phone number to verify",
                  "example": "447700900000"
               },
               "locale": {
                  "type": "string",
                  "description": "Language used in the communication through the channels",
                  "example": "fr-fr"
               },
               "number_type": {
                  "type": "string",
                  "description": "The type of the number",
                  "example": "MOBILE"
               },
               "network": {
                  "type": "string",
                  "description": "The network code",
                  "example": "20820"
               },
               "network_name": {
                  "type": "string",
                  "description": "The name of the network code",
                  "example": "Bouygues Telecom"
               },
               "country": {
                  "type": "string",
                  "description": "The ISO two letter country code to which the network code belongs",
                  "example": "FR"
               },
               "country_name": {
                  "type": "string",
                  "description": "Country name of the country code",
                  "example": "France"
               },
               "date_received": {
                  "type": "string",
                  "description": "Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2025-07-18T09:51:08+00:00"
               },
               "date_finalized": {
                  "type": "string",
                  "description": "Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2025-07-18T09:51:16+00:00"
               },
               "first_event_date": {
                  "type": "string",
                  "description": "Date and time when the first code was sent. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2025-07-18T09:51:08+00:00"
               },
               "last_event_date": {
                  "type": "string",
                  "description": "Date and time when the last code was sent. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2025-07-18T09:51:08+00:00"
               },
               "status": {
                  "type": "string",
                  "description": "Indicates the outcome of the verify request",
                  "example": "SUCCESS"
               },
               "sms_event_count": {
                  "type": "string",
                  "description": "Number of SMS sent within the verification workflow",
                  "example": "1"
               },
               "tts_event_count": {
                  "type": "string",
                  "description": "Number of Voice TTS events done within the verification workflow",
                  "example": "0"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of the request. Always returns an empty string.",
                  "example": ""
               },
               "pricing_model": {
                  "type": "string",
                  "description": "Pricing model applied",
                  "example": "0"
               },
               "price": {
                  "type": "string",
                  "description": "Price",
                  "example": "0.06800000"
               },
               "estimated_price": {
                  "type": "string",
                  "description": "Estimated price",
                  "example": "0"
               },
               "sms_price": {
                  "type": "string",
                  "description": "Price of SMS sent",
                  "example": "0"
               },
               "tts_price": {
                  "type": "string",
                  "description": "Price of Voice TTS calls made",
                  "example": "0"
               },
               "id": {
                  "type": "string",
                  "description": "same as request_id, unique record's key",
                  "example": "8e67d726ca21409aa38f4e07e73503aa"
               }
            },
            "description": "Verify v1"
         },
         "VerifyV2Record": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "123g4567"
               },
               "request_id": {
                  "type": "string",
                  "description": "Vonage's unique identifier of the Verify API request",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "parent_request_id": {
                  "type": "string",
                  "description": "The correlation ID between Verification request (record with channel = `v2`) and Email/Silent Authentication verification event (record with channel = 'email' or 'silent_auth') Available for records with 'email' or 'silent_auth' channel.",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "channel": {
                  "type": "string",
                  "description": "Channel used for verification in Verify API request. Possible values: `v2`, `email`, `silent_auth`",
                  "example": "v2"
               },
               "to": {
                  "type": "string",
                  "description": "Phone number or email address verified with Verify API",
                  "example": "123456789000"
               },
               "locale": {
                  "type": "string",
                  "description": "Language in which PIN was delivered. Not available for 'email' or 'silent_auth' channel.",
                  "example": "en-gb"
               },
               "network": {
                  "type": "string",
                  "description": "MCC/MNC network code of the phone number's network. Not applicable for `email` channel.",
                  "example": "23420"
               },
               "network_name": {
                  "type": "string",
                  "description": "The name of the network code. Not applicable for `email` channel.",
                  "example": "Hutchison 3G Ltd"
               },
               "country": {
                  "type": "string",
                  "description": "Country of the phone number verified with Verify API. Not applicable for `email` channel.",
                  "example": "GB"
               },
               "status": {
                  "type": "string",
                  "description": "Status of the request.",
                  "example": "completed"
               },
               "client_ref": {
                  "type": "string",
                  "description": "Contains the client reference given in the original Verify request in `client_ref` parameter",
                  "example": "my_custom_ref"
               },
               "date_received": {
                  "type": "string",
                  "description": "The date and time the verification request was received by Vonage. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-02T13:50:00+00:00"
               },
               "sms_event_count": {
                  "type": "string",
                  "description": "Number of times SMS was used for PIN delivery. Not available for 'email' or 'silent_auth' channel.",
                  "example": "1"
               },
               "tts_event_count": {
                  "type": "string",
                  "description": "Number of times Voice TTS was used for PIN delivery. Not available for 'email' or 'silent_auth' channel.",
                  "example": "0"
               },
               "whatsapp_event_count": {
                  "type": "string",
                  "description": "Number of times Whatsapp was used for PIN delivery. Not available for 'email' or 'silent_auth' channel.",
                  "example": "0"
               },
               "email_event_count": {
                  "type": "string",
                  "description": "Number of times email channel was used. Not available for 'email' or 'silent_auth' channel.",
                  "example": "0"
               },
               "silentauth_event_count": {
                  "type": "string",
                  "description": "Number of times Silent Authentication was used for PIN verification. Not available for 'email' or 'silent_auth' channel.",
                  "example": "0"
               },
               "rcs_event_count": {
                  "type": "string",
                  "description": "Number of times RCS was used for PIN delivery. Not available for 'email' or 'silent_auth' channel.",
                  "example": "0"
               },
               "if_fraud_check": {
                  "type": "string",
                  "description": "Parameter used to bypass block. Either `TRUE` or `FALSE`",
                  "example": "FALSE"
               },
               "pin_length": {
                  "type": "string",
                  "description": "Length of the PIN used in the request",
                  "example": "4"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of a Verify request",
                  "example": "EUR"
               },
               "total_price": {
                  "type": "string",
                  "description": "Price of a Verify request",
                  "example": "0.06800000"
               },
               "id": {
                  "type": "string",
                  "description": "unique id of the record",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               }
            },
            "description": "Verify v2"
         },
         "NumberInsightRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "123g4567"
               },
               "request_id": {
                  "type": "string",
                  "description": "record id",
                  "example": "883a2b66-77a9-48c3-9948-7f01848f8cbd"
               },
               "product_type": {
                  "type": "string",
                  "description": "Internal name of product",
                  "example": "PRODUCT_HLR_LOOKUP_FORMAT"
               },
               "number": {
                  "type": "string",
                  "description": "Phone number looked up",
                  "example": "447700900000"
               },
               "date_received": {
                  "type": "string",
                  "description": "event time",
                  "example": "2025-07-18T10:14:47+00:00"
               },
               "status": {
                  "type": "string",
                  "description": "Status",
                  "example": "Success"
               },
               "response_code": {
                  "type": "string",
                  "description": "Response code from event",
                  "example": "0"
               },
               "network": {
                  "type": "string",
                  "description": "The network code",
                  "example": "23420"
               },
               "network_name": {
                  "type": "string",
                  "description": "The name of the network code",
                  "example": "Hutchison 3G Ltd"
               },
               "network_type": {
                  "type": "string",
                  "description": "network type used",
                  "example": "mobile"
               },
               "country": {
                  "type": "string",
                  "description": "The ISO two letter country code to which the network code belongs",
                  "example": "NZ"
               },
               "country_name": {
                  "type": "string",
                  "description": "Country name of the country code",
                  "example": "New Zealand"
               },
               "valid": {
                  "type": "string",
                  "description": "Whether the number is valid or not",
                  "example": "valid"
               },
               "ported": {
                  "type": "string",
                  "description": "Porting status",
                  "example": "not_ported"
               },
               "reachable": {
                  "type": "string",
                  "description": "Looked up number can be `reached`",
                  "example": "present"
               },
               "first_name": {
                  "type": "string",
                  "description": "Looked up first name",
                  "example": "unknown"
               },
               "last_name": {
                  "type": "string",
                  "description": "Looked up last name",
                  "example": "unknown"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of the request. Always returns an empty string.",
                  "example": ""
               },
               "total_price": {
                  "type": "string",
                  "description": "Price to customer",
                  "example": "0.06800000"
               },
               "id": {
                  "type": "string",
                  "description": "record id",
                  "example": "8e67d726ca21409aa38f4e07e73503aa"
               }
            },
            "description": "Number Insight v1"
         },
         "NumberInsightV2Record": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer. Might be a main account id or a sub-account",
                  "example": "12aa3456"
               },
               "request_id": {
                  "type": "string",
                  "description": "Vonage's unique identifier of the Number Insight API request",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "request_type": {
                  "type": "string",
                  "description": "The type of the Number Insight request. Possible values: IS_FRAUDSCORE, IS_SIMSWAP",
                  "example": "IS_FRAUDSCORE"
               },
               "date_received": {
                  "type": "string",
                  "description": "Date and time when the NI request was processed. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-02T13:50:00+00:00"
               },
               "status": {
                  "type": "string",
                  "description": "The status of an NI request. Possible values: SUCCESS, FAIL",
                  "example": "SUCCESS"
               },
               "response_code": {
                  "type": "string",
                  "description": "Request status code",
                  "example": "200"
               },
               "response_description": {
                  "type": "string",
                  "description": "Request status description",
                  "example": "OK"
               },
               "network_type": {
                  "type": "string",
                  "description": "Type of the phone, available only for request_type = `IS_FRAUDSCORE`. Examples: MOBILE, VOIP, INVALID, FIXED_LINE, PREPAID, RESTRICTED_PREMIUM",
                  "example": "MOBILE"
               },
               "network_name": {
                  "type": "string",
                  "description": "Network name or network id. Might be empty.",
                  "example": "72406 Telefonica UK Limited"
               },
               "risk": {
                  "type": "string",
                  "description": "Mapping of risk score to a verbose description. Relevant for request_type = `IS_FRAUDSCORE` only. Possible values: low, medium, high",
                  "example": "high"
               },
               "risk_score": {
                  "type": "string",
                  "description": "Score derived from evaluating fraud-related data associated with the phone number. risk_score ranges from 0-100. Relevant for request_type = `IS_FRAUDSCORE` only.",
                  "example": "90"
               },
               "swapped": {
                  "type": "string",
                  "description": "true if the sim was swapped in the last 7 days, false otherwise. Available only if the sim swap check succeeds.",
                  "example": "true"
               },
               "no_sim_change_period": {
                  "type": "string",
                  "description": "Time lapsed from the last time sim was swapped. Format: PT{number of hours since swap}H",
                  "example": "PT240H"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of the NI request. Information from billing/vRater.",
                  "example": "EUR"
               },
               "total_price": {
                  "type": "string",
                  "description": "The price of the NI request. Information from billing/vRater.",
                  "example": "0.0212"
               },
               "id": {
                  "type": "string",
                  "description": "The unique id of the record",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               }
            },
            "description": "Number Insight v2"
         },
         "ConversationsEventRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer",
                  "example": "12aa3456"
               },
               "request_id": {
                  "type": "string",
                  "description": "Request id",
                  "example": "03d9e0e0-9a96-40f7-ab20-2b92a7f5a19f"
               },
               "application_id": {
                  "type": "string",
                  "description": "Id of the application used",
                  "example": "ab05efe3-0f00-4ac9-ad64-60825dxxxxxx"
               },
               "conversation_id": {
                  "type": "string",
                  "description": "Particular Conversation",
                  "example": "CON-d01afdc1-7f8c-49d8-9fc0-e92854xxxxx"
               },
               "user_id": {
                  "type": "string",
                  "description": "User id in the conversation",
                  "example": "USR-8e012e3c-703a-40cd-be03-74e57fcxxxxx"
               },
               "client_ref": {
                  "type": "string",
                  "description": "If client-ref parameter were used by the Customer",
                  "example": "my-client-ref"
               },
               "creation_date": {
                  "type": "string",
                  "description": "Date of event",
                  "example": "2025-07-18T10:32:48+00:00"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of the request",
                  "example": "EUR"
               },
               "price": {
                  "type": "string",
                  "description": "Price of the request",
                  "example": "0.00072"
               },
               "total_price": {
                  "type": "string",
                  "description": "The total price of the request",
                  "example": "0.00072"
               },
               "id": {
                  "type": "string",
                  "description": "The unique id of the record in the report",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               }
            }
         },
         "ConversationsMessageRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) of the Customer.",
                  "example": "nexmo-cs-us-west-2"
               },
               "trace_id": {
                  "type": "string",
                  "description": "Trace",
                  "example": "03d9e0e0-9a96-40f7-ab20-2b92a7f5a19f"
               },
               "application_id": {
                  "type": "string",
                  "description": "Id of the application used",
                  "example": "ab05efe3-0f00-4ac9-ad64-60825dxxxxxx"
               },
               "conversation_id": {
                  "type": "string",
                  "description": "particular Conversation",
                  "example": "CON-d01afdc1-7f8c-49d8-9fc0-e92854xxxxx"
               },
               "other_ids": {
                  "type": "string",
                  "description": "Other related ids for the event captured in this json fragment",
                  "example": "{requestId=b06851eb-b443-488f-ad03-6ad96b2xxxxx, conversationEventId=5, messageSequenceNumber=1}"
               },
               "from_member_id": {
                  "type": "string",
                  "description": "Member id",
                  "example": "MEM-177c3d88-217a-4346-8c06-92db696xxxxx"
               },
               "from_user_id": {
                  "type": "string",
                  "description": "User id",
                  "example": "USR-78c7bf8d-0c6b-4719-9396-8eb14f3xxxxx"
               },
               "from_channel": {
                  "type": "string",
                  "description": "Channel",
                  "example": "app"
               },
               "from_message_id": {
                  "type": "string",
                  "description": "Message id",
                  "example": "5"
               },
               "client_ref": {
                  "type": "string",
                  "description": "if client-ref parameter were used by the Customer",
                  "example": "c0b75100"
               },
               "creation_date": {
                  "type": "string",
                  "description": "Date of event",
                  "example": "2025-07-18T10:32:48+00:00"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of the request",
                  "example": "EUR"
               },
               "price": {
                  "type": "string",
                  "description": "Price of the request",
                  "example": "0.00072"
               },
               "total_price": {
                  "type": "string",
                  "description": "The total price of the request",
                  "example": "0.00072"
               },
               "id": {
                  "type": "string",
                  "description": "The unique id of the record in the report",
                  "example": "c0b75100-1a98-454f-b1d8-ac930cfaaaaa"
               }
            },
            "description": "Conversations Message"
         },
         "ReportsUsageRecord": {
            "type": "object",
            "properties": {
               "acc": {
                  "type": "string",
                  "description": "Account authenticated when making Reports API call. Not necessarily the same as account_id for which reports data is requested.",
                  "example": "12aa3456"
               },
               "product_type": {
                  "type": "string",
                  "description": "Report's API product. Always `reports`.",
                  "example": "reports"
               },
               "date_received": {
                  "type": "string",
                  "description": "Date when report was requested by Customer by calling Reports API. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-02T13:50:00+00:00"
               },
               "date_started": {
                  "type": "string",
                  "description": "Date when Reports API started processing the request. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-02T13:50:00+00:00"
               },
               "date_finished": {
                  "type": "string",
                  "description": "Date when Reports API finished processing the request. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2024-02-02T13:50:00+00:00"
               },
               "status": {
                  "type": "string",
                  "description": "Status of the report's request",
                  "example": "SUCCESS"
               },
               "account_id": {
                  "type": "string",
                  "description": "The account ID (API key) for which the report data is generated.",
                  "example": "12aa3456"
               },
               "master_account_id": {
                  "type": "string",
                  "description": "Master account ID of requested account. If Master account is not available, the field will be equal to account_id.",
                  "example": "88aa3456"
               },
               "is_charged": {
                  "type": "string",
                  "description": "Would be `TRUE` if the report request was charged, otherwise - `FALSE`",
                  "example": "TRUE"
               },
               "request_params": {
                  "$ref": "#/components/schemas/BaseRequestParams"
               },
               "job_type": {
                  "type": "string",
                  "description": "This is either sync or async Reports API request. Possible values: SYNC_JOB_FROM_ID, SYNC_JOB_FROM_DATES, ASYNC_JOB",
                  "example": "ASYNC_JOB"
               },
               "requested_product": {
                  "type": "string",
                  "description": "Product requested in the report.",
                  "example": "SMS"
               },
               "items_written": {
                  "type": "integer",
                  "description": "Number of CDRs/records returned in the report",
                  "example": 134
               },
               "price": {
                  "type": "number",
                  "description": "The price for the CDR in the report (individual record in the report)",
                  "example": 0.0004
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the price of the report",
                  "example": "EUR"
               },
               "total_price": {
                  "type": "number",
                  "description": "The total price for the whole report",
                  "example": 120
               },
               "id": {
                  "type": "string",
                  "description": "The unique id of the record in the report",
                  "example": "ab12345678c90-b1234-ba78-f1c3e400f28d"
               },
               "tier_volume": {
                  "$ref": "#/components/schemas/TierVolume"
               }
            },
            "description": "Reports Usage"
         },
         "NetworkApiEventRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "API key of the originating request",
                  "example": "03d9e0e0"
               },
               "application_id": {
                  "type": "string",
                  "description": "The Vonage API application ID. If application id is present will be populated",
                  "example": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab"
               },
               "record_creation_time": {
                  "type": "string",
                  "description": "Date and time in ISO 8601 of when the UDR was generated. This time is in UTC. Format: yyyy-MM-dd'T'HH:mm:ss.ff3Z",
                  "example": "2024-02-02T13:50:00+00:00"
               },
               "product_name": {
                  "type": "string",
                  "description": "Refers to exact product within Camara event-based bucket of products. Possible values: camara-device-status, camara-device-location, camara-number-verification, camara-sim-swap",
                  "example": "camara-sim-swap"
               },
               "status": {
                  "type": "string",
                  "description": "Status of the request. Possible values: SUCCESS, FAILED",
                  "example": "SUCCESS"
               },
               "network": {
                  "type": "string",
                  "description": "Code of the network associated with MSSIDN used in the request. Example: `12345`",
                  "example": "12345"
               },
               "country_code": {
                  "type": "string",
                  "description": "Code of the country of the MSISDN. Format: ISO 3166 2 character code. Example: `BR`",
                  "example": "BR"
               },
               "msisdn": {
                  "type": "string",
                  "description": "Phone number.",
                  "example": "447700900000"
               },
               "event_time": {
                  "type": "string",
                  "description": "The time of the event in UTC",
                  "example": "2024-02-02T13:50:00+00:00"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency of the total_price",
                  "example": "EUR"
               },
               "total_price": {
                  "type": "string",
                  "description": "The price of the event",
                  "example": "0.00500000"
               },
               "id": {
                  "type": "string",
                  "description": "Unique id of the UDR",
                  "example": "12345678-abcd-efgh-ijkl-901234567890"
               },
               "request_type": {
                  "type": "string",
                  "description": "Type of the request. Holds either `check` or `retrieve-date` for Sim Swap",
                  "example": "check"
               },
               "response_result": {
                  "type": "string",
                  "description": "value of the response taken from Camara API. (if redaction is applied, the whole d.responseInfo is redacted)",
                  "example": "true"
               },
               "request_session_id": {
                  "type": "string",
                  "description": "Refers to a Vonage Request id. Can be used to search for that particular log item/CDR",
                  "example": "vn-abcd1234efgh5678"
               },
               "product_path": {
                  "type": "string",
                  "description": "Indicates the product which initiates the call to this service.",
                  "example": "SimSwap"
               },
               "correlation_id": {
                  "type": "string",
                  "description": "Unique ID that is the same for all intermediate events associated with the same event.",
                  "example": "fedcba98-7654-3210-fedc-ba9876543210"
               }
            },
            "description": "Network API Event"
         },
         "VideoApiRecord": {
            "type": "object",
            "properties": {
               "account_id": {
                  "type": "string",
                  "description": "API key of the originating request",
                  "example": "123g4567"
               },
               "feature_name": {
                  "type": "string",
                  "description": "Video API features used. Can be one of: Video Session, Subscriber minutes, Archiving, Broadcasting, HLS, Experience composer, SIP_Interconnect, Audio_Connector, Live_Captions",
                  "example": "Video Session"
               },
               "session_id": {
                  "type": "string",
                  "description": "Id of the session, which represents the video room",
                  "example": "1_LEq_MdtdTrWOfAnId7l8ig-wTs_zs3GTmqn0w0cfPFkWw-rzW2u6FgSOegi0n7TyEMiA"
               },
               "meeting_id": {
                  "type": "string",
                  "description": "Id of the Segment, which represents the meeting within a session. Available for feature_name Video Session. Not available for other feature_names.",
                  "example": "04384913-bc1d-43df-a720-854b4d43f221"
               },
               "subscriber_id": {
                  "type": "string",
                  "description": "Id for the Video Subscriber, receiving video from a video publisher. Available for feature_name Subscriber minutes, SIP_Interconnect, Audio_Connector, Live_Captions. Not available for other feature_names.",
                  "example": "0fe7085f-0d5e-4b8f-999d-71d291f9b89f"
               },
               "archive_id": {
                  "type": "string",
                  "description": "Id of the recording/archiving instance within a session. Available for feature_name Archiving. Not available for other feature_names.",
                  "example": "0fe7085f-0d5e-4b8f-999d-71d291f9b89f"
               },
               "broadcast_id": {
                  "type": "string",
                  "description": "Id of the broadcast instance within a session. Available for feature_name Broadcasting. Not available for other feature_names.",
                  "example": "0fe7085f-0d5e-4b8f-999d-71d291f9b89f"
               },
               "hls_id": {
                  "type": "string",
                  "description": "Id of the HLS live streaming instance within a session. Available for feature_name HLS. Not available for other feature_names.",
                  "example": "0fe7085f-0d5e-4b8f-999d-71d291f9b89f"
               },
               "composer_id": {
                  "type": "string",
                  "description": "Id of the Experience Composer instance within a session. Available for feature_name Experience composer. Not available for other feature_names.",
                  "example": "0fe7085f-0d5e-4b8f-999d-71d291f9b89f"
               },
               "application_id": {
                  "type": "string",
                  "description": "The Vonage API application ID",
                  "example": "8367cab5-6756-4324-a7ad-82821315efec"
               },
               "duration": {
                  "type": "string",
                  "description": "Duration of the Video event in seconds",
                  "example": "82"
               },
               "date_start": {
                  "type": "string",
                  "description": "The start date and time of a Video event. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2025-01-22T10:13:06+00:00"
               },
               "date_end": {
                  "type": "string",
                  "description": "The end date and time of a Video event. Format: yyyy-mm-ddThh:mm:ss±hh:mm Time zone: UTC",
                  "example": "2025-01-22T10:13:51+00:00"
               },
               "total_price": {
                  "type": "string",
                  "description": "The total price of the Video event",
                  "example": "0.0104"
               },
               "currency": {
                  "type": "string",
                  "description": "Currency associated with the total_price",
                  "example": "EUR"
               },
               "id": {
                  "type": "string",
                  "description": "Unique id of the UDR and unique id of the record in the Report",
                  "example": "5baf191a-67d0-415d-a743-aa0a1ed42c14"
               },
               "tier_volume": {
                  "type": "string",
                  "description": "Volume-based pricing tier. Present when the account is on a volume-based pricing plan.",
                  "example": "500"
               }
            },
            "description": "Video API"
         },
         "ErrorResponse": {
            "type": "object",
            "description": "Base error response following RFC 7807",
            "required": [
               "type",
               "title",
               "instance"
            ],
            "properties": {
               "type": {
                  "type": "string",
                  "description": "Link to error / remediation options",
                  "example": "https://developer.vonage.com/api-errors"
               },
               "title": {
                  "type": "string",
                  "description": "Generic error message",
                  "example": "An error occurred"
               },
               "detail": {
                  "type": "string",
                  "description": "Additional information about the error",
                  "example": "More details about what went wrong"
               },
               "instance": {
                  "type": "string",
                  "description": "Internal Trace ID",
                  "example": "bf0ca0bf927b3b52e3cb03217e1a1ddf"
               }
            }
         },
         "ErrorResponseWithInvalidParameters": {
            "allOf": [
               {
                  "$ref": "#/components/schemas/ErrorResponse"
               },
               {
                  "type": "object",
                  "required": [
                     "detail"
                  ],
                  "properties": {
                     "invalid_parameters": {
                        "type": "array",
                        "description": "List of invalid parameters",
                        "items": {
                           "type": "object",
                           "required": [
                              "name",
                              "reason"
                           ],
                           "properties": {
                              "name": {
                                 "type": "string",
                                 "description": "Name of the invalid parameter",
                                 "example": "name"
                              },
                              "reason": {
                                 "type": "string",
                                 "description": "Reason why the parameter is invalid",
                                 "example": "Must not be empty"
                              }
                           }
                        }
                     }
                  }
               }
            ]
         }
      },
      "securitySchemes": {
         "basicAuth": {
            "type": "http",
            "scheme": "basic"
         }
      },
      "headers": {
         "X-Request-Id": {
            "description": "A unique identifier for the request, used for tracking and debugging",
            "schema": {
               "type": "string",
               "format": "uuid",
               "example": "f94b4e56-604e-07e5-e5ad-5a7228618f81"
            }
         },
         "X-RateLimit-Limit": {
            "description": "Request limit per hour",
            "schema": {
               "type": "integer",
               "example": 30
            }
         },
         "X-RateLimit-Remaining": {
            "description": "Remaining requests",
            "schema": {
               "type": "integer",
               "example": 5
            }
         },
         "X-RateLimit-Reset": {
            "description": "Unix timestamp when limit resets",
            "schema": {
               "type": "integer",
               "example": 1769182705723
            }
         },
         "Retry-After": {
            "description": "Seconds until next request allowed",
            "schema": {
               "type": "integer",
               "example": 15
            }
         }
      }
   },
   "x-errors": {
      "invalid-request-parameters": {
         "description": "The provided payload is invalid",
         "resolution": "Modify your request to provide a valid payload",
         "link": {
            "text": "View API reference",
            "url": "/api/reports#create-report"
         }
      },
      "invalid-abort-operation": {
         "description": "The job is already in a terminated state such as `SUCCESS`, `TRUNCATED`, `FAILED` or `ABORTED`.",
         "resolution": "None",
         "link": {
            "text": "View API reference",
            "url": "/api/reports#cancel-report"
         }
      },
      "rate-limit": {
         "description": "The request was rate limited.",
         "resolution": "The Reports API supports 5 requests per second when used Asynchronously, and 10 requests per second  Synchronously. Slow down your request rate.\n"
      }
   }
}