IngestManifest
An IngestManifest represents a set of assets to be created through bulk ingesting along with their associated asset files. Bulk ingesting allows you to decouple the file upload process from asset creation. As a result, a high-performance file upload method can be used for large file sets during asset creation. Once an IngestManifestAssets is created, along with its associated IngestManifestFiles, Microsoft Azure Media Services watches the Blob storage container associated with the IngestManifest via the BlobStorageUriForUpload property. As each file upload to the Blob storage container completes, Microsoft Azure Media Services completes a new asset for the respective IngestManifestAsset that contains that file.
This article gives an overview of the IngestManifest
entity and also demonstrates how to execute various operations with the Media Services REST API.
Important
When accessing entities in Media Services, you must set specific header fields and values in your HTTP requests.
For more information, see Setup for Media Services REST API Development and Connecting to Media Services with the Media Services REST API.
Note
Each IngestManifestAssetFile associated with an IngestManifest must have a unique filename in the manifest.
IngestManifest Entity Properties
Property | Type | Description |
---|---|---|
Id Read-only. Set by Media Services at creation time. |
Edm.String | Unique identifier. |
Created Read-only. Set by Media Services at creation time. |
Edm.DateTime | Represents the number of milliseconds since midnight Jan 1, 1970. |
LastModified Read-only. Set by Media Services. |
Edm.DateTime | This value is updated by Media Services after any property changes are made. It represents the number of milliseconds since midnight Jan 1, 1970. |
Name Optional. |
Edm.String | Friendly name for your IngestManifest. |
State Read-only. Set by Media Services. |
Edm.Int32 | The current state of the manifest. This value can be one of the following: - Inactive = 0: No pending asset creations remain. All have either completed or encountered an error. - Activating = 1: The manifest is not yet ready to receive files uploaded to the Blob container. - Active = 2: There are IngestManifestAssets pending creations and the Blob container is being monitored. |
BlobStorageUriForUpload Read-only. Set by Media Services. |
Edm.String | This value is set by Media Services. This value specifies the Uri of the Blob storage container, which receives the file uploads needed to complete the IngestManifestAssets. |
Statistics Read-only. Set by Media Services. |
IngestManifestStatistics | This complex type contains statistic information to help determine the current progress of the creation of IngestManifestAssets based on all asset files related to the manifest. |
IngestManifestAssets Read-only. Set by Media Services. |
IngestManifestAsset entity set | Navigation property that can be accessed by referencing a specific IngestManifestAsset by Id value. The returned entity set contains all IngestManifestAssets contained in the IngestManifest. |
PendingIngestManifestAssets Read-only. Set by Media Services. |
IngestManifestAsset entity set | Navigation property that can be accessed by referencing a specific IngestManifestAsset by Id value. The returned entity set contains all IngestManifestAssets pending file upload or asset creation. |
StorageAccountName Optional. Cannot be updated after the entity has been created. |
Edm.String | Name of the storage account that contains the blob container where the files are uploaded. If not specified at creation time, Media Services sets the default storage account name. IngestManifestAsset.Asset has to use the same storage account as specified in the IngestManifest. |
StorageAccount Read-only. Set by Media Services. |
StorageAccount entity set. | The returned entity set contains all of the StorageAccount entities that are linked to the specified Asset. |
Create an IngestManifest
IngestManifests can be created by using an HTTP POST request and passing a request body that contains the name of the new IngestManifest.
Method | Request URI | HTTP Version |
---|---|---|
POST | https://<accountname>.restv2.<location>.media.azure.net/api/IngestManifests | HTTP/1.1 |
Sample Request
To get the latest x-ms-version:
, see Media Services REST.
POST https:// media.windows.net/API/IngestManifests HTTP/1.1
Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
x-ms-version: 2.19
Authorization: Bearer <token value>
Host: media.windows.net
Content-Length: 36
Expect: 100-continue
{ "Name" : "ExampleManifestREST" }
List an IngestManifest
IngestManifests can be retrieved using an HTTP GET request. You can request an ingest manifest by its Id or request all manifests.
Method | Request URI | HTTP Version |
---|---|---|
GET | https://<accountname>.restv2.<location>.media.azure.net/api/IngestManifests | HTTP/1.1 |
GET | https://<accountname>.restv2.<location>.media.azure.net/api/IngestManifests(‘IngestManifest Id’) | HTTP/1.1 |
Sample Request
To get the latest x-ms-version:
, see Media Services REST.
GET https://<accountname>.restv2.<location>.media.azure.net/api/IngestManifests('nb:mid:UUID:a2f9a230-831e-5e40-bafa-fbf8decbee26') HTTP/1.1
Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
x-ms-version: 2.19
Authorization: Bearer <token value>
Host: media.windows.net
Content-Length: 0
Update an IngestManifest
IngestManifests can be updated by referencing the IngestManifest Id with an HTTP MERGE request. The request body contains the properties to be updated.
Method | Request URI | HTTP Version |
---|---|---|
MERGE | https://<accountname>.restv2.<location>.media.azure.net/api/IngestManifests(‘IngestManifest Id’) | HTTP/1.1 |
Sample Request
To get the latest x-ms-version:
, see Media Services REST.
MERGE https:// media.windows.net /API/IngestManifests('nb:mid:UUID:076faa09-8f5d-ce41-9de3-32ba66190271') HTTP/1.1
Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
x-ms-version: 2.19
Authorization: Bearer <token value>
Host: media.windows.net
Content-Length: 43
Expect: 100-continue
{ "Name" : "ExampleManifestUpdated" }
Delete an Ingest Manifest
IngestManifests can be deleted by referencing the IngestManifest Id value with an HTTP DELETE request.
Method | Request URI | HTTP Version |
---|---|---|
DELETE | https://<accountname>.restv2.<location>.media.azure.net/api/IngestManifests(‘IngestManifest Id’) | HTTP/1.1 |
Sample Request
To get the latest x-ms-version:
, see Media Services REST.
DELETE https://<accountname>.restv2.<location>.media.azure.net/api/IngestManifests('nb:mid:UUID:45ea3cd0-b3cf-994b-8e4d-03c9620c22da') HTTP/1.1
Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
x-ms-version: 2.19
Authorization: Bearer <token value>
Host: media.windows.net
Content-Length: 0
See Also
AccessPolicy
AssetFile
Asset
ContentKey
IngestManifestAsset
IngestManifestFile
IngestManifestStatistics
Job
JobTemplate
Locator
MediaProcessor
Task
TaskTemplate
Quotas and Limitations