Los esquemas descritos en esta sección están pensados para que los usen los desarrolladores para la integración con las API de Avails. Estos esquemas se organizarán dentro de un paquete específico para agilizar la aprobación por parte de la dirección. Los esquemas de carga útil se adhieren al estándar MDDF API v2.6; sin embargo, no todos los atributos de MDDF API v2.6 son compatibles con Prime Video Los atributos no compatibles todavía se pueden incluir en la carga útil, pero Prime Video los ignorará.
Cómo convertir MDDF XML en JSON
La API MDDF de Avails estructura su esquema en formato XML, pero admite cargas útiles tanto en formato XML como en JSON. Las API de Prime Video Partner utilizarán cargas útiles codificadas en JSON. Aquí puedes encontrar el proceso para convertir MDDF XML en JSON:
- Los espacios de nombres se omiten al generar los nombres de los atributos JSON.
- El contenido del texto de los elementos se asigna directamente al valor del objeto JSON correspondiente.
<alice>bob</alice>
se convierte en{ "alice": "bob" } - Los elementos anidados se convierten en propiedades anidadas.
<alice><bob>charlie</bob><david>edgar</david></alice>
se convierte en{ "alice": { "bob": "charlie", "david": "edgar" } } - Múltiples elementos con el mismo nombre y en el mismo nivel se convierten en elementos de un arreglo.
<alice><bob>charlie</bob><bob>david</bob></alice>
se convierte en{ "alice": { "bob": [ "charlie", "david" ] } } - La mezcla de contenido (elementos y nodos de texto) en el mismo nivel se convierte en elementos de un arreglo.
<alice>bob<charlie>david</charlie>edgar</alice>
se convierte en{ "alice": [ "bob", { "charlie": "david" }, "edgar" ] } - Los atributos se convierten en propiedades y sus nombres van precedidos de un guion bajo.
<alice charlie="david">bob</alice>
se convierte en{ "alice": { "_charlie": "david", "value": "bob" } }
Tipos de datos más comunes
El esquema de la API de Avails admite los siguientes tipos de datos, que requieren una revisión por parte de la dirección para garantizar la estandarización en todos los servidores de recursos.
El número máximo de elementos permitidos en las solicitudes por lotes está limitado a 100.
Tipo |
Descripción |
Boolean (booleano) |
Tipo de dato lógico. Valores permitidos: true (verdadero), false (falso) |
Integer (entero) |
Entero con signo de 32 bits. |
LongInteger (entero largo) |
Entero con signo de 64 bits. |
Decimal |
Números de punto flotante. |
String (cadena) |
Una secuencia de caracteres. |
Timestamp (marca temporal) |
Marca temporal en formato ISO. |
Enum (enumeración) |
Una cadena de números con una cantidad de valores permitidos predefinido. |
Struct (estructura) |
Los tipos de datos de estructura sirven como un agregador para otros atributos. |
Array (arreglo) |
Colección de elementos de tipo ASME. Designado por []. |
Esquemas
Tipo PutAvailsAPIRequest
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
avail |
Avail |
Sí |
Datos de disponibilidad |
Tipo PutAvailsAPIResponse
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
success |
Boolean |
Sí |
Estado de la operación |
errors |
Error[] |
No |
Lista de errores en caso de fallo |
Tipo ValidateAvailsAPIRequest
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
avail |
Avail |
Sí |
Datos de disponibilidad |
Tipo ValidateAvailsAPIResponse
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
success |
Boolean |
Sí |
Estado de la operación |
errors |
Error[] |
No |
Lista de errores en caso de fallo |
Tipo DeleteAvailsAPIResponse
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
success |
Boolean |
Sí |
Estado de la operación |
errors |
Error[] |
No |
Lista de errores en caso de fallo |
Tipo GetAvailsAPIResponse
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
avail |
Avail |
Sí |
Datos de disponibilidad |
success |
Boolean |
Sí |
Estado de la operación |
errors |
Error[] |
No |
Lista de errores en caso de fallo |
Tipo PutAvailsBatchAPIRequest
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
requestItems |
PutAvailsBatchAPIRequestItem[] |
Sí |
Lista de solicitudes individuales |
Tipo PutAvailsBatchAPIResponse
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
responseItems |
PutAvailsBatchAPIResponseItem[] |
Sí |
Lista de elementos de respuesta |
Tipo PutAvailsBatchAPIRequestItem
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
requestItemId |
String |
Sí |
Identificador único del elemento en la solicitud por lotes |
path |
String |
Sí |
Ruta a un recurso para este elemento de solicitud. Para el modo de extracción completa, el formato es: Para el modo de extracción parcial, el formato es: |
body |
PutAvailsBatchAPIRequestItemBody |
Sí |
Datos de disponibilidad |
Tipo PutAvailsBatchAPIRequestItemBody
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
avail |
Avail |
Sí |
Datos de disponibilidad |
Tipo PutAvailsBatchAPIResponseItem
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
requestItemId |
String |
Sí |
Identificador único del elemento en la solicitud por lotes |
success |
Boolean |
Sí |
Estado de la operación |
errors |
Error[] |
No |
Lista de errores en caso de fallo |
Tipo ValidateAvailsBatchAPIRequest
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
requestItems |
ValidateAvailsBatchAPIRequestItem[] |
Sí |
Lista de solicitudes individuales |
Tipo ValidateAvailsBatchAPIResponse
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
responseItems |
ValidateAvailsBatchAPIResponseItem[] |
Sí |
Lista de elementos de respuesta |
Tipo ValidateAvailsBatchAPIRequestItem
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
requestItemId |
String |
Sí |
Identificador único del elemento en la solicitud por lotes |
path |
String |
Sí |
Ruta a un recurso para este elemento de solicitud Para el modo de extracción completa, el formato es: /avails/{licensor}/full-extract/{ALID}/validate Para el modo de extracción parcial, el formato es: /avails/{licensor}/partial-extract/transactions/{transactionID}/validate |
body |
ValidateAvailsBatchAPIRequestItemBody |
Sí |
Request body |
Tipo ValidateAvailsBatchAPIRequestItemBody
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
avail |
Avail |
Sí |
Datos de disponibilidad |
Tipo ValidateAvailsBatchAPIResponseItem
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
requestItemId |
String |
Sí |
Identificador único del elemento en la solicitud por lotes |
success |
Boolean |
Sí |
Estado de la operación |
errors |
Error[] |
No |
Lista de errores en caso de fallo |
Tipo DeleteAvailsBatchAPIRequest
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
requestItems |
DeleteAvailsBatchAPIRequestItem[] |
Sí |
Lista de solicitudes individuales |
Tipo DeleteAvailsBatchAPIResponse
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
responseItems |
DeleteAvailsBatchAPIResponseItem[] |
Sí |
Lista de elementos de respuesta |
Tipo DeleteAvailsBatchAPIRequestItem
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
requestItemId |
Cadena |
Sí |
Identificador único del elemento en la solicitud por lotes |
path |
String |
Sí |
Ruta a un recurso para este elemento de solicitud. Para el modo de extracción completa, el formato es: Para el modo de extracción parcial, el formato es: |
Tipo DeleteAvailsBatchAPIResponseItem
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
requestItemId |
String |
Sí |
Identificador único del elemento en la solicitud por lotes |
success |
Boolean |
Sí |
Estado de la operación |
errors |
Error[] |
No |
Lista de errores en caso de fallo |
GetAvailsBatchAPIRequest
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
requestItems |
GetAvailsBatchAPIRequestItem[] |
Sí |
Lista de solicitudes individuales |
GetAvailsBatchAPIResponse
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
responseItems |
GetAvailsBatchAPIResponseItem[] |
Sí |
Lista de elementos de respuesta |
GetAvailsBatchAPIRequestItem
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
requestItemId |
String |
Sí |
Identificador único del elemento en la solicitud por lotes |
path |
String |
Sí |
Ruta a un recurso para este elemento de solicitud. Para el modo de extracción completa, el formato es: Para el modo de extracción parcial, el formato es: |
GetAvailsBatchAPIResponseItem
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
requestItemId |
String |
Sí |
Identificador único del elemento en la solicitud por lotes |
success |
Boolean |
Sí |
Estado de la operación |
errors |
Error[] |
No |
Lista de errores en caso de fallo |
avail |
Avail |
No |
Objeto Avail |
Tipo de error
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
code |
String |
Sí |
Una cadena que describe el tipo de error. Códigos de validación de error: APIV{número}, CRMSV{número} Ejemplos: APIV400, CRMSE500 |
message |
String |
Sí |
Descripción del error en lenguaje natural |
Tipo de Avail
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
ALID |
String |
Sí |
Especifica el identificador del título. Debe coincidir con el ALID especificado en la contribución de metadatos. |
Disposition |
AvailDisposition |
Sí |
Especifica la granularidad del modelo de extracción. |
Licensor |
Publisher |
Sí |
Informa sobre la entidad que otorga la licencia a Prime Video. |
Asset |
AvailAsset[] |
Sí |
Información sobre el recurso. Solo se debe incluir un recurso en la lista. |
Transaction |
AvailTrans[] |
Sí |
Información sobre la transacción. |
SharedEntitlement |
AvailSharedEntitlement[] |
No |
Información sobre derechos de otros servicios. |
Tipo AvailDisposition
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
EntryType |
Enum |
Sí |
Valores permitidos: FullExtract, FullDelete, PartialExtract, PartialDelete |
Tipo Publisher
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
DisplayName |
String |
Sí |
Indica el nombre del socio de Prime Video. Prime Video proporcionará este valor a los socios. Debe tener el mismo valor que el utilizado en los archivos EMA. |
Tipo AvailAsset
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
_contentID |
String |
Sí |
Indica el ID del contenido de este recurso. Prime Video proporcionará este valor a los socios. Debe tener el mismo valor que el utilizado en los archivos EMA. Debe ser igual al valor de ALID proporcionado en el Avail. |
WorkType |
Enum |
Sí |
Valores permitidos: Movie, Short, Episode, Season, Supplemental |
Metadata |
AvailUnitMetadata |
No |
Describe los metadatos de una película o cortometraje. Obligatorio cuando el WorkType (tipo de trabajo) es una película o un cortometraje. |
EpisodeMetadata |
AvailEpisodeMetadata |
No |
Describe los metadatos de un episodio. Obligatorio cuando el WorkType es un episodio. |
SeasonMetadata |
AvailSeasonMetadata |
No |
Describe los metadatos de una temporada. Obligatorio cuando el WorkType es una temporada. |
Tipo AvailSharedEntitlement
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
_ecosystem |
Enum |
Sí |
Valores permitidos: DMA |
EcosystemID |
String |
Sí |
Identificador del título específico del ecosistema |
Tipo AvailUnitMetadata
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
TitleInternalAlias |
String[] |
Sí |
Nombre del título. Solo se debe incluir un nombre de título en la lista. |
Tipo AvailEpisodeMetadata
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
TitleInternalAlias |
String[] |
Sí |
Nombre del título del episodio. Solo se debe incluir un nombre de título en la lista. |
EpisodeNumber |
ContentSequenceInfo |
Sí |
Número de este episodio dentro la temporada. |
SeasonMetadata |
AvailSeasonMetadata |
Sí |
Describe los metadatos de la temporada. Obligatorio cuando el WorkType es un episodio o una temporada. |
SeriesMetadata |
AvailSeriesMetadata |
Sí |
Describe los metadatos de una serie. Obligatorio cuando el WorkType es un episodio o una temporada. |
Tipo AvailSeasonMetadata
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
SeasonContentID |
String |
Sí |
ALID de la temporada. |
SeasonTitleInternalAlias |
String[] |
No |
Nombre del título de la temporada. Solo se debe incluir un nombre de título en la lista. |
SeasonNumber |
ContentSequenceInfo |
Sí |
Número de esta temporada dentro de la serie. |
NumberOfEpisodes |
Integer |
Sí |
Número de episodios de esta temporada. |
SeriesMetadata |
AvailSeriesMetadata |
No |
Describe los metadatos de la serie. Obligatorio cuando el WorkType es una temporada. |
Tipo AvailSeriesMetadata
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
SeriesContentID |
String |
Sí |
ALID de la serie. |
SeriesTitleInternalAlias |
String[] |
No |
Nombre del título de la serie. Solo se debe incluir un nombre de título en la lista. |
NumberOfSeasons |
Integer |
No |
Número de temporadas de esta serie. |
Tipo AvailTrans
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
_TransactionID |
String |
No |
Identificador único de periodo de disponibilidad. Necesario cuando se usa PartialExtract. Opcional cuando se utiliza FullExtract. |
LicenseType |
Enum |
Sí |
Valores permitidos: SVOD, FVOD, EST, POEST, VOD |
Territory |
Region[] |
Sí |
Territorio donde está permitida la distribución. Solo se debe incluir un elemento de territorio. Todas las transacciones de un mismo objeto de Avail deben tener el mismo territorio. |
Start |
DateTime |
Sí |
La fecha y la hora de inicio de distribución deben indicarse en formato ISO. |
End |
DateTime |
No |
La fecha y la hora de finalización de distribución deben indicarse en formato ISO. Si no se proporciona, la distribución tendrá una disponibilidad ilimitada. |
AssetLanguage |
AssetLanguage[] |
No |
Idioma del recurso expresado como código de idioma ISO con el tipo de recurso. Tipos de recursos permitidos: subtítulos, audio, doblaje, VO, MTA o cualquiera |
AllowedLanguage |
AssetLanguage[] |
No |
Código de idioma ISO con el tipo de recurso. Tipos de recursos permitidos: subtítulos, audio, doblaje, VO, MTA o cualquiera |
HoldbackLanguage |
AssetLanguage[] |
No |
Código de idioma ISO con el tipo de recurso. Tipos de recursos permitidos: subtítulos, audio, doblaje, VO, MTA o cualquiera |
LicenseRightsDescription |
String |
No |
Se utiliza para especificar la prioridad de publicación. |
FormatProfile |
AvailFormatProfile |
Sí |
Calidad del video disponible. Valores permitidos: SD, HD, UHD |
ContractID |
String |
No |
Especifica la información contractual. Valores permitidos: |
Terms |
AvailTerms[] |
Yes |
Especifica la lista de términos comerciales para el periodo de disponibilidad. |
OtherInstructions |
String |
No |
Instrucciones de procesos adicionales para el periodo de disponibilidad. |
Tipo Region
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
country |
String |
Sí |
Código de país de 2 letras según ISO 3166-1 |
Tipo AssetLanguage
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
value |
String |
Sí |
Idioma del recurso expresado como código de idioma RFC 5646 con el tipo de recurso. |
_asset |
String |
No |
Se permiten diferentes tipos de valores en función del atributo de idioma del tipo AvailTrans. Valores permitidos para AvailTrans.AssetLanguage: Valores permitidos para AvailTrans.AllowedLanguage y AvailTrans. HoldbackLanguage: Los recursos “sub” y “dub” se convierten en sus equivalentes MDDF “subtitle” y “audio”. |
Tipo AvailFormatProfile
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
value |
Enum |
Sí |
Calidad del video disponible. Valores permitidos: SD, HD, UHD |
Tipo AvailTerms
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
_termName |
String |
Sí |
Identifica el término. El valor no distingue entre mayúsculas y minúsculas. Para obtener una lista de valores permitidos, consulta más abajo. |
Money |
Money |
No |
Para más detalles, consulta más abajo. |
Text |
String |
No |
Para más detalles, consulta más abajo. |
Event |
DateTime |
No |
Para más detalles, consulta más abajo. |
Boolean |
Boolean |
No |
Para más detalles, consulta más abajo. |
Duration |
String |
No |
Para más detalles, consulta más abajo. |
Number |
Integer |
No |
Para más detalles, consulta más abajo. |
Términos admitidos
Term name |
Atributo |
¿Es obligatorio? |
Descripción |
ChannelIdentity |
Text |
Sí |
Identificador de un canal o suscripción. |
Tier |
Text |
Condicional |
Nivel de precios. Obligatorio si el tipo de licencia es POEST. |
SRP |
Money |
Condicional |
Precio de venta recomendado. Obligatorio si el tipo de licencia es POEST. |
WSP |
Money |
Condicional |
Precio mayorista. Obligatorio si el tipo de licencia es POEST. |
Category |
Text |
Condicional |
Categoría de precio. Obligatorio si el tipo de licencia es POEST. |
AnnounceDate |
Event |
No |
Fecha en la que se permite al minorista anunciar la fecha de inicio de disponibilidad del título dentro del territorio. |
SuppressionLiftDate |
Event |
Condicional |
Primera fecha en la que un título podría ser anunciado públicamente como disponible en una fecha futura específica en el territorio. Obligatorio si el tipo de licencia es POEST. |
RentalDuration |
Duration |
Condicional |
Duración del periodo de alquiler en horas. Obligatorio si el tipo de licencia es SVOD. |
WatchDuration |
Duration |
Condicional |
Cuánto tiempo tiene el usuario para completar la visualización una vez comenzada, en horas. Obligatorio si el tipo de licencia es SVOD. |
Download |
Text |
No |
La licencia incluye permiso de descarga. Los valores permitidos son Yes o No. Cuando el tipo de licencia es SVOD, tanto la duración de alquiler como la de visualización deben estar especificadas. |
Exclusive |
Boolean |
No |
Los recursos son exclusivos para el ámbito de la transacción. |
ExclusiveAttributes |
Text |
No |
Especifica el tipo de exclusividad. Solo se tiene en cuenta cuando Exclusive es true (verdadero). Se utilizará un valor predeterminado si no se proporciona uno cuando Exclusive es true (verdadero). |
BrandingRights |
Boolean |
No |
Indica la intención del socio de mostrar la marca. |
BrandingRightsAttributes |
Text |
No |
Especifica el texto de la marca. Solo se tiene en cuenta cuando BrandingRights es true (verdadero). Se utilizará un valor predeterminado si no se proporciona uno cuando BrandingRights es true (verdadero). |
allowAds |
Boolean |
No |
Determina si los anuncios están permitidos o prohibidos. Este término puede aparecer solo una vez. |
allowedAdPlacement |
Text |
Condicional |
Especifica la ubicación en la secuencia donde se pueden insertar anuncios. Los valores permitidos son PreRoll, MidRoll, PostRoll, Overlays, PauseAds, Squeezebacks. Este término puede aparecer más de una vez. Se puede especificar allowedAdPlacement o prohibitedAdPlacement, pero no ambos. |
prohibitedAdPlacement |
Text |
Condicional |
Especifica la ubicación en la secuencia donde está prohibido insertar anuncios. Los valores permitidos son PreRoll, MidRoll, PostRoll, Overlays, PauseAds, Squeezebacks. Solo se permite cuando allowAds es true (verdadero). Se puede especificar allowedAdPlacement o prohibitedAdPlacement, pero no ambos. |
cuepointDeliveryAndUsage |
Text |
No |
Especifica las obligaciones de entrega y uso de los puntos de referencia. Valores permitidos: PartnerWillDeliverAndPrimeVideoMustUse, PrimeVideoWillUseIfDelivered, NoDeliveryOrUsageObligations, TalentObligated. Solo se permite cuando allowAds es true (verdadero). |
blindBasisSelling |
Text |
No |
Valores permitidos: GuaranteedImpressions, NoGuaranteedImpressions Este atributo solo debe estar presente si allowAds es true (verdadero). |
sponsorships |
Text |
No |
Valores permitidos: Permitted, Prohibited, PermittedWithRestrictions. Este atributo solo debe estar presente si allowAds es true (verdadero). |
sponsorshipsRestrictions |
Text |
Condicional |
Free-form text Este atributo solo debe estar presente si Sponsorships está configurado en modo AllowedWithRestrictions. |
talentAndAmazonAdGuidelines |
Text |
No |
Valores permitidos: NoRestrictions, ConsultationRequired Este atributo solo debe estar presente si allowAds es true (verdadero). |
talentRestrictions |
Text |
Condicional |
Free-form text Este atributo solo debe estar presente si talentAndAmazonAdGuidelines está configurado en modo ConsultationRequired. |
adLoadLimit |
Text |
No |
Número de minutos de anuncios por hora. El valor debe ser un entero válido. Este atributo solo debe estar presente si allowAds es true (verdadero). |
Tipo Money
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
value |
Decimal |
No |
Valor económico, obligatorio para algunos tipos de precios |
_currency |
String |
Sí |
Código ISO de la divisa |
Tipo ContentSequenceInfo
Atributo |
Tipo |
¿Es obligatorio? |
Descripción |
Number |
Integer |
Sí |
Número de secuencia del contenido, como número de episodio o número de temporada |
Enumeración de BusinessLine
Valor Enumerated |
Descripción |
TVOD |
TVOD significa compra o alquiler. Tipos de licencia relacionados: EST, VOD, POEST |
PRIME_SUBSCRIPTION |
Suscripción a Amazon Prime o Amazon Kids+. Tipos de licencia relacionados: SVOD |
CHANNELS |
Suscripción de canales de terceros. Tipos de licencia relacionados: SVOD |
FVOD |
Contenido gratuito. Tipos de licencia relacionados: FVOD |