Cambase.io icon

Cambase.io

Cambase

COMMUNITYNO AUTH0 INSTALLS
OpenAPI Specificationv3.0
{
  "swagger": "2.0",
  "schemes": [
    "http"
  ],
  "host": "api.cambase.io",
  "basePath": "/",
  "info": {
    "description": "Cambase.io is a project by Evercam.io in order to make it easier for software developers to have a reliable, up to date source of model hardware information available via a public API.",
    "title": "Cambase.io",
    "version": "1.0",
    "x-logo": {
      "url": "https://api.apis.guru/v2/cache/logo/https_twitter.com_evrcm_profile_image.jpeg"
    },
    "x-origin": [
      {
        "converter": {
          "url": "https://github.com/lucybot/api-spec-converter",
          "version": "2.6.2"
        },
        "format": "swagger",
        "url": "http://api.cambase.io/api-docs/api-docs.json",
        "version": "1.2"
      }
    ],
    "x-providerName": "cambase.io"
  },
  "tags": [
    {
      "description": "Models",
      "name": "models"
    },
    {
      "description": "Recorders",
      "name": "recorders"
    },
    {
      "description": "Vendors",
      "name": "vendors"
    }
  ],
  "paths": {
    "/api/v1/models.json": {
      "get": {
        "operationId": "Api::V1::Models#index",
        "parameters": [
          {
            "description": "Page number",
            "in": "query",
            "name": "page",
            "required": false,
            "type": "integer"
          },
          {
            "description": "Sort order",
            "in": "query",
            "name": "order",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "406": {
            "description": "The request you made is not acceptable"
          },
          "416": {
            "description": "Requested Range Not Satisfiable"
          }
        },
        "summary": "Fetches all Models",
        "tags": [
          "models"
        ]
      },
      "post": {
        "operationId": "Api::V1::Models#create",
        "parameters": [
          {
            "description": "Vendor ID",
            "in": "formData",
            "name": "vendor_id",
            "required": true,
            "type": "string"
          },
          {
            "description": "Model",
            "in": "formData",
            "name": "model[model]",
            "required": true,
            "type": "string"
          },
          {
            "description": "Shape",
            "in": "formData",
            "name": "model[shape]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Resolution",
            "in": "formData",
            "name": "model[resolution]",
            "required": false,
            "type": "string"
          },
          {
            "description": "ONVIF",
            "in": "formData",
            "name": "model[onvif]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PSIA",
            "in": "formData",
            "name": "model[psia]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PTZ",
            "in": "formData",
            "name": "model[ptz]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Infrared",
            "in": "formData",
            "name": "model[infrared]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Varifocal",
            "in": "formData",
            "name": "model[varifocal]",
            "required": false,
            "type": "string"
          },
          {
            "description": "SD Card",
            "in": "formData",
            "name": "model[sd_card]",
            "required": false,
            "type": "string"
          },
          {
            "description": "UPnP",
            "in": "formData",
            "name": "model[upnp]",
            "required": false,
            "type": "string"
          },
          {
            "description": "UPnP",
            "in": "formData",
            "name": "model[audio_in]",
            "required": false,
            "type": "string"
          },
          {
            "description": "UPnP",
            "in": "formData",
            "name": "model[audio_out]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Default Username",
            "in": "formData",
            "name": "model[default_username]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Default Password",
            "in": "formData",
            "name": "model[default_password]",
            "required": false,
            "type": "string"
          },
          {
            "description": "JPEG URL",
            "in": "formData",
            "name": "model[jpeg_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "H264 URL",
            "in": "formData",
            "name": "model[h264_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "MJPEG URL",
            "in": "formData",
            "name": "model[mjpeg_url]",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "406": {
            "description": "Not Acceptable"
          }
        },
        "summary": "Creates a new Model",
        "tags": [
          "models"
        ]
      }
    },
    "/api/v1/models/search.json": {
      "get": {
        "operationId": "Api::V1::Models#search",
        "parameters": [
          {
            "description": "Page number",
            "in": "query",
            "name": "page",
            "required": false,
            "type": "integer"
          },
          {
            "description": "Model",
            "in": "query",
            "name": "q[model_cont]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Vendor",
            "in": "query",
            "name": "q[manufacturer_name_cont]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Shape",
            "in": "query",
            "name": "q[shape_eq]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Resolution",
            "in": "query",
            "name": "q[resolution_eq]",
            "required": false,
            "type": "string"
          },
          {
            "description": "ONVIF",
            "in": "query",
            "name": "q[onvif_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PSIA",
            "in": "query",
            "name": "q[psia_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PTZ",
            "in": "query",
            "name": "q[ptz_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Infrared",
            "in": "query",
            "name": "q[infrared_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Varifocal",
            "in": "query",
            "name": "q[varifocal_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "SD Card",
            "in": "query",
            "name": "q[sd_card_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "UPnP",
            "in": "query",
            "name": "q[upnp_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Audio In",
            "in": "query",
            "name": "q[audio_in_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Audio Out",
            "in": "query",
            "name": "q[audio_out_true]",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "406": {
            "description": "The request you made is not acceptable"
          },
          "416": {
            "description": "Requested Range Not Satisfiable"
          }
        },
        "summary": "Searches all Models",
        "tags": [
          "models"
        ]
      }
    },
    "/api/v1/models/{id}.json": {
      "get": {
        "operationId": "Api::V1::Models#show",
        "parameters": [
          {
            "description": "Model ID",
            "in": "path",
            "name": "id",
            "required": true,
            "type": "integer"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "404": {
            "description": "Not Found"
          },
          "406": {
            "description": "Not Acceptable"
          }
        },
        "summary": "Fetches a single Model",
        "tags": [
          "models"
        ]
      },
      "patch": {
        "parameters": [
          {
            "description": "Model ID",
            "in": "path",
            "name": "id",
            "required": true,
            "type": "string"
          },
          {
            "description": "Vendor ID",
            "in": "formData",
            "name": "vendor_id",
            "required": true,
            "type": "string"
          },
          {
            "description": "Model",
            "in": "formData",
            "name": "model[model]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Shape",
            "in": "formData",
            "name": "model[shape]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Resolution",
            "in": "formData",
            "name": "model[resolution]",
            "required": false,
            "type": "string"
          },
          {
            "description": "ONVIF",
            "in": "formData",
            "name": "model[onvif]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PSIA",
            "in": "formData",
            "name": "model[psia]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PTZ",
            "in": "formData",
            "name": "model[ptz]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Infrared",
            "in": "formData",
            "name": "model[infrared]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Varifocal",
            "in": "formData",
            "name": "model[varifocal]",
            "required": false,
            "type": "string"
          },
          {
            "description": "SD Card",
            "in": "formData",
            "name": "model[sd_card]",
            "required": false,
            "type": "string"
          },
          {
            "description": "UPnP",
            "in": "formData",
            "name": "model[upnp]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Audio In",
            "in": "formData",
            "name": "model[audio_in]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Audio Out",
            "in": "formData",
            "name": "model[audio_out]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Default Username",
            "in": "formData",
            "name": "model[default_username]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Default Password",
            "in": "formData",
            "name": "model[default_password]",
            "required": false,
            "type": "string"
          },
          {
            "description": "JPEG URL",
            "in": "formData",
            "name": "model[jpeg_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "H264 URL",
            "in": "formData",
            "name": "model[h264_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "MJPEG URL",
            "in": "formData",
            "name": "model[mjpeg_url]",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "404": {
            "description": "Not Found"
          },
          "406": {
            "description": "Not Acceptable"
          }
        },
        "summary": "Updates an existing Model",
        "tags": [
          "models"
        ]
      },
      "put": {
        "parameters": [
          {
            "description": "Model ID",
            "in": "path",
            "name": "id",
            "required": true,
            "type": "string"
          },
          {
            "description": "Vendor ID",
            "in": "formData",
            "name": "vendor_id",
            "required": true,
            "type": "string"
          },
          {
            "description": "Model",
            "in": "formData",
            "name": "model[model]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Shape",
            "in": "formData",
            "name": "model[shape]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Resolution",
            "in": "formData",
            "name": "model[resolution]",
            "required": false,
            "type": "string"
          },
          {
            "description": "ONVIF",
            "in": "formData",
            "name": "model[onvif]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PSIA",
            "in": "formData",
            "name": "model[psia]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PTZ",
            "in": "formData",
            "name": "model[ptz]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Infrared",
            "in": "formData",
            "name": "model[infrared]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Varifocal",
            "in": "formData",
            "name": "model[varifocal]",
            "required": false,
            "type": "string"
          },
          {
            "description": "SD Card",
            "in": "formData",
            "name": "model[sd_card]",
            "required": false,
            "type": "string"
          },
          {
            "description": "UPnP",
            "in": "formData",
            "name": "model[upnp]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Audio In",
            "in": "formData",
            "name": "model[audio_in]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Audio Out",
            "in": "formData",
            "name": "model[audio_out]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Default Username",
            "in": "formData",
            "name": "model[default_username]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Default Password",
            "in": "formData",
            "name": "model[default_password]",
            "required": false,
            "type": "string"
          },
          {
            "description": "JPEG URL",
            "in": "formData",
            "name": "model[jpeg_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "H264 URL",
            "in": "formData",
            "name": "model[h264_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "MJPEG URL",
            "in": "formData",
            "name": "model[mjpeg_url]",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "404": {
            "description": "Not Found"
          },
          "406": {
            "description": "Not Acceptable"
          }
        },
        "summary": "Updates an existing Model",
        "tags": [
          "models"
        ]
      }
    },
    "/api/v1/recorders.json": {
      "get": {
        "operationId": "Api::V1::Recorders#index",
        "parameters": [
          {
            "description": "Page number",
            "in": "query",
            "name": "page",
            "required": false,
            "type": "integer"
          },
          {
            "description": "Sort order",
            "in": "query",
            "name": "order",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "406": {
            "description": "The request you made is not acceptable"
          },
          "416": {
            "description": "Requested Range Not Satisfiable"
          }
        },
        "summary": "Fetches all Recorders",
        "tags": [
          "recorders"
        ]
      },
      "post": {
        "operationId": "Api::V1::Recorders#create",
        "parameters": [
          {
            "description": "Vendor ID",
            "in": "formData",
            "name": "vendor_id",
            "required": true,
            "type": "string"
          },
          {
            "description": "Model",
            "in": "formData",
            "name": "recorder[model]",
            "required": true,
            "type": "string"
          },
          {
            "description": "Name",
            "in": "formData",
            "name": "recorder[name]",
            "required": true,
            "type": "string"
          },
          {
            "description": "Type",
            "in": "formData",
            "name": "recorder[recorder_type]",
            "required": true,
            "type": "string"
          },
          {
            "description": "Resolution",
            "in": "formData",
            "name": "recorder[resolution]",
            "required": false,
            "type": "string"
          },
          {
            "description": "ONVIF",
            "in": "formData",
            "name": "recorder[onvif]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PSIA",
            "in": "formData",
            "name": "recorder[psia]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PTZ",
            "in": "formData",
            "name": "recorder[ptz]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Discontinued",
            "in": "formData",
            "name": "recorder[discontinued]",
            "required": false,
            "type": "string"
          },
          {
            "description": "3rd pparty Camera Support",
            "in": "formData",
            "name": "recorder[support_3rdparty]",
            "required": false,
            "type": "string"
          },
          {
            "description": "SD Card",
            "in": "formData",
            "name": "recorder[sd_card]",
            "required": false,
            "type": "string"
          },
          {
            "description": "UPnP",
            "in": "formData",
            "name": "recorder[upnp]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Hot Swap",
            "in": "formData",
            "name": "recorder[hot_swap]",
            "required": false,
            "type": "string"
          },
          {
            "description": "HDMI Support",
            "in": "formData",
            "name": "recorder[hdmi]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Digital I/O",
            "in": "formData",
            "name": "recorder[digital_io]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Audio In",
            "in": "formData",
            "name": "recorder[audio_in]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Audio Out",
            "in": "formData",
            "name": "recorder[audio_out]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Input Channels",
            "in": "formData",
            "name": "recorder[input_channels]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Playback Channels",
            "in": "formData",
            "name": "recorder[playback_channels]",
            "required": false,
            "type": "string"
          },
          {
            "description": "USB Ports",
            "in": "formData",
            "name": "recorder[usb]",
            "required": false,
            "type": "string"
          },
          {
            "description": "SD Card (GB)",
            "in": "formData",
            "name": "recorder[sdhc]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Mobile Access",
            "in": "formData",
            "name": "recorder[mobile_access]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Alarms",
            "in": "formData",
            "name": "recorder[alarms]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Raid Support",
            "in": "formData",
            "name": "recorder[raid_support]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Internal Storage",
            "in": "formData",
            "name": "recorder[storage]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Additional Information",
            "in": "formData",
            "name": "recorder[additional_information]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Default Username",
            "in": "formData",
            "name": "recorder[default_username]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Default Password",
            "in": "formData",
            "name": "recorder[default_password]",
            "required": false,
            "type": "string"
          },
          {
            "description": "JPEG URL",
            "in": "formData",
            "name": "recorder[jpeg_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "H264 URL",
            "in": "formData",
            "name": "recorder[h264_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "MJPEG URL",
            "in": "formData",
            "name": "recorder[mjpeg_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Official URL",
            "in": "formData",
            "name": "recorder[official_url]",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "406": {
            "description": "Not Acceptable"
          }
        },
        "summary": "Creates a new Recorder",
        "tags": [
          "recorders"
        ]
      }
    },
    "/api/v1/recorders/search.json": {
      "get": {
        "operationId": "Api::V1::Recorders#search",
        "parameters": [
          {
            "description": "Page number",
            "in": "query",
            "name": "page",
            "required": false,
            "type": "integer"
          },
          {
            "description": "Model",
            "in": "query",
            "name": "q[model_cont]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Vendor",
            "in": "query",
            "name": "q[vendor_name_cont]",
            "required": false,
            "type": "string"
          },
          {
            "description": "SD Card (GB)",
            "in": "query",
            "name": "q[sdhc_eq]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Type",
            "in": "query",
            "name": "q[type_eq]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Resolution",
            "in": "query",
            "name": "q[resolution_eq]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Input Channels",
            "in": "query",
            "name": "q[input_channels_eq]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Playback Channels",
            "in": "query",
            "name": "q[playback_channels_eq]",
            "required": false,
            "type": "string"
          },
          {
            "description": "ONVIF",
            "in": "query",
            "name": "q[onvif_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PSIA",
            "in": "query",
            "name": "q[psia_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PTZ",
            "in": "query",
            "name": "q[ptz_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "SD Card",
            "in": "query",
            "name": "q[sd_card_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "UPnP",
            "in": "query",
            "name": "q[upnp_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Audio In",
            "in": "query",
            "name": "q[audio_in_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Audio Out",
            "in": "query",
            "name": "q[audio_out_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "HDMI Support",
            "in": "query",
            "name": "q[hdmi_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Hot Swap",
            "in": "query",
            "name": "q[hot_swap_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "3rd pparty Camera Support",
            "in": "query",
            "name": "q[support_3rdparty_true]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Digital I/O",
            "in": "query",
            "name": "q[digital_io_true]",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "406": {
            "description": "The request you made is not acceptable"
          },
          "416": {
            "description": "Requested Range Not Satisfiable"
          }
        },
        "summary": "Searches all Recorders",
        "tags": [
          "recorders"
        ]
      }
    },
    "/api/v1/recorders/{id}.json": {
      "get": {
        "operationId": "Api::V1::Recorders#show",
        "parameters": [
          {
            "description": "Recorder ID",
            "in": "path",
            "name": "id",
            "required": true,
            "type": "integer"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "404": {
            "description": "Not Found"
          },
          "406": {
            "description": "Not Acceptable"
          }
        },
        "summary": "Fetches a single Recorder",
        "tags": [
          "recorders"
        ]
      },
      "patch": {
        "parameters": [
          {
            "description": "Recorder ID",
            "in": "path",
            "name": "id",
            "required": true,
            "type": "string"
          },
          {
            "description": "Vendor ID",
            "in": "formData",
            "name": "vendor_id",
            "required": true,
            "type": "string"
          },
          {
            "description": "Model",
            "in": "formData",
            "name": "recorder[model]",
            "required": true,
            "type": "string"
          },
          {
            "description": "Name",
            "in": "formData",
            "name": "recorder[name]",
            "required": true,
            "type": "string"
          },
          {
            "description": "Type",
            "in": "formData",
            "name": "recorder[recorder_type]",
            "required": true,
            "type": "string"
          },
          {
            "description": "Resolution",
            "in": "formData",
            "name": "recorder[resolution]",
            "required": false,
            "type": "string"
          },
          {
            "description": "ONVIF",
            "in": "formData",
            "name": "recorder[onvif]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PSIA",
            "in": "formData",
            "name": "recorder[psia]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PTZ",
            "in": "formData",
            "name": "recorder[ptz]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Discontinued",
            "in": "formData",
            "name": "recorder[discontinued]",
            "required": false,
            "type": "string"
          },
          {
            "description": "3rd pparty Camera Support",
            "in": "formData",
            "name": "recorder[support_3rdparty]",
            "required": false,
            "type": "string"
          },
          {
            "description": "SD Card",
            "in": "formData",
            "name": "recorder[sd_card]",
            "required": false,
            "type": "string"
          },
          {
            "description": "UPnP",
            "in": "formData",
            "name": "recorder[upnp]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Hot Swap",
            "in": "formData",
            "name": "recorder[hot_swap]",
            "required": false,
            "type": "string"
          },
          {
            "description": "HDMI Support",
            "in": "formData",
            "name": "recorder[hdmi]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Digital I/O",
            "in": "formData",
            "name": "recorder[digital_io]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Audio In",
            "in": "formData",
            "name": "recorder[audio_in]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Audio Out",
            "in": "formData",
            "name": "recorder[audio_out]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Input Channels",
            "in": "formData",
            "name": "recorder[input_channels]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Playback Channels",
            "in": "formData",
            "name": "recorder[playback_channels]",
            "required": false,
            "type": "string"
          },
          {
            "description": "USB Ports",
            "in": "formData",
            "name": "recorder[usb]",
            "required": false,
            "type": "string"
          },
          {
            "description": "SD Card (GB)",
            "in": "formData",
            "name": "recorder[sdhc]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Mobile Access",
            "in": "formData",
            "name": "recorder[mobile_access]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Alarms",
            "in": "formData",
            "name": "recorder[alarms]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Raid Support",
            "in": "formData",
            "name": "recorder[raid_support]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Internal Storage",
            "in": "formData",
            "name": "recorder[storage]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Additional Information",
            "in": "formData",
            "name": "recorder[additional_information]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Default Username",
            "in": "formData",
            "name": "recorder[default_username]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Default Password",
            "in": "formData",
            "name": "recorder[default_password]",
            "required": false,
            "type": "string"
          },
          {
            "description": "JPEG URL",
            "in": "formData",
            "name": "recorder[jpeg_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "H264 URL",
            "in": "formData",
            "name": "recorder[h264_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "MJPEG URL",
            "in": "formData",
            "name": "recorder[mjpeg_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Official URL",
            "in": "formData",
            "name": "recorder[official_url]",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "404": {
            "description": "Not Found"
          },
          "406": {
            "description": "Not Acceptable"
          }
        },
        "summary": "Updates an existing Recorder",
        "tags": [
          "recorders"
        ]
      },
      "put": {
        "parameters": [
          {
            "description": "Recorder ID",
            "in": "path",
            "name": "id",
            "required": true,
            "type": "string"
          },
          {
            "description": "Vendor ID",
            "in": "formData",
            "name": "vendor_id",
            "required": true,
            "type": "string"
          },
          {
            "description": "Model",
            "in": "formData",
            "name": "recorder[model]",
            "required": true,
            "type": "string"
          },
          {
            "description": "Name",
            "in": "formData",
            "name": "recorder[name]",
            "required": true,
            "type": "string"
          },
          {
            "description": "Type",
            "in": "formData",
            "name": "recorder[recorder_type]",
            "required": true,
            "type": "string"
          },
          {
            "description": "Resolution",
            "in": "formData",
            "name": "recorder[resolution]",
            "required": false,
            "type": "string"
          },
          {
            "description": "ONVIF",
            "in": "formData",
            "name": "recorder[onvif]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PSIA",
            "in": "formData",
            "name": "recorder[psia]",
            "required": false,
            "type": "string"
          },
          {
            "description": "PTZ",
            "in": "formData",
            "name": "recorder[ptz]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Discontinued",
            "in": "formData",
            "name": "recorder[discontinued]",
            "required": false,
            "type": "string"
          },
          {
            "description": "3rd pparty Camera Support",
            "in": "formData",
            "name": "recorder[support_3rdparty]",
            "required": false,
            "type": "string"
          },
          {
            "description": "SD Card",
            "in": "formData",
            "name": "recorder[sd_card]",
            "required": false,
            "type": "string"
          },
          {
            "description": "UPnP",
            "in": "formData",
            "name": "recorder[upnp]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Hot Swap",
            "in": "formData",
            "name": "recorder[hot_swap]",
            "required": false,
            "type": "string"
          },
          {
            "description": "HDMI Support",
            "in": "formData",
            "name": "recorder[hdmi]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Digital I/O",
            "in": "formData",
            "name": "recorder[digital_io]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Audio In",
            "in": "formData",
            "name": "recorder[audio_in]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Audio Out",
            "in": "formData",
            "name": "recorder[audio_out]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Input Channels",
            "in": "formData",
            "name": "recorder[input_channels]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Playback Channels",
            "in": "formData",
            "name": "recorder[playback_channels]",
            "required": false,
            "type": "string"
          },
          {
            "description": "USB Ports",
            "in": "formData",
            "name": "recorder[usb]",
            "required": false,
            "type": "string"
          },
          {
            "description": "SD Card (GB)",
            "in": "formData",
            "name": "recorder[sdhc]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Mobile Access",
            "in": "formData",
            "name": "recorder[mobile_access]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Alarms",
            "in": "formData",
            "name": "recorder[alarms]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Raid Support",
            "in": "formData",
            "name": "recorder[raid_support]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Internal Storage",
            "in": "formData",
            "name": "recorder[storage]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Additional Information",
            "in": "formData",
            "name": "recorder[additional_information]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Default Username",
            "in": "formData",
            "name": "recorder[default_username]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Default Password",
            "in": "formData",
            "name": "recorder[default_password]",
            "required": false,
            "type": "string"
          },
          {
            "description": "JPEG URL",
            "in": "formData",
            "name": "recorder[jpeg_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "H264 URL",
            "in": "formData",
            "name": "recorder[h264_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "MJPEG URL",
            "in": "formData",
            "name": "recorder[mjpeg_url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Official URL",
            "in": "formData",
            "name": "recorder[official_url]",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "404": {
            "description": "Not Found"
          },
          "406": {
            "description": "Not Acceptable"
          }
        },
        "summary": "Updates an existing Recorder",
        "tags": [
          "recorders"
        ]
      }
    },
    "/api/v1/vendors.json": {
      "get": {
        "operationId": "Api::V1::Vendors#index",
        "parameters": [
          {
            "description": "Page number",
            "in": "query",
            "name": "page",
            "required": false,
            "type": "integer"
          },
          {
            "description": "Sort order",
            "in": "query",
            "name": "order",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "406": {
            "description": "The request you made is not acceptable"
          },
          "416": {
            "description": "Requested Range Not Satisfiable"
          }
        },
        "summary": "Fetches all Vendors",
        "tags": [
          "vendors"
        ]
      },
      "post": {
        "operationId": "Api::V1::Vendors#create",
        "parameters": [
          {
            "description": "Name",
            "in": "formData",
            "name": "vendor[name]",
            "required": true,
            "type": "string"
          },
          {
            "description": "Info.",
            "in": "formData",
            "name": "vendor[info]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Website",
            "in": "formData",
            "name": "vendor[url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "MAC",
            "in": "formData",
            "name": "vendor[mac]",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "406": {
            "description": "Not Acceptable"
          }
        },
        "summary": "Creates a new Vendor",
        "tags": [
          "vendors"
        ]
      }
    },
    "/api/v1/vendors/{id}.json": {
      "get": {
        "operationId": "Api::V1::Vendors#show",
        "parameters": [
          {
            "description": "Vendor ID",
            "in": "path",
            "name": "id",
            "required": true,
            "type": "string"
          },
          {
            "description": "Sort order",
            "in": "query",
            "name": "order",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "404": {
            "description": "Not Found"
          },
          "406": {
            "description": "Not Acceptable"
          }
        },
        "summary": "Fetches a single Vendor",
        "tags": [
          "vendors"
        ]
      },
      "patch": {
        "parameters": [
          {
            "description": "Vendor ID",
            "in": "path",
            "name": "id",
            "required": true,
            "type": "string"
          },
          {
            "description": "Name",
            "in": "formData",
            "name": "vendor[name]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Info.",
            "in": "formData",
            "name": "vendor[info]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Website",
            "in": "formData",
            "name": "vendor[url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "MAC",
            "in": "formData",
            "name": "vendor[mac]",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "404": {
            "description": "Not Found"
          },
          "406": {
            "description": "Not Acceptable"
          }
        },
        "summary": "Updates an existing Vendor",
        "tags": [
          "vendors"
        ]
      },
      "put": {
        "parameters": [
          {
            "description": "Vendor ID",
            "in": "path",
            "name": "id",
            "required": true,
            "type": "string"
          },
          {
            "description": "Name",
            "in": "formData",
            "name": "vendor[name]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Info.",
            "in": "formData",
            "name": "vendor[info]",
            "required": false,
            "type": "string"
          },
          {
            "description": "Website",
            "in": "formData",
            "name": "vendor[url]",
            "required": false,
            "type": "string"
          },
          {
            "description": "MAC",
            "in": "formData",
            "name": "vendor[mac]",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "No response was specified"
          },
          "401": {
            "description": "Unauthorized"
          },
          "404": {
            "description": "Not Found"
          },
          "406": {
            "description": "Not Acceptable"
          }
        },
        "summary": "Updates an existing Vendor",
        "tags": [
          "vendors"
        ]
      }
    }
  }
}