Hello, I have a json feed into my roku direct publisher channel, but when I checked the feed status it says "410 items have error: Required movie content is missing."
I tried every field the documentation offered, it didn't cause it to error more, but didn't help the problem, so I don't know what to do.
Please help me figure out what it is asking for.
thanks
here is the json file:
{ "providerName": "EliYah.com", "lastUpdated": "2022-12-3T10:38:28+00:00", "language": "en", "movies": [{ "id": "b027b874-1002-4e6b-a37b-16a720146fd6", "title": "Commands Of The Messiah - Part 32", "content":[{ "dateAdded": "2022-03-26T18:04:42", "videos": [{ "url": "https://eliyah.com/video/broadcast/20220326-study.mp4", "quality": "HD", "videoType": "MP4", "bitrate": "1900" }] }], "genres": [ "educational" ], "rating": { "rating": "UNRATED", "ratingSource": "USA_PR" }, "tags": ["Eliyah.com"], "thumbnail": "https://eliyah.com/wp-content/uploads/2022/03/channel-poster_fhd.png", "releaseDate": "2022-03-26T18:04:42", "shortDescription": "Sorry, this Archive currently has no Description", "longDescription": "Sorry, this Archive currently has no Description", "categories": [{"name": "Latest","order": "most_recent","query": "live OR Eliyah.com"}] }, { "id": "1baca56b-dbae-4950-9d76-418f11f7081d", "title": "Commands of The Messiah - Part 31", "content":[{ "dateAdded": "2022-03-26T18:04:42", "videos": [{ "url": "https://eliyah.com/video/broadcast/20220319-study.mp4", "quality": "HD", "videoType": "MP4", "bitrate": "1900" }] }], "genres": [ "educational" ], "rating": { "rating": "UNRATED", "ratingSource": "USA_PR" }, "tags": ["Eliyah.com"], "thumbnail": "https://eliyah.com/wp-content/uploads/2022/03/channel-poster_fhd.png", "releaseDate": "2022-03-26T18:04:42", "shortDescription": "Sorry, this Archive currently has no Description", "longDescription": "Sorry, this Archive currently has no Description", "categories": [{"name": "Latest","order": "most_recent","query": "live OR Eliyah.com"}] }, { "id": "4771b0e7-2dae-45b8-9036-eb4f18af1b68", "title": "How to observe Passover", "content":[{ "dateAdded": "2022-03-26T18:04:42", "videos": [{ "url": "https://eliyah.com/video/broadcast/20220312-study.mp4", "quality": "HD", "videoType": "MP4", "bitrate": "1900" }] }], "genres": [ "educational" ], "rating": { "rating": "UNRATED", "ratingSource": "USA_PR" }, "tags": ["Eliyah.com"], "thumbnail": "https://eliyah.com/wp-content/uploads/2022/03/channel-poster_fhd.png", "releaseDate": "2022-03-26T18:04:42", "shortDescription": "Sorry, this Archive currently has no Description", "longDescription": "Sorry, this Archive currently has no Description", "categories": [{"name": "Latest","order": "most_recent","query": "live OR Eliyah.com"}] }, { "id": "bb6beea1-2685-4f6b-a091-b93a4d85e8c6", "title": "Footsteps of the Savior - Part 36", "content":[{ "dateAdded": "2022-03-26T18:04:42", "videos": [{ "url": "https://eliyah.com/video/broadcast/discipleship-36-study.mp4", "quality": "HD", "videoType": "MP4", "bitrate": "1900" }] }], "genres": [ "educational" ], "rating": { "rating": "UNRATED", "ratingSource": "USA_PR" }, "tags": ["Eliyah.com"], "thumbnail": "https://eliyah.com/wp-content/uploads/2022/03/channel-poster_fhd.png", "releaseDate": "2022-03-26T18:04:42", "shortDescription": "Sorry, this Archive currently has no Description", "longDescription": "Sorry, this Archive currently has no Description", "categories": [{"name": "Latest","order": "most_recent","query": "live OR Eliyah.com"}] }, { "id": "e52a8ac2-ba53-46f8-84d6-a95db1ac719c", "title": "Passover 2022 Its meaning and Relevance", "content":[{ "dateAdded": "2022-03-26T18:04:42", "videos": [{ "url": "https://eliyah.com/video/broadcast/20220305-study.mp4", "quality": "HD", "videoType": "MP4", "bitrate": "1900" }] }], "genres": [ "educational" ], "rating": { "rating": "UNRATED", "ratingSource": "USA_PR" }, "tags": ["Eliyah.com"], "thumbnail": "https://eliyah.com/wp-content/uploads/2022/03/channel-poster_fhd.png", "releaseDate": "2022-03-26T18:04:42", "shortDescription": "Sorry, this Archive currently has no Description", "longDescription": "Sorry, this Archive currently has no Description", "categories": [{"name": "Latest","order": "most_recent","query": "live OR Eliyah.com"}] }, { "id": "44600d13-f7fe-48f3-8fb4-4c093cd2cdb6", "title": "New Moon Broadcast - 13th Month", "content":[{ "dateAdded": "2022-03-26T18:04:42", "videos": [{ "url": "https://eliyah.com/video/broadcast/new-moon-13th-month-2022", "quality": "HD", "videoType": "MP4", "bitrate": "1900" }] }], "genres": [ "educational" ], "rating": { "rating": "UNRATED", "ratingSource": "USA_PR" }, "tags": ["Eliyah.com"], "thumbnail": "https://eliyah.com/wp-content/uploads/2022/03/channel-poster_fhd.png", "releaseDate": "2022-03-26T18:04:42", "shortDescription": "Sorry, this Archive currently has no Description", "longDescription": "Sorry, this Archive currently has no Description", "categories": [{"name": "Latest","order": "most_recent","query": "live OR Eliyah.com"}] } ]}
ok thanks
The problem is, the feed specifications page does not have a duration for movie content type: https://developer.roku.com/docs/specs/direct-publisher-feed-specs/json-dp-spec.md#movie
is the duration in seconds or minutes. Will it matter if I just put the video duration longer than the video? What will happen?
You've got several syntactical errors in your feed file:
2022-03-31 11:44:03.7466 ERROR Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'Common.ContentObject' because the type requires a JSON object (e.g. {"name":"value"}) to deserialize correctly. To fix this error either change the JSON to a JSON object (e.g. {"name":"value"}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List<T> that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array. Path 'movies[0].content', line 9, position 24. 2022-03-31 11:44:03.7466 ERROR Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'Common.ContentObject' because the type requires a JSON object (e.g. {"name":"value"}) to deserialize correctly. To fix this error either change the JSON to a JSON object (e.g. {"name":"value"}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List<T> that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array. Path 'movies[1].content', line 47, position 24. 2022-03-31 11:44:03.7466 ERROR Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'Common.ContentObject' because the type requires a JSON object (e.g. {"name":"value"}) to deserialize correctly. To fix this error either change the JSON to a JSON object (e.g. {"name":"value"}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List<T> that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array. Path 'movies[2].content', line 85, position 24. 2022-03-31 11:44:03.7466 ERROR Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'Common.ContentObject' because the type requires a JSON object (e.g. {"name":"value"}) to deserialize correctly. To fix this error either change the JSON to a JSON object (e.g. {"name":"value"}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List<T> that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array. Path 'movies[3].content', line 123, position 24. 2022-03-31 11:44:03.7466 ERROR Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'Common.ContentObject' because the type requires a JSON object (e.g. {"name":"value"}) to deserialize correctly. To fix this error either change the JSON to a JSON object (e.g. {"name":"value"}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List<T> that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array. Path 'movies[4].content', line 161, position 24. 2022-03-31 11:44:03.7466 ERROR Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'Common.ContentObject' because the type requires a JSON object (e.g. {"name":"value"}) to deserialize correctly. To fix this error either change the JSON to a JSON object (e.g. {"name":"value"}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List<T> that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array. Path 'movies[5].content', line 199, position 24. 2022-03-31 11:44:03.7466 ERROR 'lastUpdated' field is incorrectly formatted. Assigning today's date. 2022-03-31 11:44:03.7466 ERROR 'b027b874-1002-4e6b-a37b-16a720146fd6' contains an incorrectly formatted 'ReleaseDate'. Setting date to '2022-03-26'. 2022-03-31 11:44:03.7466 ERROR 'b027b874-1002-4e6b-a37b-16a720146fd6' contains an incorrectly formatted 'dateAdded'. Setting date to today's date. 2022-03-31 11:44:03.7466 ERROR 'b027b874-1002-4e6b-a37b-16a720146fd6' is missing one or more video objects. 2022-03-31 11:44:03.7466 ERROR '1baca56b-dbae-4950-9d76-418f11f7081d' contains an incorrectly formatted 'ReleaseDate'. Setting date to '2022-03-26'. 2022-03-31 11:44:03.7466 ERROR '1baca56b-dbae-4950-9d76-418f11f7081d' contains an incorrectly formatted 'dateAdded'. Setting date to today's date. 2022-03-31 11:44:03.7466 ERROR '1baca56b-dbae-4950-9d76-418f11f7081d' is missing one or more video objects. 2022-03-31 11:44:03.7536 ERROR '4771b0e7-2dae-45b8-9036-eb4f18af1b68' contains an incorrectly formatted 'ReleaseDate'. Setting date to '2022-03-26'. 2022-03-31 11:44:03.7536 ERROR '4771b0e7-2dae-45b8-9036-eb4f18af1b68' contains an incorrectly formatted 'dateAdded'. Setting date to today's date. 2022-03-31 11:44:03.7536 ERROR '4771b0e7-2dae-45b8-9036-eb4f18af1b68' is missing one or more video objects. 2022-03-31 11:44:03.7536 ERROR 'bb6beea1-2685-4f6b-a091-b93a4d85e8c6' contains an incorrectly formatted 'ReleaseDate'. Setting date to '2022-03-26'. 2022-03-31 11:44:03.7536 ERROR 'bb6beea1-2685-4f6b-a091-b93a4d85e8c6' contains an incorrectly formatted 'dateAdded'. Setting date to today's date. 2022-03-31 11:44:03.7536 ERROR 'bb6beea1-2685-4f6b-a091-b93a4d85e8c6' is missing one or more video objects. 2022-03-31 11:44:03.7536 ERROR 'e52a8ac2-ba53-46f8-84d6-a95db1ac719c' contains an incorrectly formatted 'ReleaseDate'. Setting date to '2022-03-26'. 2022-03-31 11:44:03.7536 ERROR 'e52a8ac2-ba53-46f8-84d6-a95db1ac719c' contains an incorrectly formatted 'dateAdded'. Setting date to today's date. 2022-03-31 11:44:03.7536 ERROR 'e52a8ac2-ba53-46f8-84d6-a95db1ac719c' is missing one or more video objects. 2022-03-31 11:44:03.7536 ERROR '44600d13-f7fe-48f3-8fb4-4c093cd2cdb6' contains an incorrectly formatted 'ReleaseDate'. Setting date to '2022-03-26'. 2022-03-31 11:44:03.7536 ERROR '44600d13-f7fe-48f3-8fb4-4c093cd2cdb6' contains an incorrectly formatted 'dateAdded'. Setting date to today's date. 2022-03-31 11:44:03.7536 ERROR '44600d13-f7fe-48f3-8fb4-4c093cd2cdb6' is missing one or more video objects.
In particular, you've defined the Content object as an array rather than an object.
The 'duration' field is a value in the Content object and is the total number of runtime seconds for the video.
ok, so if I add the duration of the videos it should work?
I have taken off all but one video and added the duration, but it still returns the same error.
{ "providerName": "EliYah.com", "lastUpdated": "2022-12-3T10:38:28+00:00", "language": "en", "movies": [{ "id": "b027b874-1002-4e6b-a37b-16a720146fd6", "title": "Commands Of The Messiah - Part 32", "content":[{ "dateAdded": "2022-03-26T18:04:42", "videos": [{ "url": "https://eliyah.com/video/broadcast/20220326-study.mp4", "quality": "HD", "videoType": "MP4", "bitrate": "1900", "duration": 10800 }] }], "genres": [ "educational" ], "rating": { "rating": "UNRATED", "ratingSource": "USA_PR" }, "tags": ["Eliyah.com"], "thumbnail": "https://eliyah.com/wp-content/uploads/2022/03/channel-poster_fhd.png", "releaseDate": "2022-03-26T18:04:42", "shortDescription": "Sorry, this Archive currently has no Description", "longDescription": "Sorry, this Archive currently has no Description", "categories": [{"name": "Latest","order": "most_recent","query": "live OR Eliyah.com"}] } ]}
interesting, let me try a different link
We’re upgrading Roku Community to bring you a faster, more mobile-friendly experience. You may notice limited functionality or read-only access during this time. Read more here.
Planned Downtime:
Community will be unavailable for up to 24–48 hours during the upgrade window during the week of May 19th and you may notice reduced functionality.
In the meantime, for additional assistance, visit our Support Site.
We're sorry for this disruption — we’re excited to share what’s next!
For support, visit support.roku.com.