List Destinations

get https://app.mk.io/api/v1/projects/:project_name/media/destinations

List destinations on the specified project. To learn more about destinations, read Destinations.

Listing, Sorting and Filtering Destinations

This endpoint returns the list of destinations in the specified project.

Sorting

The results from this endpoint can be ordered using the $orderby query parameter. Specify a list of field names, separated by commas where each one can optionally specify asc or desc.

Sorting is valid on the following fields: created, createdBy, displayName, id, labels, name, status/state, updated, updatedBy

Filtering

There are two ways to filter the set of returned destinations from this endpoint - the first is to use the $filter query parameter, the second is to use the $label_key and $label query parameters.

The $filter query parameter allows for destinations to be filtered on the basis of fields in the schema using OData query syntax. See this document for more details on the syntax used.

Filters are valid on the following fields: created, createdBy, createdByEmail, createdByName, displayName, id, labels, name, status/state, updated, updatedBy, updatedByEmail, updatedByName

$label_key and $label are specific to querying destinations based on their labels. Labels are a set of key-value pairs that can be used to identify destinations with any arbitrary metadata you want, specifically for the purpose of retrieving relevant subsets of destinations.

Examples:

?$top=10 - Returns only the first 10 destinations from the list.

?$orderby=name desc - Sorts destinations by name in descending order.

?$filter=name eq 'descriptive name' - Returns destinations that match the provided name.

?$orderby=created desc - Sorts destinations by creation date in descending order.

?$filter=created ge 2021-01-01T00:00:00Z - Returns destinations created after January 1, 2021.

?$label=studio=paravalley - Returns destinations with the label studio set to paravalley.

?$label=release-date~2023 - Returns destinations with the label release-date set to a value that contains 2023.

?$label_key=studio&label_key=release-date - Returns destinations with any value set for the studio label and the release-date label.

RBAC Capability Required: flow.destination.get

Authentication

Authorization Bearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Path parameters

project_name string Required

Query parameters

$orderby string Optional
Specifies the key by which the result collection should be ordered.
$filter string Optional
Restricts the set of items returned.
$top string Optional
Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n.
$skiptoken string Optional
Specifies a start offset to support paginated results. Use @odata.nextLink in the result object to enumerate the collection - it will be present only if there's more than one page of entities.
$label_key string Optional
Filters the set to the specified label key. If multiple $label_keys are specified, matching items must have all labels.
$label string Optional
Filters the set to the specified label key/value pair. Supports equality, inequality, and inexact matching. If multiple values are provided for the same key, items matching either value will be returned.

Response

200 List of destinations
@odata.nextLinkstringOptional
@odata.nextLink URL if the page length and number of items match.
supplementalobjectListResponseSupplementalSchemaRequired
Supplemental info
Show 5 propertiesHide 5 properties
countintegerRequired
Number of items returned
kindstringRequired
Type of items in the list
operationstringRequired
Operation type. Should always say 'list'
paginationobjectPaginationInfoSchemaRequired
Pagination info
Show 4 propertiesHide 4 properties
endintegerRequired
Position of the last item in the list
recordsintegerRequired
Total number of items returned in the list
startintegerRequired
Position of the first item in the list
totalintegerRequired
Total number of items in the project
subscriptionobjectProjectInfoSchemaOptional
Project info
Show 2 propertiesHide 2 properties
idstringRequired
Project ID
namestringRequired
Project name
valuelist of objectsDestinationGetSchemaRequired
A list of Destinations.
Show 4 propertiesHide 4 properties
kindstringRequired
The kind of record.
metadataobjectMetadataSchemaRequired
Destination metadata.
Show 10 propertiesHide 10 properties
createdstringOptionalformat: date-time
The time when the resource was created
createdBystringOptionalformat: uuid
ID of the user who created the resource
createdByEmailstringOptional
Email of the user who created the resource
displayNamestringOptional
The display name of the resource
idstringRequiredformat: uuid
The ID of the resource
labelsmap from strings to stringOptional
A dictionary of labels associated with the resource
Show value schemaHide value schema
[any key]string
namestringOptional
The name of the resource
updatedstringOptionalformat: date-time
The time when the resource was last updated
updatedBystringOptionalformat: uuid
ID of the user who last updated the resource
updatedByEmailstringOptional
Email of the user who last updated the resource
specobjectDestinationBodySpecRequired
Destination specification.
Show 3 propertiesHide 3 properties
aquilaSourceIdstringOptional1-32 characters
The ID of an Aquila source to be used as the destination for a flow.
networkNamestringOptionalpattern: ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$
Name of the <glossary:network> that this destination is available on. Only <glossary:flow>s that can reach this network will be able to use this destination.
transportobjectTransportSpecJsonFragmentOptional
Details of the <glossary:transport> that the content will be carried on. To learn more about the kinds of transport that can be configured, read Set up transports on sources and destinations.
Show 16 propertiesHide 16 properties
allowListlist of stringsOptional

List of IP addresses that are allowed to connect, if the transport type supports it.

The following transport types can use the allowList field: SRTListener.

encryptionStandardenumOptionalDefaults to None

Encryption standard for the transport, if the transport type supports it.

The following transport types can use the encryptionStandard field: SRTCaller, SRTListener. This field cannot be modified, only set during creation.

Allowed values:NoneAES128AES192AES256
ipResourceobjectIpResourceJsonFragmentOptional

Add an IP resource reservation for the transport. This is necessary for <glossary:source>s and <glossary:destination>s that need to access a <<glossary:SaaS site>> through a public IP address or public URL.

The following transport types can use the ipResource field: SRTListener. This field cannot be modified, only set during creation.

Show 1 propertyHide 1 property
typeenumRequired

Type of IP resource reservation:

  • External means reserve a public IP address,
  • Internal means reserve an internal IP address (please contact MediaKind personnel for usage), and
  • None means don't try to reserve an IP resource.

Transports between on-prem devices don't need to explicitly reserve an IP address.

Allowed values:NoneExternalInternal
latencydoubleOptionalDefaults to 0.5

Minimum Latency, in seconds, for the transport, if the transport type supports it.

The following transport types can use the latency field: SRTCaller, SRTListener. This field cannot be modified, only set during creation.

maxBitrateintegerOptionalDefaults to 30000000

Maximum bitrate, in bits per second, expected through each individual connection to the Listener.

The following transport types can use the maxBitrate field: SRTCaller, SRTListener. This field cannot be modified, only set during creation.

maxConnectionsintegerOptionalDefaults to 10

Maximum number of connections for a Listener destination. Overrides the flow output maxConnections setting if present.

The following transport types can use the maxConnections field: SRTCaller, SRTListener. This field cannot be modified, only set during creation.

maxOverheadBandwidthintegerOptional5 to 100Defaults to 100

Maximum Overhead Bandwidth, as an integer (e.g., 100), for the transport, if the transport type supports it.

The following transport types can use the maxOverheadBandwidth field: SRTCaller, SRTListener. This field cannot be modified, only set during creation.

passPhrasestringOptionalDefaults to

Password phrase for the transport, if the transport type supports it.

The following transport types can use the passPhrase field: SRTCaller, SRTListener.

passwordstringOptional

Password for HLS pull authentication.

For sources, this field can be updated via PATCH when the transport type is HLSPullInput. For all other transport types, it can only be set during creation.

portintegerOptionalDefaults to 5000

Port for the transport, if the transport type supports it.

The following transport types need the port field: SRTListener. This field cannot be modified, only set during creation.

streamIdstringOptionalDefaults to

The SRT stream ID sent by the caller during the SRT handshake. Used by the listener to identify or route the stream. Optional.

The following transport types can use the streamId field: SRTCaller. This field cannot be modified, only set during creation.

streamKeystringOptionalDefaults to

The RTMP stream key (appended to the URL when connecting).

The following transport types need the streamKey field: RTMPPushOutput. This field cannot be modified, only set during creation.

typeenumRequired
Type of transport. This field cannot be modified, only set during creation.
Allowed values:UDPSDISRTCallerSRTListenerHLSPullInputRTMPPushOutput
urlstringOptional

The URL for the transport, if the transport type supports it.

The following transport types need the url field: SRTCaller, UDP, SDI, HLSPullInput, RTMPPushOutput.

For sources, this field can be updated via PATCH when the transport type is SRTCaller or HLSPullInput. For all other transport types, and for destinations, it can only be set during creation.

urlslist of stringsOptionalDeprecated
DEPRECATED: Use url instead. This is provided for backwards compatibility and will be removed in a future release. If urls is used, only the first URL will be considered. If both url and urls are provided, url takes precedence.
userstringOptional

Username for HLS pull authentication.

For sources, this field can be updated via PATCH when the transport type is HLSPullInput. For all other transport types, it can only be set during creation.

statusobjectDestinationStatusSchemaRequired
Destination status.
Show 3 propertiesHide 3 properties
networkDisplayNamestringOptional
The display name of the network this destination is available on.
stateenumOptional
Indicates if the destination is currently in use by any active <glossary:flow>s.
Allowed values:InactiveActive
transportobjectTransportStatusJsonFragmentOptional
Transport status information for the destination.
Show 1 propertyHide 1 property
urlslist of stringsOptional

The URLs configured or allocated/discovered for the transport.

Where the spec.transport.url field is supported by the transport type (e.g. an SRTCaller), the urls field will contain that data. Where the system automatically allocates/discovers one or more URLs (e.g. an SRTListener), the urls field will contain that data.

Errors

400 Bad Request
errorobjectErrorDetailRequired
Pertinent information about the error
Show 3 propertiesHide 3 properties
codestringRequired
The error code.
detailstringRequired
The error message.
extraDetailmap from strings to anyOptional
Extra information regarding this error.
Show value schemaHide value schema
[any key]any
refstringRequired
A reference to the request that caused the error.
statusintegerRequired
The HTTP status code
401 Unauthorized
errorobjectErrorDetailRequired
Pertinent information about the error
Show 3 propertiesHide 3 properties
codestringRequired
The error code.
detailstringRequired
The error message.
extraDetailmap from strings to anyOptional
Extra information regarding this error.
Show value schemaHide value schema
[any key]any
refstringRequired
A reference to the request that caused the error.
statusintegerRequired
The HTTP status code
403 Forbidden
errorobjectErrorDetailRequired
Pertinent information about the error
Show 3 propertiesHide 3 properties
codestringRequired
The error code.
detailstringRequired
The error message.
extraDetailmap from strings to anyOptional
Extra information regarding this error.
Show value schemaHide value schema
[any key]any
refstringRequired
A reference to the request that caused the error.
statusintegerRequired
The HTTP status code
404 Not Found
errorobjectErrorDetailRequired
Pertinent information about the error
Show 3 propertiesHide 3 properties
codestringRequired
The error code.
detailstringRequired
The error message.
extraDetailmap from strings to anyOptional
Extra information regarding this error.
Show value schemaHide value schema
[any key]any
refstringRequired
A reference to the request that caused the error.
statusintegerRequired
The HTTP status code
429 Too Many Requests
errorobjectErrorDetailRequired
Pertinent information about the error
Show 3 propertiesHide 3 properties
codestringRequired
The error code.
detailstringRequired
The error message.
extraDetailmap from strings to anyOptional
Extra information regarding this error.
Show value schemaHide value schema
[any key]any
refstringRequired
A reference to the request that caused the error.
statusintegerRequired
The HTTP status code
500 Internal Server Error
errorobjectErrorDetailRequired
Pertinent information about the error
Show 3 propertiesHide 3 properties
codestringRequired
The error code.
detailstringRequired
The error message.
extraDetailmap from strings to anyOptional
Extra information regarding this error.
Show value schemaHide value schema
[any key]any
refstringRequired
A reference to the request that caused the error.
statusintegerRequired
The HTTP status code