schema.graphql 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. # -----------------------------------------------
  2. # !!! THIS FILE WAS GENERATED BY TYPE-GRAPHQL !!!
  3. # !!! DO NOT MODIFY THIS FILE BY YOURSELF !!!
  4. # -----------------------------------------------
  5. type CategoryFeaturedVideos {
  6. categoryId: ID!
  7. videos: [FeaturedVideo!]!
  8. }
  9. type ChannelFollowsInfo {
  10. follows: Int!
  11. id: ID!
  12. }
  13. type EntityViewsInfo {
  14. id: ID!
  15. views: Int!
  16. }
  17. type FeaturedVideo {
  18. videoCutUrl: String
  19. videoId: ID!
  20. }
  21. input FeaturedVideoInput {
  22. videoCutUrl: String
  23. videoId: ID!
  24. }
  25. type Mutation {
  26. """Add a single view to the target video's count"""
  27. addVideoView(categoryId: ID, channelId: ID!, videoId: ID!): EntityViewsInfo!
  28. """Add a single follow to the target channel"""
  29. followChannel(channelId: ID!): ChannelFollowsInfo!
  30. setCategoryFeaturedVideos(categoryId: ID!, videos: [FeaturedVideoInput!]!): [FeaturedVideo!]!
  31. setVideoHero(newVideoHero: VideoHeroInput!): VideoHero!
  32. """Remove a single follow from the target channel"""
  33. unfollowChannel(channelId: ID!): ChannelFollowsInfo!
  34. }
  35. type Query {
  36. """Get featured videos for all categories"""
  37. allCategoriesFeaturedVideos: [CategoryFeaturedVideos!]!
  38. """Get featured videos for a given video category"""
  39. categoryFeaturedVideos(categoryId: ID!): [FeaturedVideo!]!
  40. """Get list of most viewed categories in a given time period"""
  41. mostViewedCategories(
  42. limit: Int
  43. """timePeriodDays must take one of the following values: 7, 30"""
  44. timePeriodDays: Int!
  45. ): [EntityViewsInfo!]
  46. """Get list of most viewed categories of all time"""
  47. mostViewedCategoriesAllTime(limit: Int!): [EntityViewsInfo!]
  48. """Get current video hero"""
  49. videoHero: VideoHero!
  50. }
  51. type VideoHero {
  52. heroPosterUrl: String!
  53. heroTitle: String!
  54. heroVideoCutUrl: String!
  55. videoId: ID!
  56. }
  57. input VideoHeroInput {
  58. heroPosterUrl: String!
  59. heroTitle: String!
  60. heroVideoCutUrl: String!
  61. videoId: ID!
  62. }