Download OpenAPI specification:
This is the API specification of the M2A Multiviewer API
List all events
| target-account-id required | string (Resource identifier) Example: target-account-id=a79e10d1-bbcb-4297-a246-c3223137bbd0 The id of the owning target account |
| limit | integer Specifies the maximum number of results to return in the response. |
| offset | string The last evaluated page key |
| sortby | string Describes how to sort the items |
{- "links": {
- "next": "/api/multiviewer/v1/events/?offset=eyJwayI6IHsiUyI6ICIwOThjNzM0NC05NjQ5LTQyYWUtYTA5Ny0xMzJjN2ZiYWZjNTMjZTk0MDc3MzMtODY3YS00ZmFkLThkN2EtOTNiMWIyNmM4YjAxIn0sICJzayI6IHsiUyI6ICJvd25lciMwOThjNzM0NC05NjQ5LTQyYWUtYTA5Ny0xMzJjN2ZiYWZjNTMifSwgImVuZF90aW1lIjogeyJTIjogIjIwMjItMDktMTNUMTg6MTU6MjMuNzQ5MDQ2KzAwMDAifX0%3D&target-account-id=098c7344-9649-42ae-a097-132c7fbafc53"
}, - "data": [
- {
- "id": "a79e10d1-bbcb-4297-a246-c3223137bbd0",
- "type": "events",
- "attributes": {
- "end-time": "2024-04-12T11:04:00+00:00",
- "event-description": "My awsome event",
- "event-name": "Multiviewer Testing",
- "on-air-end-time": "2024-04-12T10:49:00+00:00",
- "on-air-start-time": "2024-04-12T09:49:00+00:00",
- "start-time": "2024-04-12T08:49:00+00:00",
- "tile": {
- "type": "encoder",
- "format": "img/jpeg",
- "resources": [
- "mrn:prod:encoders:098c7344-9649-42ae-a097-132c7fbafc53:encoder/8c4c1d2e-a3b4-4c5d-9e6f-1a2b3c4d5e6f",
- "mrn:prod:workflows:098c7344-9649-42ae-a097-132c7fbafc53:workflow-instance/2b3c4d5e-6f7a-4b8c-9d0e-1f2a3b4c5d6e",
- "mrn:prod:stream-endpoint-discovery:098c7344-9649-42ae-a097-132c7fbafc53:endpoint/3c4d5e6f-7a8b-4c9d-0e1f-2a3b4c5d6e7f"
], - "settings": {
- "expires": "2024-01-01T13:30:00+00:00",
- "refresh-interval": 2
}
}
}, - "relationships": {
- "owner": {
- "data": {
- "id": "098c7344-9649-42ae-a097-132c7fbafc53",
- "type": "target-accounts"
}
}
}
}, - {
- "id": "a79e10d1-bbcb-4297-a246-c3223137bbd0",
- "type": "events",
- "attributes": {
- "end-time": "2024-04-12T11:04:00+00:00",
- "event-description": "My awsome event",
- "event-name": "Multiviewer Testing",
- "on-air-end-time": "2024-04-12T10:49:00+00:00",
- "on-air-start-time": "2024-04-12T09:49:00+00:00",
- "start-time": "2024-04-12T08:49:00+00:00",
- "tile": {
- "format": "video/mp4",
- "type": "placeholder",
- "resources": [ ]
}
}, - "relationships": {
- "owner": {
- "data": {
- "id": "098c7344-9649-42ae-a097-132c7fbafc53",
- "type": "target-accounts"
}
}
}
}
]
}List all events with components
| target-account-id required | string (Resource identifier) Example: target-account-id=a79e10d1-bbcb-4297-a246-c3223137bbd0 The id of the owning target account |
| limit | integer Specifies the maximum number of results to return in the response. |
| offset | string The last evaluated page key |
| sortby | string Describes how to sort the items |
{- "links": {
- "next": "/api/multiviewer/v1/events/complete/?offset=eyJwayI6IHsiUyI6ICIwOThjNzM0NC05NjQ5LTQyYWUtYTA5Ny0xMzJjN2ZiYWZjNTMjZTk0MDc3MzMtODY3YS00ZmFkLThkN2EtOTNiMWIyNmM4YjAxIn0sICJzayI6IHsiUyI6ICJvd25lciMwOThjNzM0NC05NjQ5LTQyYWUtYTA5Ny0xMzJjN2ZiYWZjNTMifSwgImVuZF90aW1lIjogeyJTIjogIjIwMjItMDktMTNUMTg6MTU6MjMuNzQ5MDQ2KzAwMDAifX0%3D&target-account-id=098c7344-9649-42ae-a097-132c7fbafc53"
}, - "data": [
- {
- "id": "a79e10d1-bbcb-4297-a246-c3223137bbd0",
- "type": "events",
- "attributes": {
- "end-time": "2024-04-12T11:04:00+00:00",
- "event-description": "My awsome event",
- "event-name": "Multiviewer Testing",
- "on-air-end-time": "2024-04-12T10:49:00+00:00",
- "on-air-start-time": "2024-04-12T09:49:00+00:00",
- "start-time": "2024-04-12T08:49:00+00:00",
- "tile": {
- "type": "encoder",
- "format": "img/jpeg",
- "resources": [
- "mrn:prod:encoders:098c7344-9649-42ae-a097-132c7fbafc53:encoder/8c4c1d2e-a3b4-4c5d-9e6f-1a2b3c4d5e6f",
- "mrn:prod:workflows:098c7344-9649-42ae-a097-132c7fbafc53:workflow-instance/2b3c4d5e-6f7a-4b8c-9d0e-1f2a3b4c5d6e",
- "mrn:prod:stream-endpoint-discovery:098c7344-9649-42ae-a097-132c7fbafc53:endpoint/3c4d5e6f-7a8b-4c9d-0e1f-2a3b4c5d6e7f"
], - "settings": {
- "expires": "2024-01-01T13:30:00+00:00",
- "refresh-interval": 2
}
}, - "sources": [
- {
- "auth": {
- "type": "token",
- "location": "location",
- "key": "auth_key",
- "value": "value_key"
}, - "id": "503bd07e-d6da-464f-a9ea-ea4e87be100f",
- "name": "source_name",
- "status": "active",
- "updated": "2024-04-12T09:46:05",
- "format": "application/dash+xml",
- "resources": [
- "mrn:prod:connect:098c7344-9649-42ae-a097-132c7fbafc53:source/5e6f7a8b-9c0d-4e1f-2a3b-4c5d6e7f8a9b"
]
}
], - "endpoints": [
- {
- "auth": {
- "type": "token",
- "location": "location",
- "key": "auth_key",
- "value": "value_key"
}, - "id": "503bd07e-d6da-464f-a9ea-ea4e87be100f",
- "name": "endpoint_name",
- "status": "active",
- "updated": "2024-04-12T09:46:05",
- "format": "application/dash+xml",
- "resources": [
- "mrn:prod:workflows:098c7344-9649-42ae-a097-132c7fbafc53:workflow-instance/2b3c4d5e-6f7a-4b8c-9d0e-1f2a3b4c5d6e",
- "mrn:prod:packagers:098c7344-9649-42ae-a097-132c7fbafc53:packager/4d5e6f7a-8b9c-4d0e-1f2a-3b4c5d6e7f8a",
- "mrn:prod:stream-endpoint-discovery:098c7344-9649-42ae-a097-132c7fbafc53:endpoint/3c4d5e6f-7a8b-4c9d-0e1f-2a3b4c5d6e7f"
]
}
], - "encoders": [
- {
- "auth": {
- "type": "token",
- "location": "location",
- "key": "auth_key",
- "value": "value_key"
}, - "id": "503bd07e-d6da-464f-a9ea-ea4e87be100f",
- "name": "encoder_name",
- "status": "active",
- "updated": "2024-04-12T09:46:05",
- "format": "img/jpeg",
- "resources": [
- "mrn:prod:encoders:098c7344-9649-42ae-a097-132c7fbafc53:encoder/8c4c1d2e-a3b4-4c5d-9e6f-1a2b3c4d5e6f",
- "mrn:prod:workflows:098c7344-9649-42ae-a097-132c7fbafc53:workflow-instance/2b3c4d5e-6f7a-4b8c-9d0e-1f2a3b4c5d6e",
- "mrn:prod:stream-endpoint-discovery:098c7344-9649-42ae-a097-132c7fbafc53:endpoint/3c4d5e6f-7a8b-4c9d-0e1f-2a3b4c5d6e7f"
], - "settings": {
- "expires": "2024-01-01T13:30:00+00:00",
- "refresh-interval": 2
}
}
]
}, - "relationships": {
- "owner": {
- "data": {
- "id": "098c7344-9649-42ae-a097-132c7fbafc53",
- "type": "target-accounts"
}
}
}
}, - {
- "id": "9893b65e-80a9-41ce-8c98-2be6d78053b0",
- "type": "events",
- "attributes": {
- "end-time": "2024-04-12T11:04:00+00:00",
- "event-description": "My awsome event",
- "event-name": "Multiviewer Testing",
- "on-air-end-time": "2024-04-12T10:49:00+00:00",
- "on-air-start-time": "2024-04-12T09:49:00+00:00",
- "start-time": "2024-04-12T08:49:00+00:00",
- "tile": {
- "format": "video/mp4",
- "type": "placeholder",
- "resources": [ ]
}, - "sources": [
- {
- "auth": {
- "type": "token",
- "location": "location",
- "key": "auth_key",
- "value": "value_key"
}, - "id": "503bd07e-d6da-464f-a9ea-ea4e87be100f",
- "name": "source_name",
- "status": "pending",
- "updated": "2024-04-12T09:46:05",
- "format": "video/mp4",
- "resources": [
- "mrn:prod:connect:098c7344-9649-42ae-a097-132c7fbafc53:source/6f7a8b9c-0d1e-4f2a-3b4c-5d6e7f8a9b0c"
]
}
]
}, - "relationships": {
- "owner": {
- "data": {
- "id": "098c7344-9649-42ae-a097-132c7fbafc53",
- "type": "target-accounts"
}
}
}
}
]
}Retrieves information about a specific event
| event-id required | string (Resource identifier) Example: a79e10d1-bbcb-4297-a246-c3223137bbd0 The id of the event to retrieve or delete |
| target-account-id required | string (Resource identifier) Example: target-account-id=a79e10d1-bbcb-4297-a246-c3223137bbd0 The id of the owning target account |
{- "data": {
- "id": "a79e10d1-bbcb-4297-a246-c3223137bbd0",
- "type": "string",
- "attributes": {
- "end-time": "2021-01-30T08:00:00Z",
- "event-description": "string",
- "event-name": "string",
- "on-air-end-time": "2021-01-30T08:00:00Z",
- "on-air-start-time": "2021-01-30T08:00:00Z",
- "start-time": "2021-01-30T08:00:00Z",
- "tile": {
- "format": "string",
- "url": "string",
- "resources": [
- "string"
], - "type": "placeholder"
}, - "sources": [
- {
- "name": "string",
- "status": "active",
- "auth": {
- "type": "session",
- "location": "string",
- "key": "string",
- "value": "string"
}, - "format": "string",
- "url": "string",
- "updated": "2021-01-30T08:00:00Z",
- "resources": [
- "string"
], - "type": "source"
}
], - "endpoints": [
- {
- "type": "endpoint",
- "name": "Endpoint component",
- "status": "active",
- "format": "application/dash+xml",
- "updated": "2024-01-01T00:00:00+00:00",
- "auth": {
- "type": "token",
- "location": "location",
- "key": "auth_key",
- "value": "value_key"
}, - "resources": [
- "mrn:prod:workflows:7e2f2cf8-5ca3-4b66-b4e6-89633ef85fac:workflow-instance/2b3c4d5e-6f7a-4b8c-9d0e-1f2a3b4c5d6e",
- "mrn:prod:packagers:7e2f2cf8-5ca3-4b66-b4e6-89633ef85fac:packager/4d5e6f7a-8b9c-4d0e-1f2a-3b4c5d6e7f8a",
- "mrn:prod:stream-endpoint-discovery:7e2f2cf8-5ca3-4b66-b4e6-89633ef85fac:endpoint/3c4d5e6f-7a8b-4c9d-0e1f-2a3b4c5d6e7f"
]
}
], - "encoders": [
- {
- "type": "encoder",
- "name": "Encoder component",
- "status": "active",
- "format": "img/jpeg",
- "updated": "2024-01-01T00:00:00+00:00",
- "auth": {
- "type": "token",
- "location": "location",
- "key": "auth_key",
- "value": "value_key"
}, - "settings": {
- "expires": "2024-01-01T13:30:00+00:00",
- "refresh-interval": 2
}, - "resources": [
- "mrn:prod:encoders:7e2f2cf8-5ca3-4b66-b4e6-89633ef85fac:encoder/8c4c1d2e-a3b4-4c5d-9e6f-1a2b3c4d5e6f",
- "mrn:prod:workflows:7e2f2cf8-5ca3-4b66-b4e6-89633ef85fac:workflow-instance/2b3c4d5e-6f7a-4b8c-9d0e-1f2a3b4c5d6e",
- "mrn:prod:stream-endpoint-discovery:7e2f2cf8-5ca3-4b66-b4e6-89633ef85fac:endpoint/3c4d5e6f-7a8b-4c9d-0e1f-2a3b4c5d6e7f"
]
}
]
}, - "relationships": {
- "owner": {
- "data": {
- "id": "098c7344-9649-42ae-a097-132c7fbafc53",
- "type": "target-accounts"
}
}
}
}
}Deletes a specific event
| event-id required | string (Resource identifier) Example: a79e10d1-bbcb-4297-a246-c3223137bbd0 The id of the event to retrieve or delete |
| target-account-id required | string (Resource identifier) Example: target-account-id=a79e10d1-bbcb-4297-a246-c3223137bbd0 The id of the owning target account |
{- "errors": [
- {
- "status": "400",
- "title": "Missing Query String Parameter",
- "detail": "Missing parameter required: target-account-id"
}
]
}Get a paged list of components either:
type) Example URL for getting all type
components:
https://cloud.m2amedia.tv/api/multiviewer/v1/components?target-account-id=a79e10d1-bbcb-4297-a246-c3223137bbd0&event-id=6bf270e5-bac4-4193-baea-3af5663e3fa5.event-ids query parameter (with an option to filter components
by type using query parameter type). Example URL:
https://cloud.m2amedia.tv/api/multiviewer/v1/components?target-account-id=a79e10d1-bbcb-4297-a246-c3223137bbd0&event-ids=6bf270e5-bac4-4193-baea-3af5663e3fa5,6bf270e5-bac4-4193-baea-3af5663e3fa6.
This is a bulk fetch and follows the partial success pattern.
Up to 100 event ids may be supplied; a request exceeding this limit returns
400 Bad Request. Duplicate event ids are de-duplicated on input. The
request always returns 200 OK regardless of how many ids resolve: components
for resolved events appear in the top-level data array, and any event id that
could not be resolved (it does not exist or has been soft-deleted) is reported
as an entry in meta.errors carrying the requested id and a 404 status.
Events that exist but have no components contribute no entries to data and are
not reported as errors. The
event-id and event-ids parameters are mutually exclusive.https://cloud.m2amedia.tv/api/multiviewer/v1/components?target-account-id=a79e10d1-bbcb-4297-a246-c3223137bbd0&type=source.Each page has 10 components by default, but page size can be specified using
query parameter limit.
In order to get a specific page query parameter offset can be used. Responses
for event-ids requests are not paginated, so offset and limit are ignored.
| target-account-id required | string (Resource identifier) Example: target-account-id=a79e10d1-bbcb-4297-a246-c3223137bbd0 The id of the owning target account |
| event-id | string <uuid> Example: event-id=6bf270e5-bac4-4193-baea-3af5663e3fa5 Related event id |
| event-ids | string Example: event-ids=6bf270e5-bac4-4193-baea-3af5663e3fa5,6bf270e5-bac4-4193-baea-3af5663e3fa6 Comma-separated list of related event ids (maximum 100; exceeding this returns |
| offset | string The last evaluated page key |
| limit | integer Specifies the maximum number of results to return in the response. |
| type | string Enum: "source" "endpoint" "encoder" Component type |
| Accept | string Value: "application/vnd.api+json" Content type (expressed as MIME types) the client is able to understand. |
{- "links": {
- "next": "/api/multiviewer/v1/components/?offset=eyJwayI6...&target-account-id=098c7344-9649-42ae-a097-132c7fbafc53&type=source"
}, - "data": [
- {
- "id": "a79e10d1-bbcb-4297-a246-c3223137bbd0",
- "type": "components",
- "attributes": {
- "type": "source",
- "name": "Source 1",
- "event-id": "6bf270e5-bac4-4193-baea-3af5663e3fa5",
- "status": "active",
- "resources": [ ]
}, - "relationships": {
- "owner": {
- "data": {
- "id": "098c7344-9649-42ae-a097-132c7fbafc53",
- "type": "target-accounts"
}
}
}
}
]
}Deletes a specific component
| component-id required | string (Resource identifier) Example: a79e10d1-bbcb-4297-a246-c3223137bbd0 The id of the component to retrieve or delete |
| target-account-id required | string (Resource identifier) Example: target-account-id=a79e10d1-bbcb-4297-a246-c3223137bbd0 The id of the owning target account |
{- "errors": [
- {
- "status": "400",
- "title": "Missing Query String Parameter",
- "detail": "Missing parameter required: target-account-id"
}
]
}