object LicenseAudioResult
{
  "type": "object",
  "example": {
    "audio_id": "123456789",
    "download": {
      "url": "http://download2.dev.shutterstock.com/gatekeeper/abc/original.wav"
    },
    "license_id": "abcdef123456789ghijklmn",
    "allotment_charge": 1
  },
  "required": [
    "audio_id"
  ],
  "properties": {
    "error": {
      "type": "string",
      "description": "Error information if applicable"
    },
    "audio_id": {
      "type": "string",
      "description": "ID of the track that was licensed"
    },
    "download": {
      "$ref": "#/components/schemas/AudioUrl"
    },
    "license_id": {
      "type": "string",
      "description": "ID of the license event"
    },
    "allotment_charge": {
      "type": "number",
      "description": "Number of credits that this licensing event used"
    }
  },
  "description": "The response to a licensing request for an audio track"
}
object LicenseAudioResultDataList
{
  "example": {
    "data": [
      {
        "audio_id": "123456789",
        "download": {
          "url": "http://download2.dev.shutterstock.com/gatekeeper/abc/original.wav"
        },
        "license_id": "abcdef123456789ghijklmn",
        "allotment_charge": 1
      }
    ]
  },
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LicenseAudioResult"
      },
      "description": "License results"
    },
    "page": {
      "type": "integer",
      "description": "Current page that is returned"
    },
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Error"
      },
      "description": "Error list; appears only if there was an error"
    },
    "message": {
      "type": "string",
      "description": "Server-generated message, if any"
    },
    "per_page": {
      "type": "integer",
      "description": "Number of results per page"
    },
    "total_count": {
      "type": "integer",
      "description": "Total count of all results across all pages"
    }
  },
  "description": "List of audio license results"
}
object LicenseEditorialContent
{
  "type": "object",
  "example": {
    "size": "original",
    "license": "premier_editorial_comp",
    "metadata": {
      "customer_id": "12345",
      "search_term": "dog",
      "geo_location": "US",
      "number_viewed": "15"
    },
    "editorial_id": "10687730b"
  },
  "required": [
    "editorial_id",
    "license"
  ],
  "properties": {
    "size": {
      "enum": [
        "small",
        "medium",
        "original"
      ],
      "type": "string",
      "default": "original",
      "description": "Asset size to download"
    },
    "license": {
      "type": "string",
      "description": "License agreement to use for licensing"
    },
    "metadata": {
      "$ref": "#/components/schemas/LicenseRequestMetadata"
    },
    "editorial_id": {
      "type": "string",
      "description": "Editorial ID"
    }
  },
  "description": "Individual editorial content to license"
}
object LicenseEditorialContentRequest
{
  "type": "object",
  "example": {
    "country": "USA",
    "editorial": [
      {
        "size": "original",
        "license": "premier_editorial_comp",
        "metadata": {
          "customer_id": "12345",
          "search_term": "dog",
          "geo_location": "US",
          "number_viewed": "15"
        },
        "editorial_id": "10687730b"
      }
    ]
  },
  "required": [
    "country",
    "editorial"
  ],
  "properties": {
    "country": {
      "$ref": "#/components/schemas/ISOCountryCode",
      "example": "USA",
      "description": "Mandatory country code for where the editorial content will be distributed; this value is used for rights checks"
    },
    "editorial": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LicenseEditorialContent"
      },
      "description": "Editorial content to license"
    }
  },
  "description": "License editorial content request"
}
object LicenseEditorialContentResult
{
  "type": "object",
  "example": {
    "download": {
      "url": "https://s3-eu-west-1.amazonaws.com/api-downloads.rexfeatures.com/[random-characters].jpg?Expires=1524717323"
    },
    "editorial_id": "69656358",
    "allotment_charge": 1
  },
  "required": [
    "editorial_id"
  ],
  "properties": {
    "error": {
      "type": "string"
    },
    "download": {
      "$ref": "#/components/schemas/Url",
      "description": "Information that is needed to download the image"
    },
    "editorial_id": {
      "type": "string",
      "description": "Editorial ID"
    },
    "allotment_charge": {
      "type": "integer",
      "description": "For pre-paid plans, how many credits were used for the item license"
    }
  },
  "description": "The response to a licensing request for editorial content"
}
object LicenseEditorialContentResults
{
  "example": {
    "data": [
      {
        "download": {
          "url": "https://s3-eu-west-1.amazonaws.com/api-downloads.rexfeatures.com/[random-characters].jpg?Expires=1524717323"
        },
        "editorial_id": "69656358",
        "allotment_charge": 1
      }
    ],
    "page": 1,
    "per_page": 1,
    "total_count": 12
  },
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LicenseEditorialContentResult"
      },
      "description": "License results"
    },
    "page": {
      "type": "integer",
      "description": "Current page of the response"
    },
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Error"
      },
      "description": "Error list; appears only if there was an error"
    },
    "message": {
      "type": "string",
      "description": "Optional error message"
    },
    "per_page": {
      "type": "integer",
      "description": "Number of results per page"
    },
    "total_count": {
      "type": "integer",
      "description": "Total count of all results"
    }
  },
  "description": "List of editorial license results"
}
object LicenseEditorialVideoContent
{
  "type": "object",
  "example": {
    "size": "original",
    "license": "premier_editorial_video_digital_only",
    "metadata": {
      "purchase_order": "12345"
    },
    "editorial_id": "10679854a"
  },
  "required": [
    "editorial_id",
    "license"
  ],
  "properties": {
    "size": {
      "enum": [
        "original"
      ],
      "type": "string",
      "default": "original",
      "description": "Asset size to download"
    },
    "license": {
      "enum": [
        "premier_editorial_video_digital_only",
        "premier_editorial_video_all_media",
        "premier_editorial_video_all_media_single_territory",
        "premier_editorial_video_comp"
      ],
      "type": "string",
      "description": "License agreement to use for licensing"
    },
    "metadata": {
      "$ref": "#/components/schemas/LicenseRequestMetadata"
    },
    "editorial_id": {
      "type": "string",
      "description": "Editorial ID"
    }
  },
  "description": "Individual editorial video content to license"
}
object LicenseEditorialVideoContentRequest
{
  "type": "object",
  "example": {
    "country": "USA",
    "editorial": [
      {
        "size": "original",
        "license": "premier_editorial_video_digital_only",
        "metadata": {
          "purchase_order": "12345"
        },
        "editorial_id": "10679854a"
      }
    ]
  },
  "required": [
    "country",
    "editorial"
  ],
  "properties": {
    "country": {
      "$ref": "#/components/schemas/ISOCountryCode",
      "example": "USA",
      "description": "Mandatory country code for where the editorial content will be distributed; this value is used for rights checks"
    },
    "editorial": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LicenseEditorialVideoContent"
      },
      "description": "Editorial content to license"
    }
  },
  "description": "License editorial video content request"
}
object LicenseFormat
{
  "type": "object",
  "example": {
    "size": "medium",
    "format": "jpg",
    "media_type": "image",
    "description": "Med",
    "min_resolution": 1000
  },
  "properties": {
    "size": {
      "type": "string",
      "description": "Keyword that details the size of the media, such as hd or sd for video, huge or vector for images"
    },
    "format": {
      "type": "string",
      "description": "Format or extension of the media, such as mpeg for videos or jpeg for images"
    },
    "media_type": {
      "enum": [
        "image",
        "video",
        "audio",
        "editorial"
      ],
      "type": "string",
      "description": "Media type of the license"
    },
    "description": {
      "type": "string",
      "description": "Description of the license"
    },
    "min_resolution": {
      "type": "integer",
      "description": "Width of the media, in pixels, allowed by this license"
    }
  },
  "description": "Description of a license"
}
object LicenseImage
{
  "type": "object",
  "example": {
    "size": "small",
    "price": 12.34,
    "format": "jpg",
    "image_id": "123456789",
    "metadata": {
      "customer_id": "12345",
      "search_term": "dog",
      "geo_location": "US",
      "number_viewed": "15"
    },
    "show_modal": true,
    "subscription_id": "s12345678",
    "editorial_acknowledgement": true
  },
  "required": [
    "image_id"
  ],
  "properties": {
    "size": {
      "enum": [
        "small",
        "medium",
        "huge",
        "custom"
      ],
      "type": "string",
      "description": "Image size to download"
    },
    "price": {
      "type": "number",
      "description": "For revenue-sharing transactions, the final cost to the end customer as a floating-point number in the transaction currency, such as 12.34"
    },
    "format": {
      "enum": [
        "jpg"
      ],
      "type": "string",
      "default": "jpg",
      "description": "(Deprecated) Image format to download"
    },
    "image_id": {
      "type": "string",
      "description": "Image ID"
    },
    "metadata": {
      "$ref": "#/components/schemas/LicenseRequestMetadata"
    },
    "search_id": {
      "type": "string",
      "description": "ID of the search that led to this licensing transaction"
    },
    "show_modal": {
      "type": "boolean",
      "deprecated": true,
      "description": "(Deprecated)"
    },
    "auth_cookie": {
      "$ref": "#/components/schemas/Cookie",
      "description": "Cookie object"
    },
    "subscription_id": {
      "type": "string",
      "description": "ID of the subscription to use for the download."
    },
    "custom_dimensions": {
      "$ref": "#/components/schemas/CustomSizeDimensions"
    },
    "verification_code": {
      "type": "string",
      "deprecated": true,
      "description": "(Deprecated)"
    },
    "editorial_acknowledgement": {
      "type": "boolean",
      "description": "Set to true to acknowledge the editorial agreement"
    }
  },
  "description": "Data required to license an image"
}
object LicenseImageRequest
{
  "type": "object",
  "example": {
    "images": [
      {
        "size": "small",
        "price": 12.34,
        "format": "jpg",
        "image_id": "123456789",
        "metadata": {
          "customer_id": "12345",
          "search_term": "dog",
          "geo_location": "US",
          "number_viewed": "15"
        },
        "show_modal": true,
        "subscription_id": "s12345678",
        "editorial_acknowledgement": true
      }
    ]
  },
  "required": [
    "images"
  ],
  "properties": {
    "images": {
      "type": "array",
      "items": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/LicenseImage"
          },
          {
            "$ref": "#/components/schemas/LicenseImageVector"
          }
        ]
      },
      "maxItems": 50,
      "description": "Images to create licenses for"
    }
  },
  "description": "Image license request data"
}
object LicenseImageResult
{
  "type": "object",
  "example": {
    "price": {
      "local_amount": 12.34,
      "local_currency": "EUR"
    },
    "download": {
      "url": "https://download.shutterstock.com/gatekeeper/[random-characters]/shutterstock_59656357.jpg"
    },
    "image_id": "59656357",
    "allotment_charge": 1
  },
  "required": [
    "image_id"
  ],
  "properties": {
    "error": {
      "type": "string",
      "description": "Error message, appears only if there was an error"
    },
    "price": {
      "$ref": "#/components/schemas/Price",
      "description": "Wholesale price information; only for rev-share partners"
    },
    "download": {
      "$ref": "#/components/schemas/Url",
      "description": "Information that is needed to download the image"
    },
    "image_id": {
      "type": "string",
      "description": "Image ID that was licensed"
    },
    "license_id": {
      "type": "string",
      "description": "ID of the license event"
    },
    "allotment_charge": {
      "type": "integer",
      "description": "Number of credits that this licensing event used"
    }
  },
  "description": "The response to a licensing request for an image"
}
object LicenseImageResultDataList
{
  "example": {
    "data": [
      {
        "download": {
          "url": "https://download.shutterstock.com/gatekeeper/[random-characters]/shutterstock_59656357.jpg"
        },
        "image_id": "59656357",
        "allotment_charge": 1
      }
    ],
    "page": 1,
    "per_page": 5,
    "total_count": 23
  },
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LicenseImageResult"
      },
      "description": "License results"
    },
    "page": {
      "type": "integer",
      "description": "Current page that is returned"
    },
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Error"
      },
      "description": "Error list; appears only if there was an error"
    },
    "message": {
      "type": "string",
      "description": "Server-generated message, if any"
    },
    "per_page": {
      "type": "integer",
      "description": "Number of results per page"
    },
    "total_count": {
      "type": "integer",
      "description": "Total count of all results across all pages"
    }
  },
  "description": "List of information about licensed images"
}
object LicenseImageVector
{
  "type": "object",
  "example": {
    "size": "vector",
    "price": 12.34,
    "format": "eps",
    "image_id": "123456789",
    "metadata": {
      "customer_id": "12345",
      "search_term": "dog",
      "geo_location": "US",
      "number_viewed": "15"
    },
    "show_modal": true,
    "subscription_id": "s12345678",
    "editorial_acknowledgement": true
  },
  "required": [
    "image_id"
  ],
  "properties": {
    "size": {
      "enum": [
        "vector"
      ],
      "type": "string",
      "description": "Image size to download"
    },
    "price": {
      "type": "number",
      "description": "For revenue-sharing transactions, the final cost to the end customer as a floating-point number in the transaction currency, such as 12.34"
    },
    "format": {
      "enum": [
        "eps"
      ],
      "type": "string",
      "default": "eps",
      "description": "(Deprecated) Image format to download"
    },
    "image_id": {
      "type": "string",
      "description": "Image ID"
    },
    "metadata": {
      "$ref": "#/components/schemas/LicenseRequestMetadata"
    },
    "search_id": {
      "type": "string",
      "description": "ID of the search that led to this licensing transaction"
    },
    "show_modal": {
      "type": "boolean",
      "deprecated": true,
      "description": "(Deprecated)"
    },
    "auth_cookie": {
      "$ref": "#/components/schemas/Cookie",
      "description": "Cookie object"
    },
    "subscription_id": {
      "type": "string",
      "description": "ID of the subscription to use for the download."
    },
    "verification_code": {
      "type": "string",
      "deprecated": true,
      "description": "(Deprecated)"
    },
    "editorial_acknowledgement": {
      "type": "boolean",
      "description": "Set to true to acknowledge the editorial agreement"
    }
  },
  "description": "Data required to license an image"
}
object LicenseRequestMetadata
{
  "type": "object",
  "example": {
    "customer_id": "12345",
    "search_term": "dog",
    "geo_location": "US",
    "number_viewed": "15"
  },
  "properties": {},
  "description": "Additional information for license requests for enterprise accounts and API subscriptions, 4 fields maximum; which fields are required is set by the account holder",
  "maxProperties": 4
}
object LicenseSFX
{
  "type": "object",
  "example": {
    "size": "ambisonic",
    "format": "wav",
    "sfx_id": "123456789",
    "metadata": {
      "customer_id": "12345",
      "search_term": "dog",
      "geo_location": "US",
      "number_viewed": "15"
    },
    "show_modal": true,
    "subscription_id": "s12345678"
  },
  "required": [
    "sfx_id",
    "subscription_id"
  ],
  "properties": {
    "format": {
      "enum": [
        "wav",
        "mp3"
      ],
      "type": "string"
    },
    "sfx_id": {
      "type": "string",
      "description": "ID of the sounds effect being licensed"
    },
    "search_id": {
      "type": "string",
      "description": "ID of the search that led to this licensing event"
    },
    "audio_layout": {
      "enum": [
        "ambisonic",
        "5.1",
        "stereo"
      ],
      "type": "string"
    },
    "subscription_id": {
      "type": "string",
      "description": "ID of the subscription to use for the download."
    }
  },
  "description": ""
}
object LicenseSFXRequest
{
  "type": "object",
  "example": {
    "sound_effects": [
      {
        "size": "ambisonic",
        "format": "wav",
        "sfx_id": "123456789",
        "metadata": {
          "customer_id": "12345",
          "search_term": "dog",
          "geo_location": "US",
          "number_viewed": "15"
        },
        "show_modal": true,
        "subscription_id": "s12345678"
      }
    ]
  },
  "required": [
    "sound_effects"
  ],
  "properties": {
    "sound_effects": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LicenseSFX"
      },
      "description": "Sound effects to license for"
    }
  },
  "description": "License sounds effect asset request body"
}
object LicenseSFXResult
{
  "type": "object",
  "example": {
    "sfx_id": "59656357",
    "download": {
      "url": "https://download.shutterstock.com/gatekeeper/[random-characters]/shutterstock_59656357.wav"
    },
    "allotment_charge": 1
  },
  "required": [
    "sfx_id"
  ],
  "properties": {
    "error": {
      "type": "string",
      "description": "Error message, appears only if there was an error"
    },
    "sfx_id": {
      "type": "string",
      "description": "Sound effects ID that was licensed"
    },
    "download": {
      "$ref": "#/components/schemas/Url",
      "description": "Information that is needed to download the sound effects"
    },
    "license_id": {
      "type": "string",
      "description": "ID of the license event"
    },
    "allotment_charge": {
      "type": "integer",
      "description": "Number of credits that this licensing event used"
    }
  },
  "description": "The response to a licensing request for an sound effects"
}
object LicenseSFXResultDataList
{
  "example": {
    "data": [
      {
        "sfx_id": "123456789",
        "download": {
          "url": "https://download.shutterstock.com/gatekeeper/[random-characters]/shutterstock_59656357.mp3"
        },
        "allotment_charge": 1
      }
    ],
    "page": 1,
    "per_page": 5,
    "total_count": 123455
  },
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LicenseSFXResult"
      },
      "description": "Sound effects license results"
    },
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Error"
      },
      "description": "Error list; appears only if there was an error"
    },
    "message": {
      "type": "string",
      "description": "Server-generated message, if any"
    }
  },
  "description": "List of information about licensed sound effects"
}
object LicenseVideo
{
  "type": "object",
  "example": {
    "size": "hd",
    "video_id": "2140697",
    "subscription_id": "s12345678"
  },
  "required": [
    "video_id"
  ],
  "properties": {
    "size": {
      "enum": [
        "web",
        "sd",
        "hd",
        "4k"
      ],
      "type": "string",
      "description": "Size of the video being licensed"
    },
    "price": {
      "type": "number",
      "description": "Retail price amount as a floating-point number in the transaction currency, such as 12.34; only for rev-share partners"
    },
    "metadata": {
      "$ref": "#/components/schemas/LicenseRequestMetadata"
    },
    "video_id": {
      "type": "string",
      "description": "ID of the video being licensed"
    },
    "search_id": {
      "type": "string",
      "description": "ID of the search that led to this licensing event"
    },
    "show_modal": {
      "type": "boolean",
      "deprecated": true,
      "description": "(Deprecated)"
    },
    "auth_cookie": {
      "$ref": "#/components/schemas/Cookie"
    },
    "subscription_id": {
      "type": "string",
      "description": "ID of the subscription used for this license"
    },
    "editorial_acknowledgement": {
      "type": "boolean",
      "description": "Whether or not this item is editorial content"
    }
  },
  "description": "Data required to license a video"
}
object LicenseVideoRequest
{
  "type": "object",
  "example": {
    "videos": [
      {
        "size": "hd",
        "video_id": "2140697",
        "subscription_id": "s12345678"
      }
    ]
  },
  "required": [
    "videos"
  ],
  "properties": {
    "videos": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LicenseVideo"
      },
      "maxItems": 50,
      "description": "Videos to license"
    }
  },
  "description": "List of videos to license"
}
object LicenseVideoResult
{
  "type": "object",
  "example": {
    "price": {
      "local_amount": 12.34,
      "local_currency": "EUR"
    },
    "download": {
      "url": "https://download.shutterstock.com/gatekeeper/[random-characters]/shutterstock_59656357.mp4"
    },
    "video_id": "123456789",
    "allotment_charge": 1
  },
  "required": [
    "video_id"
  ],
  "properties": {
    "error": {
      "type": "string",
      "description": "Potential error that occurred during licensing"
    },
    "price": {
      "$ref": "#/components/schemas/Price",
      "description": "Wholesale price information; only for rev-share partners only"
    },
    "download": {
      "$ref": "#/components/schemas/Url"
    },
    "video_id": {
      "type": "string",
      "description": "ID of the video that was licensed"
    },
    "license_id": {
      "type": "string",
      "description": "ID of the license event"
    },
    "allotment_charge": {
      "type": "integer",
      "description": "Number of credits that this licensing event used"
    }
  },
  "description": "The response to a licensing request for a video"
}
object LicenseVideoResultDataList
{
  "example": {
    "data": [
      {
        "price": {
          "local_amount": 12.34,
          "local_currency": "EUR"
        },
        "download": {
          "url": "https://download.shutterstock.com/gatekeeper/[random-characters]/shutterstock_59656357.mp4"
        },
        "video_id": "123456789",
        "allotment_charge": 1
      }
    ],
    "page": 1,
    "per_page": 5,
    "total_count": 123455
  },
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LicenseVideoResult"
      },
      "description": "License results"
    },
    "page": {
      "type": "integer",
      "description": "Current page that is returned"
    },
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Error"
      },
      "description": "Error list; appears only if there was an error"
    },
    "message": {
      "type": "string",
      "description": "Server-generated message, if any"
    },
    "per_page": {
      "type": "integer",
      "description": "Number of results per page"
    },
    "total_count": {
      "type": "integer",
      "description": "Total count of all results across all pages"
    }
  },
  "description": "List of video license results"
}
object Model
{
  "type": "object",
  "example": {
    "id": "123456789"
  },
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "ID of the model"
    }
  },
  "description": "Information about a human model or property that appears in media; used to search for assets that this model is in"
}
object ModelRelease
{
  "type": "object",
  "example": {
    "id": "123456789X"
  },
  "properties": {
    "id": {
      "type": "string",
      "description": "ID of the model or property release"
    }
  },
  "description": "Model and property release metadata"
}
object MoodList
{
  "type": "object",
  "example": {
    "data": [
      "Action / Sports",
      "Adventure / Discovery",
      "Aerobics / Workout",
      "Aggressive"
    ]
  },
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "List of audio moods"
    }
  },
  "description": "List of audio moods"
}
object OauthAccessTokenResponse
{
  "type": "object",
  "example": {
    "token_type": "Bearer",
    "access_token": "v2/NmQwOTc0NTBiMjA5YzZkY2Q4NTkvMTA4OTg1MDk5L2N1c3RvbWVyLzIvZjB2a0RseGo4Rkt6ZjRmVWJNMm10V2VzcHh1NTBlZWJ6andUQU1NeTVYYnNFTDVWOFRJakItS2RnZTlmbEY1Y3haNWdXLUtYc2JhaXo5djk0V0p2QzZUUWZ4c2FNWm41NkdLYUgyVWlCaVUtQTNVMV9YQWpzd3lpblI3SlZEem8wSG1qQ2NzSkJlX3VQTnNXenBIdkd4SXViVi1rRGJTVENCV0g1U3U0RXRJSV9rSm5lQkl5QXlvbm5JN241UUhv"
  },
  "required": [
    "access_token",
    "token_type"
  ],
  "properties": {
    "expires_in": {
      "type": "integer",
      "description": "Number of seconds before token expires, only present for expiring tokens"
    },
    "token_type": {
      "type": "string",
      "default": "Bearer",
      "description": "Type of token"
    },
    "user_token": {
      "type": "string",
      "description": "Metadata about the access_token, only present for expiring tokens"
    },
    "access_token": {
      "type": "string",
      "description": "Access token that can be used for future requests"
    },
    "refresh_token": {
      "type": "string",
      "description": "A refresh token that can be used to renew the access_token when it expires, only present for expiring tokens"
    }
  },
  "description": "Access token response to client apps"
}
object OauthGetUserAccessTokenRequest
{
  "type": "object",
  "required": [
    "client_id",
    "grant_type"
  ],
  "properties": {
    "code": {
      "type": "string",
      "description": "Response code from the /oauth/authorize flow; required if grant_type=authorization_code"
    },
    "realm": {
      "enum": [
        "customer",
        "contributor"
      ],
      "type": "string",
      "default": "customer",
      "description": "User type to be authorized (usually 'customer')"
    },
    "expires": {
      "type": "boolean",
      "default": false,
      "description": "Whether or not the token expires, expiring tokens come with a refresh_token to renew the access_token"
    },
    "client_id": {
      "type": "string",
      "description": "Client ID (Consumer Key) of your application"
    },
    "grant_type": {
      "enum": [
        "authorization_code",
        "client_credentials",
        "refresh_token"
      ],
      "type": "string",
      "description": "Grant type: authorization_code generates user tokens, client_credentials generates short-lived client grants"
    },
    "client_secret": {
      "type": "string",
      "description": "Client Secret (Consumer Secret) of your application"
    },
    "refresh_token": {
      "type": "string",
      "description": "Pass this along with grant_type=refresh_token to get a fresh access token"
    }
  }
}
object OauthGetUserAccessTokenRequest1
{
  "type": "object",
  "required": [
    "client_id",
    "grant_type"
  ],
  "properties": {
    "code": {
      "type": "string",
      "description": "Response code from the /oauth/authorize flow; required if grant_type=authorization_code"
    },
    "realm": {
      "enum": [
        "customer",
        "contributor"
      ],
      "type": "string",
      "default": "customer",
      "description": "User type to be authorized (usually 'customer')"
    },
    "expires": {
      "enum": [
        "true",
        "false"
      ],
      "type": "string",
      "default": "false",
      "description": "Whether or not the token expires, expiring tokens come with a refresh_token to renew the access_token"
    },
    "client_id": {
      "type": "string",
      "description": "Client ID (Consumer Key) of your application"
    },
    "grant_type": {
      "enum": [
        "authorization_code",
        "client_credentials",
        "refresh_token"
      ],
      "type": "string",
      "description": "Grant type: authorization_code generates user tokens, client_credentials generates short-lived client grants"
    },
    "client_secret": {
      "type": "string",
      "description": "Client Secret (Consumer Secret) of your application"
    },
    "refresh_token": {
      "type": "string",
      "description": "Pass this along with grant_type=refresh_token to get a fresh access token"
    }
  }
}
object Preview
{
  "type": "object",
  "example": {
    "url": "https://public-cdn.ampermusic.com/instruments/previews/roomy_kit_v1.mp3",
    "content_type": "audio/mp3"
  },
  "properties": {
    "url": {
      "type": "string",
      "description": "Url of the instrument's preview file"
    },
    "content_type": {
      "enum": [
        "audio/mp3"
      ],
      "type": "string",
      "description": "Content type of the preview, currently audio/mp3"
    }
  },
  "description": "Preview information"
}
object Price
{
  "type": "object",
  "example": {
    "local_amount": 12.34,
    "local_currency": "EUR"
  },
  "properties": {
    "local_amount": {
      "type": "number",
      "description": "Floating-point amount of the calculated rev-share price in the currency local_currency"
    },
    "local_currency": {
      "type": "string",
      "description": "Currency of the rev-share price that was calculated"
    }
  },
  "description": "Price"
}
object Recommendation
{
  "type": "object",
  "example": {
    "id": "123456789X"
  },
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "Media ID"
    }
  },
  "description": "Media Recommendation"
}
object RecommendationDataList
{
  "example": {
    "data": [
      {
        "id": "123456789X"
      },
      {
        "id": "99379946"
      },
      {
        "id": "133918412"
      }
    ],
    "page": 1,
    "per_page": 5,
    "total_count": 12
  },
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Recommendation"
      },
      "description": "Recommended images"
    },
    "page": {
      "type": "integer",
      "description": "Current page that is returned"
    },
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Error"
      },
      "description": "Error list; appears only if there was an error"
    },
    "message": {
      "type": "string",
      "description": "Server-generated message, if any"
    },
    "per_page": {
      "type": "integer",
      "description": "Number of results per page"
    },
    "total_count": {
      "type": "integer",
      "description": "Total count of all results across all pages"
    }
  },
  "description": "List of recommended images"
}
object RedownloadImage
{
  "type": "object",
  "example": {
    "size": "small"
  },
  "properties": {
    "size": {
      "enum": [
        "small",
        "medium",
        "huge",
        "supersize",
        "vector"
      ],
      "type": "string",
      "description": "Size of the image"
    },
    "show_modal": {
      "type": "boolean",
      "deprecated": true,
      "description": "(Deprecated)"
    },
    "auth_cookie": {
      "$ref": "#/components/schemas/Cookie",
      "deprecated": true,
      "description": "(Deprecated)"
    },
    "verification_code": {
      "type": "string",
      "deprecated": true,
      "description": "(Deprecated)"
    }
  },
  "description": "Data required to redownload an image"
}
object RedownloadVideo
{
  "type": "object",
  "example": {
    "size": "web"
  },
  "properties": {
    "size": {
      "enum": [
        "web",
        "sd",
        "hd",
        "4k"
      ],
      "type": "string",
      "description": "Size of the video"
    },
    "show_modal": {
      "type": "boolean",
      "deprecated": true,
      "description": "(Deprecated)"
    },
    "auth_cookie": {
      "$ref": "#/components/schemas/Cookie",
      "deprecated": true,
      "description": "(Deprecated)"
    },
    "verification_code": {
      "type": "string",
      "deprecated": true,
      "description": "(Deprecated)"
    }
  },
  "description": "Data required to redownload a video"
}
object RemoveCatalogCollectionItem
{
  "type": "object",
  "example": {
    "id": "123X"
  },
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string"
    }
  }
}
object RemoveCatalogCollectionItems
{
  "type": "object",
  "example": {
    "items": [
      {
        "id": "123X"
      }
    ]
  },
  "required": [
    "items"
  ],
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/RemoveCatalogCollectionItem"
      },
      "maxItems": 50,
      "minItems": 1
    }
  }
}
object SFX
{
  "type": "object",
  "example": {
    "id": "123X",
    "media_type": "sfx",
    "contributor": {
      "id": "1234"
    }
  },
  "required": [
    "id",
    "media_type",
    "contributor"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "Shutterstock ID of this sound effect"
    },
    "url": {
      "type": "string",
      "description": ""
    },
    "title": {
      "type": "string",
      "description": "Title of this sound effect"
    },
    "artist": {
      "type": "string",
      "description": "Artist of the sound effect"
    },
    "assets": {
      "$ref": "#/components/schemas/SFXAssets"
    },
    "duration": {
      "type": "number",
      "description": "Duration of this sound effect in seconds"
    },
    "keywords": {
      "type": "array",
      "items": {
        "type": "string",
        "description": "Keyword for this track"
      },
      "description": "List of all keywords for this sound effect"
    },
    "releases": {
      "type": "array",
      "items": {
        "type": "string",
        "description": "Release of this sound effect"
      },
      "description": "List of all releases of this sound effect"
    },
    "added_date": {
      "type": "string",
      "format": "date",
      "description": "Date this sound effect was added to the Shutterstock library"
    },
    "media_type": {
      "type": "string",
      "description": "Media type of this track; should always be \"sfx\""
    },
    "contributor": {
      "$ref": "#/components/schemas/Contributor"
    },
    "description": {
      "type": "string",
      "description": "Description of this sound effect"
    },
    "updated_time": {
      "type": "string",
      "format": "date-time",
      "description": "Time this sound effect was last updated"
    },
    "affiliate_url": {
      "type": "string",
      "description": "Affiliate referral link; appears only for registered affiliate partners"
    }
  },
  "description": "SFX metadata"
}
object SFXAssetDetails
{
  "type": "object",
  "example": {
    "url": "https://cdn.shutterstock.com/shutterstock/sfx/11222/preview_ecom_ster/hand-throw-catch-cellphone.mp3",
    "file_size": 123
  },
  "properties": {
    "url": {
      "type": "string",
      "description": "URL the sound effect is available at"
    },
    "file_size": {
      "type": "integer",
      "description": "File size of the sound effect"
    }
  },
  "description": "Information about a file that is part of an sound effect asset"
}
object SFXAssets
{
  "type": "object",
  "example": {
    "waveform": {
      "url": "https://cdn.shutterstock.com/shutterstock/sfx/11222/preview_ecom_ster/hand-throw-catch-cellphone.mp3",
      "file_size": 123
    },
    "preview_mp3": {
      "url": "https://cdn.shutterstock.com/shutterstock/sfx/11222/preview_ecom_ster/hand-throw-catch-cellphone.mp3",
      "file_size": 123
    }
  },
  "properties": {
    "waveform": {
      "$ref": "#/components/schemas/SFXAssetDetails"
    },
    "preview_mp3": {
      "$ref": "#/components/schemas/SFXAssetDetails"
    }
  },
  "description": "Files that are available as part of an sound effect asset"
}
object SFXDataList
{
  "example": {
    "data": [
      {
        "id": "123X",
        "media_type": "sfx",
        "contributor": {
          "id": "1234X"
        }
      }
    ]
  },
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/SFX"
      },
      "description": "Sound Effects"
    }
  },
  "description": "List of sound effects"
}
object SFXSearchResults
{
  "type": "object",
  "example": {
    "data": [
      {
        "id": "123X",
        "title": "Heavy Duty Interface Feedback",
        "assets": {
          "waveform": {
            "url": "https://cdn.shutterstock.com/shutterstock/sfx/21230/wvfm_img/heavy-duty-interface-feedback.png"
          },
          "preview_mp3": {
            "url": "https://cdn.shutterstock.com/shutterstock/sfx/21230/preview_ecom_ster/heavy-duty-interface-feedback.mp3"
          }
        },
        "added_date": "2022-07-29T00:00:00.000Z",
        "media_type": "sfx",
        "contributor": {
          "id": "321402911"
        },
        "description": "User interface calculations, scanning, thinking, text displayed on screen. Screen gak or garble.",
        "updated_time": "2022-08-04T15:11:15.711Z"
      }
    ],
    "search_id": "e6f84c4c-ffdd-499b-ad89-72c65a896ead",
    "total_count": 14881
  },
  "required": [
    "data",
    "total_count",
    "search_id"
  ],
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/SFX"
      },
      "description": "List of tracks"
    },
    "page": {
      "type": "integer",
      "description": "Current page that is returned"
    },
    "message": {
      "type": "string",
      "description": "Server-generated message, if any"
    },
    "per_page": {
      "type": "integer",
      "description": "Number of results per page"
    },
    "search_id": {
      "type": "string",
      "description": "ID of the search"
    },
    "total_count": {
      "type": "integer",
      "description": "Total count of all results across all pages"
    }
  },
  "description": "Sound effects search results"
}
object SearchEntitiesRequest
{
  "type": "object",
  "example": {
    "text": "Planting flowers is a great way to make springtime more beautiful."
  },
  "required": [
    "text"
  ],
  "properties": {
    "text": {
      "type": "string",
      "maxLength": 100000,
      "minLength": 1,
      "description": "Plain text to extract keywords from"
    }
  },
  "description": "Search entity request data"
}
object SearchEntitiesResponse
{
  "example": {
    "keywords": [
      "planting",
      "flowers",
      "springtime",
      "beautiful"
    ]
  },
  "properties": {
    "keywords": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The top keywords from the submitted text"
    }
  },
  "description": "The response to a request for keyword analysis"
}
object SearchImage
{
  "type": "object",
  "example": {
    "sort": "popular",
    "query": "cat",
    "license": [
      "editorial"
    ]
  },
  "properties": {
    "page": {
      "type": "integer",
      "default": 1,
      "minimum": 1,
      "description": "Page number"
    },
    "safe": {
      "type": "boolean",
      "default": true,
      "description": "Enable or disable safe search"
    },
    "sort": {
      "enum": [
        "newest",
        "popular",
        "relevance",
        "random"
      ],
      "type": "string",
      "default": "popular",
      "description": "Sort by"
    },
    "view": {
      "enum": [
        "minimal",
        "full"
      ],
      "type": "string",
      "default": "minimal",
      "description": "Amount of detail to render in the response"
    },
    "color": {
      "type": "string",
      "description": "Specify either a hexadecimal color in the format '4F21EA' or 'grayscale'; the API returns images that use similar colors"
    },
    "model": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Show image results with the specified model IDs"
    },
    "query": {
      "type": "string",
      "description": "One or more search terms separated by spaces; you can use NOT to filter out images that match a term"
    },
    "width": {
      "type": "integer",
      "description": "(Deprecated; use width_from and width_to instead) Show images with the specified width"
    },
    "fields": {
      "type": "string",
      "description": "Fields to display in the response; see the documentation for the fields parameter in the overview section",
      "uniqueItems": true
    },
    "height": {
      "type": "integer",
      "description": "(Deprecated; use height_from and height_to instead) Show images with the specified height"
    },
    "region": {
      "anyOf": [
        {
          "type": "string",
          "format": "country-code-2"
        },
        {
          "type": "string",
          "format": "ipv4"
        }
      ],
      "description": "Raise or lower search result rankings based on the result's relevance to a specified region; you can provide a country code or an IP address from which the API infers a country"
    },
    "license": {
      "type": "array",
      "items": {
        "enum": [
          "commercial",
          "editorial",
          "enhanced"
        ],
        "type": "string"
      },
      "default": [
        "commercial"
      ],
      "description": "Show only images with the specified license"
    },
    "category": {
      "type": "string",
      "description": "Show images with the specified Shutterstock-defined category; specify a category name or ID"
    },
    "language": {
      "$ref": "#/components/schemas/Language",
      "description": "Set query and result language (uses Accept-Language header if not set)"
    },
    "per_page": {
      "type": "integer",
      "default": 20,
      "maximum": 20,
      "minimum": 0,
      "description": "Number of results per page"
    },
    "width_to": {
      "type": "integer",
      "description": "Show images with the specified width or smaller, in pixels"
    },
    "authentic": {
      "type": "boolean",
      "description": "Show only authentic images"
    },
    "height_to": {
      "type": "integer",
      "description": "Show images with the specified height or smaller, in pixels"
    },
    "added_date": {
      "type": "string",
      "format": "date",
      "description": "Show images added on the specified date"
    },
    "image_type": {
      "type": "array",
      "items": {
        "enum": [
          "photo",
          "illustration",
          "vector"
        ],
        "type": "string"
      },
      "description": "Show images of the specified type"
    },
    "people_age": {
      "enum": [
        "infants",
        "children",
        "teenagers",
        "20s",
        "30s",
        "40s",
        "50s",
        "60s",
        "older"
      ],
      "type": "string",
      "description": "Show images that feature people of the specified age category"
    },
    "width_from": {
      "type": "integer",
      "description": "Show images with the specified width or larger, in pixels"
    },
    "contributor": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Show images with the specified contributor names or IDs, allows multiple"
    },
    "height_from": {
      "type": "integer",
      "description": "Show images with the specified height or larger, in pixels"
    },
    "orientation": {
      "enum": [
        "horizontal",
        "vertical"
      ],
      "type": "string",
      "description": "Show image results with horizontal or vertical orientation"
    },
    "aspect_ratio": {
      "type": "number",
      "description": "Show images with the specified aspect ratio, using a positive decimal of the width divided by the height, such as 1.7778 for a 16:9 image"
    },
    "people_gender": {
      "enum": [
        "male",
        "female",
        "both"
      ],
      "type": "string",
      "description": "Show images with people of the specified gender"
    },
    "people_number": {
      "type": "integer",
      "maximum": 4,
      "minimum": 0,
      "description": "Show images with the specified number of people"
    },
    "added_date_end": {
      "type": "string",
      "format": "date",
      "description": "Show images added before the specified date"
    },
    "added_date_start": {
      "type": "string",
      "format": "date",
      "description": "Show images added on or after the specified date"
    },
    "aspect_ratio_max": {
      "type": "number",
      "minimum": 0,
      "description": "Show images with the specified aspect ratio or lower, using a positive decimal of the width divided by the height, such as 1.7778 for a 16:9 image"
    },
    "aspect_ratio_min": {
      "type": "number",
      "minimum": 0,
      "description": "Show images with the specified aspect ratio or higher, using a positive decimal of the width divided by the height, such as 1.7778 for a 16:9 image"
    },
    "people_ethnicity": {
      "type": "array",
      "items": {
        "enum": [
          "african",
          "african_american",
          "black",
          "brazilian",
          "chinese",
          "caucasian",
          "east_asian",
          "hispanic",
          "japanese",
          "middle_eastern",
          "native_american",
          "pacific_islander",
          "south_asian",
          "southeast_asian",
          "other",
          "NOT african",
          "NOT african_american",
          "NOT black",
          "NOT brazilian",
          "NOT chinese",
          "NOT caucasian",
          "NOT east_asian",
          "NOT hispanic",
          "NOT japanese",
          "NOT middle_eastern",
          "NOT native_american",
          "NOT pacific_islander",
          "NOT south_asian",
          "NOT southeast_asian",
          "NOT other"
        ],
        "type": "string"
      },
      "description": "Show images with people of the specified ethnicities, or start with NOT to show images without those ethnicities"
    },
    "spellcheck_query": {
      "type": "boolean",
      "default": true,
      "description": "Spellcheck the search query and return results on suggested spellings"
    },
    "contributor_country": {
      "oneOf": [
        {
          "type": "array",
          "items": {
            "type": "string",
            "format": "country-code-2"
          }
        },
        {
          "type": "array",
          "items": {
            "type": "string",
            "format": "negated-country-code-2"
          }
        }
      ],
      "description": "Show images from contributors in one or more specified countries, or start with NOT to exclude a country from the search"
    },
    "keyword_safe_search": {
      "type": "boolean",
      "default": true,
      "description": "Hide results with potentially unsafe keywords"
    },
    "people_model_released": {
      "type": "boolean",
      "description": "Show images of people with a signed model release"
    }
  },
  "description": "Data required to search for an image"
}
object SfxUrl
{
  "type": "object",
  "example": {
    "$ref": "#/components/schemas/Url/example"
  },
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "URL that can be used to download the unwatermarked, licensed asset"
    }
  },
  "description": "Sound effect license URL object"
}
object ShortsLoopsStems
{
  "type": "object",
  "example": {
    "loops": {
      "loop_preview_1": {
        "url": "http://picdn.shuttercorp.net/shutterstock/audio/464947/loop_preview_1/loop_preview_1.mp3"
      },
      "loop_preview_2": {
        "url": "http://picdn.shuttercorp.net/shutterstock/audio/464947/loop_preview_2/loop_preview_2.mp3"
      }
    },
    "stems": {
      "stem_preview_1": {
        "url": "http://picdn.shuttercorp.net/shutterstock/audio/464947/stem_preview_1/stem_preview_1.mp3"
      },
      "stem_preview_2": {
        "url": "http://picdn.shuttercorp.net/shutterstock/audio/464947/stem_preview_1/stem_preview_1.mp3"
      }
    },
    "shorts": {
      "short_preview_1": {
        "url": "http://picdn.shuttercorp.net/shutterstock/audio/464947/short_preview_1/short_preview_1.mp3"
      },
      "short_preview_2": {
        "url": "http://picdn.shuttercorp.net/shutterstock/audio/464947/short_preview_2/short_preview_2.mp3"
      }
    }
  },
  "properties": {
    "loops": {
      "additionalProperties": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string"
          }
        }
      }
    },
    "stems": {
      "additionalProperties": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string"
          }
        }
      }
    },
    "shorts": {
      "additionalProperties": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string"
          }
        }
      }
    }
  },
  "description": "Links for Shorts, Loops and Stems previews"
}
object Subscription
{
  "type": "object",
  "example": {
    "id": "s8906043",
    "formats": [
      {
        "size": "small",
        "format": "jpg",
        "media_type": "image",
        "description": "Small",
        "min_resolution": 500
      },
      {
        "size": "medium",
        "format": "jpg",
        "media_type": "image",
        "description": "Med",
        "min_resolution": 1000
      },
      {
        "size": "vector",
        "format": "eps",
        "media_type": "image",
        "description": "Vector"
      }
    ],
    "license": "standard",
    "metadata": {},
    "allotment": {
      "end_time": "2020-05-29T17:10:22.000Z",
      "start_time": "2020-05-29T17:10:22.000Z",
      "downloads_left": 5,
      "downloads_limit": 10
    },
    "asset_type": "images",
    "description": "Annual Subscription",
    "expiration_time": "2020-05-29T17:10:22.000Z"
  },
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique internal identifier for the subscription"
    },
    "formats": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LicenseFormat"
      },
      "description": "List of formats that are licensable for the subscription"
    },
    "license": {
      "type": "string",
      "description": "Internal identifier for the type of subscription"
    },
    "metadata": {
      "$ref": "#/components/schemas/SubscriptionMetadata"
    },
    "allotment": {
      "$ref": "#/components/schemas/Allotment"
    },
    "asset_type": {
      "type": "string",
      "description": "Identifier for the type of assets associated with this subscription (images, videos, audio, editorial)"
    },
    "description": {
      "type": "string",
      "description": "Description of the subscription"
    },
    "expiration_time": {
      "type": "string",
      "format": "date-time",
      "description": "Date the subscription ends"
    },
    "price_per_download": {
      "$ref": "#/components/schemas/Price"
    }
  },
  "description": "Subscription information"
}
object SubscriptionDataList
{
  "example": {
    "data": [
      {
        "id": "s8906043X",
        "formats": [
          {
            "size": "small",
            "format": "jpg",
            "media_type": "image",
            "description": "Small",
            "min_resolution": 500
          },
          {
            "size": "medium",
            "format": "jpg",
            "media_type": "image",
            "description": "Med",
            "min_resolution": 1000
          },
          {
            "size": "vector",
            "format": "eps",
            "media_type": "image",
            "description": "Vector"
          }
        ],
        "license": "standard",
        "metadata": {},
        "allotment": {
          "end_time": "2020-05-29T17:10:22.000Z",
          "start_time": "2020-05-29T17:10:22.000Z",
          "downloads_left": 5,
          "downloads_limit": 10
        },
        "asset_type": "images",
        "description": "Annual Subscription",
        "expiration_time": "2020-05-29T17:10:22.000Z"
      }
    ],
    "page": 1,
    "per_page": 5,
    "total_count": 123455
  },
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Subscription"
      },
      "description": "Subscriptions retrieved from this user"
    },
    "page": {
      "type": "integer",
      "description": "Current page that is being queried"
    },
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Error"
      },
      "description": "Error list; appears only if there was an error"
    },
    "message": {
      "type": "string",
      "description": "Optional error message"
    },
    "per_page": {
      "type": "integer",
      "description": "Amount of subscriptions to show per page"
    },
    "total_count": {
      "type": "integer",
      "description": "Total number of subscriptions for this user"
    }
  },
  "description": "List of subscriptions"
}
object SubscriptionMetadata
{
  "type": "object",
  "example": {
    "job": {
      "name": "client_name",
      "is_required": true
    },
    "other": {
      "name": "custom_value",
      "is_required": false
    },
    "client": {
      "name": "purchase_order",
      "is_required": false
    }
  },
  "description": "Subscription metadata; different for each customer"
}
Load more schemas