Skip to main content

Shutterstock

Shutterstock is a global creative platform that provides royalty-free images, videos, and music through its content APIs. The Shutterstock API lets you search and browse the media catalog, retrieve category and metadata reference lists, license assets against a subscription, and manage image collections. Nexla connects to the Shutterstock v2 REST API so you can ingest catalog and account data as a source and drive licensing and collection operations as a destination.

Shutterstock icon

Power end-to-end data operations for your Shutterstock API with Nexla. Our bi-directional Shutterstock connector is purpose-built for Shutterstock, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Shutterstock or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Shutterstock workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

Before creating a Shutterstock credential, you need a Shutterstock account with API access and an API token. The Shutterstock API authenticates requests with an OAuth token that is sent as a Bearer token in the Authorization header. You generate this token from a registered application in your Shutterstock account.

To obtain your Shutterstock API token, follow these steps:

  1. Sign in to your account at shutterstock.com using your account credentials.

  2. Open your account page and click Developers to access the developer area.

  3. On the Developers page, click Create new app and provide a name for your application. Each application is issued a consumer key and a consumer secret.

  4. From your apps page, use the token generator by clicking Generate token for your application, and follow the prompts to authorize the requested scopes.

  5. Copy the generated API token and store it securely. This is the token you will supply to Nexla.

The token grants access to Shutterstock resources based on the scopes and subscription associated with your account. Licensing endpoints consume credits from your subscription, so ensure your account has an appropriate media subscription before running licensing flows. If your token is compromised, regenerate it from your Shutterstock apps page. For detailed information about authentication and available endpoints, see the Shutterstock API Reference and the Shutterstock authentication documentation.

Authenticate

Credentials required

FieldRequiredSecretDescription
API KeyYesYesShutterstock API token used as a Bearer credential.

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

  2. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  3. Enter your Shutterstock API token in the API Key field. This is the OAuth token you generated in Prerequisites. Nexla sends it as a Bearer token in the Authorization header for all API requests.

    The API token grants access to your Shutterstock account and should be treated as sensitive information. If your token is compromised, regenerate it from your Shutterstock apps page.

    For detailed information about authentication and available endpoints, see the Shutterstock API Reference.

  4. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Shutterstock connector tile, then select the credential that will be used to connect to Shutterstock, and click Next; or, create a new Shutterstock credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Shutterstock endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

[Rest API] List User Subscriptions

This endpoint template retrieves the subscriptions associated with the authenticated Shutterstock user. Use it to check which subscriptions and credits are available before licensing images, videos, or audio.

  • The endpoint returns the list of user subscriptions from the /v2/user/subscriptions endpoint. Results are paginated, and Nexla automatically follows pages to retrieve the full set.

For detailed information about user subscriptions and response fields, see the Shutterstock API Reference.

[Rest API] List User Details

This endpoint template retrieves account details for the authenticated Shutterstock user. Use it to confirm the identity and account context associated with your API token.

  • The endpoint returns the user record from the /v2/user endpoint as a single JSON object.

For detailed information about user details and response fields, see the Shutterstock API Reference.

[Rest API] List Images Categories

This endpoint template retrieves the list of image categories defined by Shutterstock. Use it to build reference data or to constrain image searches to specific categories.

  • The endpoint returns image categories from the /v2/images/categories endpoint as a single response.

For detailed information about image categories and response fields, see the Shutterstock API Reference.

[Rest API] List Images Search

This endpoint template searches the Shutterstock image catalog. Use it to retrieve image results matching your search criteria for analysis, curation, or downstream integration.

  • The endpoint queries the /v2/images/search endpoint. Results are paginated, and Nexla automatically follows pages to retrieve the full result set.

For detailed information about image search, query parameters, and response fields, see the Shutterstock API Reference.

[Rest API] List Videos Search

This endpoint template searches the Shutterstock video catalog. Use it to retrieve video results matching your search criteria for analysis, curation, or downstream integration.

  • The endpoint queries the /v2/videos/search endpoint. Results are paginated, and Nexla automatically follows pages to retrieve the full result set.

For detailed information about video search, query parameters, and response fields, see the Shutterstock API Reference.

[Rest API] List Videos Categories

This endpoint template retrieves the list of video categories defined by Shutterstock. Use it to build reference data or to constrain video searches to specific categories.

  • The endpoint returns video categories from the /v2/videos/categories endpoint as a single response.

For detailed information about video categories and response fields, see the Shutterstock API Reference.

[Rest API] List Audio Search

This endpoint template searches the Shutterstock audio catalog. Use it to retrieve music and sound results matching your search criteria for analysis, curation, or downstream integration.

  • The endpoint queries the /v2/audio/search endpoint. Results are paginated, and Nexla automatically follows pages to retrieve the full result set.

For detailed information about audio search, query parameters, and response fields, see the Shutterstock API Reference.

[Rest API] List Audio Genres

This endpoint template retrieves the list of audio genres defined by Shutterstock. Use it to build reference data or to filter audio searches by genre.

  • The endpoint returns audio genres from the /v2/audio/genres endpoint as a single response.

For detailed information about audio genres and response fields, see the Shutterstock API Reference.

[Rest API] List Audio Instruments

This endpoint template retrieves the list of audio instruments defined by Shutterstock. Use it to build reference data or to filter audio searches by instrument.

  • The endpoint returns audio instruments from the /v2/audio/instruments endpoint as a single response.

For detailed information about audio instruments and response fields, see the Shutterstock API Reference.

[Rest API] List Audio Moods

This endpoint template retrieves the list of audio moods defined by Shutterstock. Use it to build reference data or to filter audio searches by mood.

  • The endpoint returns audio moods from the /v2/audio/moods endpoint as a single response.

For detailed information about audio moods and response fields, see the Shutterstock API Reference.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

Shutterstock data sources can also be manually configured to ingest data from any valid Shutterstock API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Shutterstock data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.

Use as a destination

Click the + icon on the Nexset that will be sent to the Shutterstock destination, and select the Send to Destination option from the menu. Select the Shutterstock connector from the list of available destination connectors, then select the credential that will be used to connect to Shutterstock, and click Next; or, create a new Shutterstock credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Shutterstock endpoints. Select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

[Rest API] License Images

This endpoint template licenses one or more images for use, consuming credits from a user's subscription. Use it to automate image licensing based on records from a Nexset.

  • The endpoint sends data as JSON in the request body to the /v2/images/licenses endpoint. Each record from your Nexset is sent as an API request specifying the images to license and the subscription to charge.

Licensing consumes credits from the associated subscription. For detailed information about the request body format and available options, see the Shutterstock API Reference.

[Rest API] License Videos

This endpoint template licenses one or more videos for use, consuming credits from a user's subscription. Use it to automate video licensing based on records from a Nexset.

  • The endpoint sends data as JSON in the request body to the /v2/videos/licenses endpoint. Each record from your Nexset is sent as an API request specifying the videos to license and the subscription to charge.

Licensing consumes credits from the associated subscription. For detailed information about the request body format and available options, see the Shutterstock API Reference.

[Rest API] Create Image Collection

This endpoint template creates a new image collection for organizing and managing curated media groups. Use it to automatically create collections based on records from a Nexset.

  • The endpoint sends data as JSON in the request body to the /v2/images/collections endpoint. Each record from your Nexset is sent as an API request to create a new image collection.

For detailed information about the request body format and available collection properties, see the Shutterstock API Reference.

[Rest API] Update Image Collection

This endpoint template updates image collection metadata such as name and description. Use it to keep existing collections in sync with records from a Nexset.

  • The endpoint sends data as JSON in the request body to the /v2/images/collections/{id} endpoint using the PUT method. Include the collection ID at the end of the URL so that the correct collection is updated.

For detailed information about the request body format and updatable collection properties, see the Shutterstock API Reference.

[Rest API] Delete Image Collection

This endpoint template deletes an image collection and its associated organizational data. Use it to remove collections based on records from a Nexset.

  • The endpoint issues a DELETE request to the /v2/images/collections/{id} endpoint. Include the collection ID at the end of the URL so that the correct collection is deleted.

Deleting a collection is irreversible. For detailed information about this operation, see the Shutterstock API Reference.

Manual configuration

Shutterstock destinations can also be manually configured to send data to any valid Shutterstock API endpoint. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.

Shutterstock APIs expect JSON format for licensing and collection operations. For update or delete operations, include the ID of the object to be modified at the end of the URL.

Save & activate

Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To send the data to the configured Shutterstock endpoint, open the destination resource menu, and select Activate.

The Nexset data will not be sent to the Shutterstock endpoint until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.