Skip to main content

Mux

Mux is a video API platform for building and managing video experiences, covering asset management, live streaming, playback controls, and delivery. Its REST API exposes resources such as assets, live streams, playback IDs, direct uploads, URL signing keys, playback restrictions, and transcription vocabularies. This connector lets you ingest Mux resources into Nexla and push records from Nexla back to Mux to create and update those resources.

Mux icon

Power end-to-end data operations for your Mux API with Nexla. Our bi-directional Mux connector is purpose-built for Mux, 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 Mux or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Mux 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 Mux credential, you need a Mux Access Token ID and Secret Key. Mux authenticates API requests with HTTP Basic Authentication, using the Access Token ID as the username and the Secret Key as the password. Access tokens are scoped to a single Mux environment, so create the token in the environment whose data you intend to move.

To obtain your Mux API credentials, follow these steps:

  1. Sign in to the Mux Dashboard with an administrator account. Only admin users can create and manage access tokens.

  2. Navigate to Settings > Access Tokens, or go directly to https://dashboard.mux.com/settings/access-tokens.

  3. Confirm that the environment selector at the top of the dashboard is set to the environment you want to work with, then click Generate new token.

  4. Select the permissions the token should have:

    • Read & Write — allows creating and modifying resources; recommended for most integrations that both read from and write to Mux.
    • Read Only — restricts the token to GET requests, suitable for source-only ingestion flows.
    • System Write — required only for creating signed tokens for secure video playback.
  5. Enter a descriptive name for the token (for example, "Nexla Integration") so it is easy to identify later, then click Generate token.

  6. Copy the Access Token ID and Secret Key shown on the confirmation screen. Mux stores only a hash of the Secret Key, so it cannot be recovered after you leave this page — record it immediately and store it securely.

The Access Token ID and Secret Key are combined and Base64-encoded to form the Basic Authentication header that Mux requires on every request to https://api.mux.com. Because the Secret Key grants access to your Mux account, keep it confidential and never embed it in client-side code — all Mux API calls should originate from a trusted server environment. If a token is compromised, revoke it from the Access Tokens settings page and generate a new one. For complete details on authentication and available endpoints, see the Mux API documentation.

Authenticate

Credentials required

FieldRequiredSecretDescription
Mux Access Token IDYesNoYour Mux Access Token ID (used as the Basic Auth username).
Mux Secret KeyYesYesYour Mux Secret Key (used as the Basic Auth password).
Base URLYesNoThe base URL for the Mux API.

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 Mux Access Token ID in the Mux Access Token ID field. This value is used as the username for HTTP Basic Authentication.

  4. Enter your Mux Secret Key in the Mux Secret Key field. This value is used as the password for HTTP Basic Authentication and is stored securely.

  5. Enter the API host in the Base URL field. In most cases this is the default, https://api.mux.com.

    The Mux Secret Key cannot be recovered after it is generated. If it is lost or compromised, revoke the token from Settings > Access Tokens in the Mux Dashboard and generate a new one, then update this credential.

    For complete information about authentication and available endpoints, see the Mux API documentation.

  6. 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 Mux connector tile, then select the credential that will be used to connect to Mux, and click Next; or, create a new Mux 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 Mux 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 assets

Retrieve a list of video assets from Mux.

  • Optional query parameters — Limit, Page, Cursor, Live Stream Id, and Upload Id — let you filter and page through the assets returned by this endpoint.

[Rest API] Retrieve an Asset

Retrieves details of a specific video asset by ID.

  • Supply the asset Id to fetch the details of a single asset.

[Rest API] List live streams

Retrieves a list of live streams from the Mux API with optional filtering and pagination.

  • Optional query parameters — Limit, Page, Stream Key, and Status — let you filter and page through the live streams returned by this endpoint.

[Rest API] Retrieve a live stream

Returns the details of a specific live stream by ID.

  • Supply the live stream Id to fetch the details of a single live stream.

[Rest API] List Playback IDs

Returns a paginated list of playback IDs in the account.

  • This endpoint is paginated; Nexla automatically pages through the results to retrieve all available playback IDs.

[Rest API] Retrieve an asset or live stream ID

Looks up the asset or live stream ID associated with a specific playback ID.

  • Supply the playback Id to resolve the asset or live stream it belongs to.

[Rest API] List Playback Restrictions

Returns a paginated list of playback restrictions in the account.

  • This endpoint is paginated; Nexla automatically pages through the results to retrieve all available playback restrictions.

[Rest API] List direct uploads

Retrieve a list of all direct uploads for the Mux account.

  • Optional Limit and Page query parameters let you control the number of direct uploads returned per request.

[Rest API] List URL signing keys

Retrieves a list of all URL signing keys for the Mux account.

  • Optional Limit and Page query parameters let you control the number of signing keys returned per request.

[Rest API] List Signing Keys

Returns a paginated list of signing keys in the account.

  • This endpoint is paginated; Nexla automatically pages through the results to retrieve all available signing keys.

[Rest API] List Transcription Vocabularies

Retrieves a list of all transcription vocabularies configured in your Mux account.

  • Optional Limit and Page query parameters let you control the number of transcription vocabularies returned per request.

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

Mux data sources can also be manually configured to ingest data from any valid Mux 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 Mux 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 Mux destination, and select the Send to Destination option from the menu. Select the Mux connector from the list of available destination connectors, then select the credential that will be used to connect to Mux, and click Next; or, create a new Mux 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 Mux 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] Create an Asset

Creates a new video asset from an upload, live stream, or external URL.

  • Each record from your Nexset is sent as a JSON request body describing the asset to create.

[Rest API] Update an Asset

Updates metadata and passthrough data for a video asset.

  • Provide the asset Id to identify the asset to update; each record is sent as a JSON request body with the fields to change.

[Rest API] Create Asset Playback ID

Creates a new playback ID for an asset with optional DRM configuration.

  • Provide the Asset Id to identify the asset that the new playback ID will belong to.

[Rest API] Update Asset MP4 Support

Updates MP4 support settings for an asset.

  • Provide the Asset Id to identify the asset whose MP4 support settings will be updated.

[Rest API] Update Asset Master Access

Updates master access settings for an asset.

  • Provide the Asset Id to identify the asset whose master access settings will be updated.

[Rest API] Create Asset Static Rendition

Creates a static rendition for an asset at a specified resolution.

  • Provide the Asset Id to identify the asset for which the static rendition will be created.

[Rest API] Create Asset Track

Creates a new text or audio track for an asset with specified type and language.

  • Provide the Asset Id and track details such as Track URL, Track Type, Language Code, and Track Name to add the new track.

[Rest API] Update Asset Track

Updates properties of an existing asset track.

  • Provide the Asset Id and Track Id to identify the track to update.

[Rest API] Create a live stream

Creates a new live stream with configurable playback policies, latency mode, and other settings.

  • Each record from your Nexset is sent as a JSON request body describing the live stream to create.

[Rest API] Update a live stream

Updates configuration settings for an existing live stream.

  • Provide the live stream Id to identify the live stream to update; each record is sent as a JSON request body with the fields to change.

[Rest API] Complete a live stream

Manually transition a live stream from active to idle and trigger asset creation.

  • Provide the Live Stream ID to identify the live stream to complete.

[Rest API] Create a simulcast target for a live stream

Create a simulcast target for a live stream.

  • Provide the Live Stream Id to identify the live stream the simulcast target will be added to.

[Rest API] Create Direct Upload

Creates a new direct upload URL for uploading video files directly to Mux.

  • Optional Timeout, CORS Origin, and Test Mode settings control how long the upload URL is valid, which origins may use it, and whether a test upload is created.

[Rest API] Cancel Direct Upload

Cancel a direct upload.

  • Provide the Direct Upload Id to identify the direct upload to cancel.

[Rest API] Create URL Signing Key

Creates a new URL signing key for securing video playback URLs.

  • Each record from your Nexset triggers creation of a new URL signing key. This endpoint requires an access token with System Write permission.

[Rest API] Create Playback Restriction

Create a new playback restriction (domain allowlist, user-agent rules) to protect content.

  • Each record from your Nexset is sent as a JSON request body describing the playback restriction to create.

[Rest API] Update Playback Restriction

Update an existing playback restriction.

  • Provide the Playback Restriction Id to identify the playback restriction to update.

[Rest API] Create Transcription Vocabulary

Create a custom transcription vocabulary to improve automated caption accuracy for domain-specific terms.

  • Each record from your Nexset is sent as a JSON request body describing the transcription vocabulary to create.

[Rest API] Update a transcription vocabulary

Update a transcription vocabulary.

  • Provide the Transcription Vocabulary Id to identify the transcription vocabulary to update.

Manual configuration

Mux destinations can also be manually configured to send data to any valid Mux 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.

Mux APIs expect JSON request bodies for create and update operations. For update operations, include the ID of the object to be updated in the endpoint URL path.

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 Mux endpoint, open the destination resource menu, and select Activate.

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