{ "swagger": "2.0", "info": { "version": "v1", "title": "videoapi", "description": "The video APIs help you convert, encode, and transcode videos." }, "host": "api.cloudmersive.com", "schemes": [ "https" ], "paths": { "/video/convert/to/mp3": { "post": { "tags": [ "Audio" ], "summary": "Convert Audio File to MP3 format.", "description": "Automatically detect audio file format and convert it to MP3 format. Supports many input audio formats, including AAC, FLAC, M4A, MP2, MP3, OGG, WMA, and WAV. Uses 1 API call per 10 MB of file size. Also uses 1 API call per additional minute of processing time over 5 minutes, up to a maximum of 25 minutes total processing time. Maximum output file size is 50GB.", "operationId": "Audio_ConvertToMp3", "consumes": [ "multipart/form-data" ], "produces": [ "application/octet-stream" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of an audio file being used for conversion. Use this option for files larger than 2GB.", "required": false, "type": "string" }, { "name": "bitRate", "in": "header", "description": "Optional; Specify the desired bitrate of the converted audio file in kilobytes per second (kB/s). Value may be between 48 and 1,411. By default, the optimal bitrate will be chosen automatically.", "required": false, "type": "integer" } ], "responses": { "200": { "description": "OK", "schema": { "format": "byte", "type": "string" } } }, "security": [ { "Apikey": [] } ] } }, "/video/convert/to/m4a": { "post": { "tags": [ "Audio" ], "summary": "Convert Audio File to M4A format.", "description": "Automatically detect audio file format and convert it to M4A format. Supports many input audio formats, including AAC, FLAC, M4A, MP2, MP3, OGG, WMA, and WAV. Uses 1 API call per 10 MB of file size. Also uses 1 API call per additional minute of processing time over 5 minutes, up to a maximum of 25 minutes total processing time. Maximum output file size is 50GB.", "operationId": "Audio_ConvertToM4a", "consumes": [ "multipart/form-data" ], "produces": [ "application/octet-stream" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of an audio file being used for conversion. Use this option for files larger than 2GB.", "required": false, "type": "string" }, { "name": "bitRate", "in": "header", "description": "Optional; Specify the desired bitrate of the converted audio file in kilobytes per second (kB/s). Value may be between 48 and 1,411. By default, the optimal bitrate will be chosen automatically.", "required": false, "type": "integer" } ], "responses": { "200": { "description": "OK", "schema": { "format": "byte", "type": "string" } } }, "security": [ { "Apikey": [] } ] } }, "/video/convert/to/aac": { "post": { "tags": [ "Audio" ], "summary": "Convert Audio File to AAC format.", "description": "Automatically detect audio file format and convert it to AAC format. Supports many input audio formats, including AAC, FLAC, M4A, MP2, MP3, OGG, WMA, and WAV. Uses 1 API call per 10 MB of file size. Also uses 1 API call per additional minute of processing time over 5 minutes, up to a maximum of 25 minutes total processing time. Maximum output file size is 50GB.", "operationId": "Audio_ConvertToAac", "consumes": [ "multipart/form-data" ], "produces": [ "application/octet-stream" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of an audio file being used for conversion. Use this option for files larger than 2GB.", "required": false, "type": "string" }, { "name": "bitRate", "in": "header", "description": "Optional; Specify the desired bitrate of the converted audio file in kilobytes per second (kB/s). Value may be between 48 and 1,411. By default, the optimal bitrate will be chosen automatically.", "required": false, "type": "integer" } ], "responses": { "200": { "description": "OK", "schema": { "format": "byte", "type": "string" } } }, "security": [ { "Apikey": [] } ] } }, "/video/convert/to/wav": { "post": { "tags": [ "Audio" ], "summary": "Convert Audio File to WAV format.", "description": "Automatically detect audio file format and convert it to WAV format. Supports many input audio formats, including AAC, FLAC, M4A, MP2, MP3, OGG, WMA, and WAV. Uses 1 API call per 10 MB of file size. Also uses 1 API call per additional minute of processing time over 5 minutes, up to a maximum of 25 minutes total processing time. Maximum output file size is 50GB.", "operationId": "Audio_ConvertToWav", "consumes": [ "multipart/form-data" ], "produces": [ "application/octet-stream" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of an audio file being used for conversion. Use this option for files larger than 2GB.", "required": false, "type": "string" }, { "name": "sampleRate", "in": "header", "description": "Optional; Specify the desired sample rate of the converted audio file in kHz. Value may be between 8 and 96. Standard for audio CDs is 44.1, while DVD audio standard is 48. By default, the optimal sample rate will be chosen automatically.", "required": false, "type": "number" } ], "responses": { "200": { "description": "OK", "schema": { "format": "byte", "type": "string" } } }, "security": [ { "Apikey": [] } ] } }, "/video/convert/get-info": { "post": { "tags": [ "Video" ], "summary": "Get detailed information about a video or audio file", "description": "Retrieve detailed information about a video or audio file, including format, dimensions, file size, bit rate, duration and start time. Compatible with many formats, including: AVI, ASF, FLV, GIF, MP4, MPEG/MPG, Matroska/WEBM, MOV, AIFF, ASF, CAF, MP3, MP2, MP1, Ogg, OMG/OMA, and WAV. Uses 1 API call per 10 MB of file size.", "operationId": "Video_GetInfo", "consumes": [ "multipart/form-data" ], "produces": [ "application/json", "text/json", "application/xml", "text/xml" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of a video file being used for conversion. Use this option for files larger than 2GB.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/MediaInformation" } } }, "security": [ { "Apikey": [] } ] } }, "/video/convert/to/webm": { "post": { "tags": [ "Video" ], "summary": "Convert Video to WEBM format.", "description": "Automatically detect video file format and convert it to WEBM format. Supports many input video formats, including AVI, ASF, FLV, MP4, MPEG/MPG, Matroska/WEBM, 3G2, OGV, MKV, M4V and MOV. Uses 1 API call per 10 MB of file size. Also uses 1 API call per additional minute of processing time over 5 minutes, up to a maximum of 25 minutes total processing time. Maximum output file size is 50GB.", "operationId": "Video_ConvertToWebm", "consumes": [ "multipart/form-data" ], "produces": [ "application/octet-stream" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of a video file being used for conversion. Use this option for files larger than 2GB.", "required": false, "type": "string" }, { "name": "maxWidth", "in": "header", "description": "Optional; Maximum width of the output video, up to the original video width. Defaults to original video width.", "required": false, "type": "integer" }, { "name": "maxHeight", "in": "header", "description": "Optional; Maximum height of the output video, up to the original video width. Defaults to original video height.", "required": false, "type": "integer" }, { "name": "preserveAspectRatio", "in": "header", "description": "Optional; If false, the original video's aspect ratio will not be preserved, allowing customization of the aspect ratio using maxWidth and maxHeight, potentially skewing the video. Default is true.", "required": false, "type": "boolean" }, { "name": "frameRate", "in": "header", "description": "Optional; Specify the frame rate of the output video. Defaults to original video frame rate.", "required": false, "type": "integer" }, { "name": "quality", "in": "header", "description": "Optional; Specify the quality of the output video, where 100 is lossless and 1 is the lowest possible quality with highest compression. Default is 50.", "required": false, "type": "integer" } ], "responses": { "200": { "description": "OK", "schema": { "format": "byte", "type": "string" } } }, "security": [ { "Apikey": [] } ] } }, "/video/convert/to/mov": { "post": { "tags": [ "Video" ], "summary": "Convert Video to MOV format.", "description": "Automatically detect video file format and convert it to MOV format. Supports many input video formats, including AVI, ASF, FLV, MP4, MPEG/MPG, Matroska/WEBM, 3G2, OGV, MKV, M4V and MOV. Uses 1 API call per 10 MB of file size. Also uses 1 API call per additional minute of processing time over 5 minutes, up to a maximum of 25 minutes total processing time. Maximum output file size is 50GB.", "operationId": "Video_ConvertToMov", "consumes": [ "multipart/form-data" ], "produces": [ "application/octet-stream" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of a video file being used for conversion. Use this option for files larger than 2GB.", "required": false, "type": "string" }, { "name": "maxWidth", "in": "header", "description": "Optional; Maximum width of the output video, up to the original video width. Defaults to original video width.", "required": false, "type": "integer" }, { "name": "maxHeight", "in": "header", "description": "Optional; Maximum height of the output video, up to the original video width. Defaults to original video height.", "required": false, "type": "integer" }, { "name": "preserveAspectRatio", "in": "header", "description": "Optional; If false, the original video's aspect ratio will not be preserved, allowing customization of the aspect ratio using maxWidth and maxHeight, potentially skewing the video. Default is true.", "required": false, "type": "boolean" }, { "name": "frameRate", "in": "header", "description": "Optional; Specify the frame rate of the output video. Defaults to original video frame rate.", "required": false, "type": "integer" }, { "name": "quality", "in": "header", "description": "Optional; Specify the quality of the output video, where 100 is lossless and 1 is the lowest possible quality with highest compression. Default is 50.", "required": false, "type": "integer" } ], "responses": { "200": { "description": "OK", "schema": { "format": "byte", "type": "string" } } }, "security": [ { "Apikey": [] } ] } }, "/video/convert/to/mp4": { "post": { "tags": [ "Video" ], "summary": "Convert Video to MP4 format.", "description": "Automatically detect video file format and convert it to MP4 format. Supports many input video formats, including AVI, ASF, FLV, MP4, MPEG/MPG, Matroska/WEBM, 3G2, OGV, MKV, M4V and MOV. Uses 1 API call per 10 MB of file size. Also uses 1 API call per additional minute of processing time over 5 minutes, up to a maximum of 25 minutes total processing time. Maximum output file size is 50GB.", "operationId": "Video_ConvertToMp4", "consumes": [ "multipart/form-data" ], "produces": [ "application/octet-stream" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of a video file being used for conversion. Use this option for files larger than 2GB.", "required": false, "type": "string" }, { "name": "maxWidth", "in": "header", "description": "Optional; Maximum width of the output video, up to the original video width. Defaults to original video width.", "required": false, "type": "integer" }, { "name": "maxHeight", "in": "header", "description": "Optional; Maximum height of the output video, up to the original video width. Defaults to original video height.", "required": false, "type": "integer" }, { "name": "preserveAspectRatio", "in": "header", "description": "Optional; If false, the original video's aspect ratio will not be preserved, allowing customization of the aspect ratio using maxWidth and maxHeight, potentially skewing the video. Default is true.", "required": false, "type": "boolean" }, { "name": "frameRate", "in": "header", "description": "Optional; Specify the frame rate of the output video. Defaults to original video frame rate.", "required": false, "type": "integer" }, { "name": "quality", "in": "header", "description": "Optional; Specify the quality of the output video, where 100 is lossless and 1 is the lowest possible quality with highest compression. Default is 50.", "required": false, "type": "integer" } ], "responses": { "200": { "description": "OK", "schema": { "format": "byte", "type": "string" } } }, "security": [ { "Apikey": [] } ] } }, "/video/convert/to/gif": { "post": { "tags": [ "Video" ], "summary": "Convert Video to Animated GIF format.", "description": "Automatically detect video file format and convert it to animated GIF format. Supports many input video formats, including AVI, ASF, FLV, MP4, MPEG/MPG, Matroska/WEBM, 3G2, OGV, MKV, M4V and MOV. Uses 1 API call per 10 MB of file size. Also uses 1 API call per additional minute of processing time over 5 minutes, up to a maximum of 25 minutes total processing time. Maximum output file size is 50GB. Default height is 250 pixels, while preserving the video's aspect ratio.", "operationId": "Video_ConvertToGif", "consumes": [ "multipart/form-data" ], "produces": [ "application/octet-stream" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of a video file being used for conversion. Use this option for files larger than 2GB.", "required": false, "type": "string" }, { "name": "maxWidth", "in": "header", "description": "Optional; Maximum width of the output video, up to the original video width. Defaults to 250 pixels, maximum is 500 pixels.", "required": false, "type": "integer" }, { "name": "maxHeight", "in": "header", "description": "Optional; Maximum height of the output video, up to the original video width. Defaults to 250 pixels, maximum is 500 pixels.", "required": false, "type": "integer" }, { "name": "preserveAspectRatio", "in": "header", "description": "Optional; If false, the original video's aspect ratio will not be preserved, allowing customization of the aspect ratio using maxWidth and maxHeight, potentially skewing the video. Default is true.", "required": false, "type": "boolean" }, { "name": "frameRate", "in": "header", "description": "Optional; Specify the frame rate of the output video. Defaults to 24 frames per second.", "required": false, "type": "integer" }, { "name": "startTime", "in": "header", "description": "Optional; Specify the desired starting time of the GIF video in TimeSpan format.", "required": false, "type": "string", "format": "date-time" }, { "name": "timeSpan", "in": "header", "description": "Optional; Specify the desired length of the GIF video in TimeSpan format. Limit is 30 seconds. Default is 10 seconds.", "required": false, "type": "string", "format": "date-time" } ], "responses": { "200": { "description": "OK", "schema": { "format": "byte", "type": "string" } } }, "security": [ { "Apikey": [] } ] } }, "/video/resize/preserveAspectRatio": { "post": { "tags": [ "Video" ], "summary": "Resizes a Video Preserving the Original Aspect Ratio.", "description": "Resizes a video, while maintaining the original aspect ratio and encoding. Supports many input video formats, including AVI, ASF, FLV, MP4, MPEG/MPG, Matroska/WEBM, 3G2, MKV, M4V and MOV. Uses 1 API call per 10 MB of file size. Also uses 1 API call per additional minute of processing time over 5 minutes, up to a maximum of 25 minutes total processing time. Maximum output file size is 50GB.", "operationId": "Video_ResizeVideo", "consumes": [ "multipart/form-data" ], "produces": [ "application/octet-stream" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of a video file being used for conversion. Use this option for files larger than 2GB.", "required": false, "type": "string" }, { "name": "maxWidth", "in": "header", "description": "Optional; Maximum width of the output video, up to the original video width. Defaults to original video width.", "required": false, "type": "integer" }, { "name": "maxHeight", "in": "header", "description": "Optional; Maximum height of the output video, up to the original video width. Defaults to original video height.", "required": false, "type": "integer" }, { "name": "frameRate", "in": "header", "description": "Optional; Specify the frame rate of the output video. Defaults to original video frame rate.", "required": false, "type": "integer" }, { "name": "quality", "in": "header", "description": "Optional; Specify the quality of the output video, where 100 is lossless and 1 is the lowest possible quality with highest compression. Default is 50.", "required": false, "type": "integer" }, { "name": "extension", "in": "header", "description": "Optional; Specify the file extension of the input video. This is recommended when inputting a file directly, without a file name. If no file name is available and no extension is provided, the extension will be inferred from the file data, which may cause a different extension to be used in the output.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "format": "byte", "type": "string" } } }, "security": [ { "Apikey": [] } ] } }, "/video/resize/target": { "post": { "tags": [ "Video" ], "summary": "Resizes a Video without Preserving Aspect Ratio.", "description": "Resizes a video without maintaining original aspect ratio, allowing fully customizable dimensions. May cause image skewing. Supports many input video formats, including AVI, ASF, FLV, MP4, MPEG/MPG, Matroska/WEBM, 3G2, MKV, M4V and MOV. Uses 1 API call per 10 MB of file size. Also uses 1 API call per additional minute of processing time over 5 minutes, up to a maximum of 25 minutes total processing time. Maximum output file size is 50GB.", "operationId": "Video_ResizeVideoSimple", "consumes": [ "multipart/form-data" ], "produces": [ "application/octet-stream" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of a video file being used for conversion. Use this option for files larger than 2GB.", "required": false, "type": "string" }, { "name": "maxWidth", "in": "header", "description": "Optional; Maximum width of the output video, up to the original video width. Defaults to original video width.", "required": false, "type": "integer" }, { "name": "maxHeight", "in": "header", "description": "Optional; Maximum height of the output video, up to the original video width. Defaults to original video height.", "required": false, "type": "integer" }, { "name": "frameRate", "in": "header", "description": "Optional; Specify the frame rate of the output video. Defaults to original video frame rate.", "required": false, "type": "integer" }, { "name": "quality", "in": "header", "description": "Optional; Specify the quality of the output video, where 100 is lossless and 1 is the lowest possible quality with highest compression. Default is 50.", "required": false, "type": "integer" }, { "name": "extension", "in": "header", "description": "Optional; Specify the file extension of the input video. This is recommended when inputting a file directly, without a file name. If no file name is available and no extension is provided, the extension will be inferred from the file data, which may cause a different extension to be used in the output.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "format": "byte", "type": "string" } } }, "security": [ { "Apikey": [] } ] } }, "/video/cut": { "post": { "tags": [ "Video" ], "summary": "Cut a Video to a Shorter Length", "description": "Cuts a video to the specified start and end times. Supports many input video formats, including AVI, ASF, FLV, MP4, MPEG/MPG, Matroska/WEBM, 3G2, MKV, M4V and MOV. Uses 1 API call per 10 MB of file size. Also uses 1 API call per additional minute of processing time over 5 minutes, up to a maximum of 25 minutes total processing time. Maximum output file size is 50GB.", "operationId": "Video_CutVideo", "consumes": [ "multipart/form-data" ], "produces": [ "application/octet-stream" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of a video file being used for conversion. Use this option for files larger than 2GB.", "required": false, "type": "string" }, { "name": "startTime", "in": "header", "description": "Optional; Specify the desired starting time of the cut video in TimeSpan format.", "required": false, "type": "string", "format": "date-time" }, { "name": "timeSpan", "in": "header", "description": "Optional; Specify the desired length of the cut video in TimeSpan format. Leave blank to include the rest of the video. Maximum time is 4 hours.", "required": false, "type": "string", "format": "date-time" } ], "responses": { "200": { "description": "OK", "schema": { "format": "byte", "type": "string" } } }, "security": [ { "Apikey": [] } ] } }, "/video/split": { "post": { "tags": [ "Video" ], "summary": "Split a Video into Two Shorter Videos", "description": "Cuts a video into two videos based on the specified start time. Supports many input video formats, including AVI, ASF, FLV, MP4, MPEG/MPG, Matroska/WEBM, 3G2, MKV, M4V and MOV. Uses 1 API call per 10 MB of file size. Also uses 1 API call per additional minute of processing time over 5 minutes, up to a maximum of 25 minutes total processing time. Maximum output file size is 50GB.", "operationId": "Video_SplitVideo", "consumes": [ "multipart/form-data" ], "produces": [ "application/octet-stream" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of a video file being used for conversion. Use this option for files larger than 2GB.", "required": false, "type": "string" }, { "name": "splitTime", "in": "header", "description": "Specify the desired time at which to split the video in TimeSpan format.", "required": true, "type": "string", "format": "date-time" }, { "name": "timeSpan", "in": "header", "description": "Optional; Specify the desired length of the second video in TimeSpan format. Leave blank to include the rest of the video. Maximum time is 4 hours.", "required": false, "type": "string", "format": "date-time" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/SplitVideoResult" } } }, "security": [ { "Apikey": [] } ] } }, "/video/convert/to/still-frames": { "post": { "tags": [ "Video" ], "summary": "Convert Video to PNG Still Frames.", "description": "Automatically detect video file format and convert it to an array of still frame PNG images. Supports many input video formats, including AVI, ASF, FLV, MP4, MPEG/MPG, Matroska/WEBM, 3G2, OGV, MKV, M4V and MOV. Uses 1 API call per 10 MB of file size. Also uses 1 API call per additional minute of processing time over 5 minutes, up to a maximum of 25 minutes total processing time.", "operationId": "Video_ConvertToStillFrames", "consumes": [ "multipart/form-data" ], "produces": [ "application/json", "text/json", "application/xml", "text/xml" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of a video file being used for conversion. Use this option for files larger than 2GB.", "required": false, "type": "string" }, { "name": "maxWidth", "in": "header", "description": "Optional; Maximum width of the output video, up to the original video width. Defaults to original video width.", "required": false, "type": "integer" }, { "name": "maxHeight", "in": "header", "description": "Optional; Maximum height of the output video, up to the original video width. Defaults to original video height.", "required": false, "type": "integer" }, { "name": "framesPerSecond", "in": "header", "description": "Optional; How many video frames per second to be returned as PNG images. Minimum value is 0.1, maximum is 60. Default is 1 frame per second. Maximum of 2000 total frames.", "required": false, "type": "number" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/StillFramesResult" } } }, "security": [ { "Apikey": [] } ] } }, "/video/scan/nsfw": { "post": { "tags": [ "Video" ], "summary": "Scan a Video for NSFW content.", "description": "Automatically detect video file format and scan it for Not Safe For Work (NSFW)/Porn/Racy content. Supports many input video formats, including AVI, ASF, FLV, MP4, MPEG/MPG, Matroska/WEBM, 3G2, OGV, MKV, M4V and MOV. Uses 1 API call per 10 MB of file size. Also uses 1 API call per frame scanned.", "operationId": "Video_ScanForNsfw", "consumes": [ "multipart/form-data" ], "produces": [ "application/json", "text/json", "application/xml", "text/xml" ], "parameters": [ { "name": "inputFile", "in": "formData", "description": "Input file to perform the operation on.", "required": false, "type": "file" }, { "name": "fileUrl", "in": "header", "description": "Optional; URL of a video file being scanned. Use this option for files larger than 2GB.", "required": false, "type": "string" }, { "name": "framesPerSecond", "in": "header", "description": "Optional; How many video frames per second to be scanned. Minimum value is 0.05 (1 frame per 20 seconds), maximum is 1. Default is 0.33 frame per second (1 frame scanned every 3 seconds). Maximum of 1000 total frames can be scanned, potentially adjusting the framerate for longer videos.", "required": false, "type": "number" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/NsfwResult" } } }, "security": [ { "Apikey": [] } ] } } }, "definitions": { "MediaInformation": { "description": "Result of retrieving information about a video or audio file", "type": "object", "properties": { "Successful": { "description": "True if the operation was successful, false otherwise", "type": "boolean" }, "FileFormat": { "description": "The file's short format name", "type": "string" }, "FileFormatFull": { "description": "The file's full format name", "type": "string" }, "ValidFileFormats": { "description": "A list of the file's valid formats", "type": "array", "items": { "type": "string" } }, "Width": { "format": "int32", "description": "The video's width, if file is a video", "type": "integer" }, "Height": { "format": "int32", "description": "The video's height, if file is a video", "type": "integer" }, "Size": { "format": "int32", "description": "The file's size in bytes", "type": "integer" }, "BitRate": { "format": "int32", "description": "The file's bit rate", "type": "integer" }, "Duration": { "format": "double", "description": "The file's duration in seconds", "type": "number" }, "StartTime": { "format": "double", "description": "The file's media start time", "type": "number" } } }, "SplitVideoResult": { "description": "The result of splitting a video", "type": "object", "properties": { "Successful": { "description": "True if the operation was successful, false otherwise", "type": "boolean" }, "Videos": { "description": "Individual video files resulting from the split operation", "type": "array", "items": { "$ref": "#/definitions/VideoFile" } } } }, "VideoFile": { "description": "A video file", "type": "object", "properties": { "VideoNumber": { "format": "int32", "description": "Sequence number of the video", "type": "integer" }, "Content": { "format": "byte", "description": "The video file as a byte array", "type": "string" } } }, "StillFramesResult": { "description": "The result of converting a video into still frames", "type": "object", "properties": { "Successful": { "description": "True if the operation was successful, false otherwise", "type": "boolean" }, "TotalFrames": { "format": "int32", "description": "The total number of frames converted", "type": "integer" }, "StillFrames": { "description": "Individual still frames from the conversion operation", "type": "array", "items": { "$ref": "#/definitions/StillFrame" } } } }, "StillFrame": { "description": "A single still frame from a video", "type": "object", "properties": { "FrameNumber": { "format": "int32", "description": "The number of the current frame", "type": "integer" }, "TimeStamp": { "description": "The playback time of the current frame", "type": "string" }, "Content": { "format": "byte", "description": "The still frame in PNG format as a byte array", "type": "string" } } }, "NsfwResult": { "description": "The result of scanning a video file for NSFW content", "type": "object", "properties": { "Successful": { "description": "True if the operation was successful, false otherwise", "type": "boolean" }, "HighestClassificationResult": { "description": "The highest NSFW classification of the video", "type": "string" }, "HighestScore": { "format": "double", "description": "The highest NSFW score out of all frames scanned", "type": "number" }, "TotalRacyFrames": { "format": "int32", "description": "The total number of potentially \"racy\" frames.", "type": "integer" }, "TotalNsfwFrames": { "format": "int32", "description": "The total number of frames with high probability of NSFW.", "type": "integer" }, "TotalFrames": { "format": "int32", "description": "The total number of frames scanned", "type": "integer" }, "NsfwScannedFrames": { "description": "The NSFW scanning results for each frame", "type": "array", "items": { "$ref": "#/definitions/NsfwScannedFrame" } } } }, "NsfwScannedFrame": { "description": "An individual frame scanned for NSFW content", "type": "object", "properties": { "FrameNumber": { "format": "int32", "description": "The number of the current frame", "type": "integer" }, "TimeStamp": { "description": "The playback time of the current frame", "type": "string" }, "Content": { "format": "byte", "description": "The still frame in PNG format as a byte array", "type": "string" }, "ClassificationResult": { "description": "The NSFW classification of the still frame", "type": "string" }, "Score": { "format": "double", "description": "The NSFW score of the current frame", "type": "number" } } } }, "securityDefinitions": { "Apikey": { "type": "apiKey", "description": "API Key Authentication", "name": "Apikey", "in": "header" } } }