Every API here is available over the APIs.io API and to AI agents over MCP.
{
"openapi": "3.0.1",
"info": {
"title": "TVE",
"description": "",
"version": "1.0"
},
"servers": [
{
"url": "https://tve.zype.com/"
}
],
"security": [
{
"api_key": []
}
],
"paths": {
"/adobe/device": {
"post": {
"summary": "Register Adobe Device Session",
"description": "Register the Adobe Session device info in Zype",
"operationId": "postRegisterAdobeDeviceSession",
"tags": [
"Adobe"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"title": "Register Adobe Device Session",
"type": "object",
"required": [
"device_info",
"adobe_device_id"
],
"properties": {
"device_info": {
"type": "string",
"description": "Adobe's Base64 Normalized Device Information build on information received from User-Agent, X-Device-Info or device_info"
},
"adobe_device_id": {
"type": "string",
"description": "Adobe's Base64-encoded Device Type"
}
}
}
}
}
},
"responses": {
"201": {
"description": "Device session registered successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"device_session_id": {
"type": "string",
"description": "UUID",
"example": "123e4567-e89b-12d3-a456-426614174000"
}
}
}
}
}
},
"422": {
"description": "Unprocessable entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/paths/~1adobe~1authn/post/responses/422/content/application~1json/schema"
}
}
}
}
}
}
},
"/adobe/authn": {
"post": {
"summary": "Creates a Zype's Consumer",
"description": "Given the device session ID, returned in the response of the Register Adobe Device Session endpoint, this endpoint creates a Zype's Consumer.",
"operationId": "postCreateZypeConsumer",
"tags": [
"Adobe"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"title": "Create Zype Consumer",
"type": "object",
"required": [
"device_session_id"
],
"properties": {
"device_session_id": {
"type": "string",
"description": "The device session ID returned from the Register Adobe Device Session endpoint"
}
}
}
}
}
},
"responses": {
"200": {
"description": "Zype's Consumer created successfully",
"content": {
"application/json": {
"schema": {
"title": "ConsumerResponse",
"type": "object",
"properties": {
"response": {
"title": "Consumer",
"type": "object",
"properties": {
"_id": {
"type": "string"
},
"amazon_user_id": {
"description": "Unique ID to identify a consumer by Amazon Fire",
"type": "string"
},
"birthday": {
"type": "string"
},
"braintree_id": {
"type": "string"
},
"created_at": {
"type": "string"
},
"current_sign_in_at": {
"type": "string"
},
"current_sign_in_ip": {
"type": "string"
},
"days_trialed": {
"type": "number"
},
"email": {
"type": "string"
},
"has_trialed": {
"type": "boolean"
},
"last_sign_in_at": {
"type": "string"
},
"last_sign_in_ip": {
"type": "string"
},
"linked_devices": {
"description": "IDs of Devices a user uses to watch your videos",
"type": "object"
},
"name": {
"type": "string"
},
"parental_access_code": {
"description": "The four digit code to use for gating of age restricted content in apps.",
"type": "string"
},
"parental_access_rating": {
"type": "string"
},
"pass_count": {
"description": "Number of passes a consumer has",
"type": "number"
},
"password_token": {
"type": "string"
},
"playist_count": {
"type": "number"
},
"recurly_code": {
"type": "string"
},
"remember_token": {
"type": "string"
},
"rss_token": {
"type": "string"
},
"sex": {
"type": "string"
},
"sign_in_count": {
"type": "number"
},
"site_id": {
"type": "string"
},
"stripe_id": {
"type": "string"
},
"subscription_count": {
"description": "Number of subscriptions a consumer has",
"type": "number"
},
"terms": {
"type": "boolean"
},
"transaction_count": {
"description": "Number of transactions a consumer has",
"type": "number"
},
"updated_at": {
"type": "string"
},
"updates": {
"type": "boolean"
},
"video_count": {
"description": "Number of videos a consumer has access to",
"type": "number"
}
}
}
}
}
}
}
},
"400": {
"description": "Bad request",
"content": {
"application/json": {
"schema": {
"title": "Bad Request",
"type": "object",
"required": [
"message"
],
"properties": {
"message": {
"type": "string"
},
"error_code": {
"type": "string",
"description": "A code representing the specific error condition"
}
}
},
"example": {
"message": "Already Logged in with device session"
}
}
}
},
"422": {
"description": "Unprocessable entity",
"content": {
"application/json": {
"schema": {
"title": "Unprocessable Entity",
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
},
"example": {
"message": "Could not save new consumer: {ERROR}"
}
}
}
}
}
}
},
"/adobe/validate": {
"post": {
"summary": "Validate Device Session token",
"description": "Indicates whether the device has an unexpired authentication token.",
"operationId": "postValidateDeviceSession",
"tags": [
"Adobe"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"title": "Validate Adobe Device Session authentication token",
"type": "object",
"required": [
"device_session_id"
],
"properties": {
"device_session_id": {
"type": "string",
"description": "The device session ID returned from the Register Adobe Device Session endpoint"
}
}
}
}
}
},
"responses": {
"200": {
"description": "Device session validated successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"valid": {
"type": "boolean",
"description": "Indicates whether the device session is valid"
}
},
"example": {
"valid": true
}
}
}
}
},
"400": {
"description": "Unprocessable entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/paths/~1adobe~1authn/post/responses/400/content/application~1json/schema"
},
"example": {
"message": "Invalid authn"
}
}
}
}
}
}
},
"/adobe/preauthorize": {
"post": {
"summary": "Retrieves the list of preauthorized resources",
"description": "This endpoint retrieves the list of resources that have been preauthorized for the specified device session.",
"operationId": "postRetrievePreauthorizedResources",
"tags": [
"Adobe"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"title": "Retrieve Preauthorized Resources",
"type": "object",
"required": [
"device_session_id",
"resource_ids"
],
"properties": {
"device_session_id": {
"type": "string",
"description": "The device session ID returned from the Register Adobe Device Session endpoint"
},
"resource_ids": {
"type": "string",
"description": "A string that contains a comma delimited list of resourceIds that identifies the content that might be accessible to a user and is recognized by Adobe MVPD authorization endpoints."
}
}
}
}
}
},
"responses": {
"201": {
"description": "Preauthorized resources retrieved successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"resources": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The unique identifier for the preauthorized resource"
},
"authorized": {
"type": "boolean",
"description": "Indicates whether the resource is authorized for the device session"
},
"error": {
"type": "object",
"properties": {
"status": {
"type": "integer",
"description": "HTTP status code if the resource is not authorized"
},
"code": {
"type": "string",
"description": "Error code if the resource is not authorized"
},
"message": {
"type": "string",
"description": "Error message if the resource is not authorized"
},
"details": {
"type": "string",
"description": "Additional details about the error if available"
},
"helpUrl": {
"type": "string",
"description": "URL for more information about the error"
},
"trace": {
"type": "string",
"description": "Trace information for debugging purposes"
}
}
}
}
}
}
},
"example": {
"resources": [
{
"id": "TestStream1",
"authorized": true,
"error": null
},
{
"id": "TestStream2",
"authorized": false,
"error": {
"status": 403,
"code": "authorization_denied_by_mvpd",
"message": "User not authorized",
"details": "Your subscription package does not include the \"TestStream3\" channel.",
"helpUrl": "https://experienceleague-review.corp.adobe.com/docs/primetime/authentication/auth-features/error-reportn/enhanced-error-codes.html#error-codes",
"trace": "0453f8c8-167a-4429-8784-cd32cfeaee58"
}
}
]
}
}
}
}
}
}
}
},
"/adobe/media_token": {
"post": {
"summary": "Obtains Short Media Token.",
"description": "Obtain a short-lived media token for Adobe TVE authentication.",
"operationId": "postObtainShortMediaToken",
"tags": [
"Adobe"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"title": "Obtain Short Media Token",
"type": "object",
"required": [
"device_session_id",
"resource_id"
],
"properties": {
"device_session_id": {
"type": "string",
"description": "The device session ID returned from the Register Adobe Device Session endpoint"
},
"resource_id": {
"type": "string",
"description": "A string that contains a resourceId (or MRSS fragment), identifies the content requested by a user and is recognized by MVPD authorization endpoints."
}
}
}
}
}
},
"responses": {
"200": {
"description": "Device session registered successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"serialized_token": {
"type": "string",
"description": "UUID",
"example": "123e4567-e89b-12d3-a456-426614174000"
},
"expires": {
"type": "string",
"format": "date-time",
"description": "The expiration time of the media token in milliseconds since epoch"
}
}
},
"example": {
"serialized_token": "eyJ0eXAiOiJK[...]",
"expires": "1348649614000"
}
}
}
},
"422": {
"description": "Unprocessable entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/paths/~1adobe~1authn/post/responses/422/content/application~1json/schema"
},
"example": {
"message": "Could not fetch media token for resource 'sampleResourceId'",
"error_code": "adobe_media_token_not_found"
}
}
}
}
}
}
},
"/adobe/logout": {
"delete": {
"summary": "Destroys Device Session.",
"description": "Remove the Adobe Device Session from Zype and Adobe's authn and authz token.",
"operationId": "postRemoveAdobeDeviceSession",
"tags": [
"Adobe"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"title": "Remove Adobe Device Session",
"type": "object",
"required": [
"device_session_id"
],
"properties": {
"device_session_id": {
"type": "string",
"description": "The device session ID returned from the Register Adobe Device Session endpoint"
}
}
}
}
}
},
"responses": {
"204": {
"description": "Device session removed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"title": "Device Session",
"properties": {
"_id": {
"type": "string",
"description": "UUID",
"example": "123e4567-e89b-12d3-a456-426614174000"
},
"adobe_device_id": {
"type": "string",
"description": "Adobe's Base64-encoded Device Type",
"example": "c28tZGV2aWQtMDAz"
}
}
}
}
}
},
"422": {
"description": "Unprocessable entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/paths/~1adobe~1authn/post/responses/422/content/application~1json/schema"
},
"example": {
"message": "Could not log out device session: [ERROR_MESSAGE]"
}
}
}
}
}
}
}
},
"components": {
"securitySchemes": {
"api_key": {
"type": "apiKey",
"name": "api_key",
"in": "query",
"description": "The adobe api key"
}
}
}
}