Executando verificação de segurança...
2

[PITCH] TVShow - Uma API para buscar filmes/séries

Olá pessoal, tudo bem ?

Fiz uma publicação recentemente sobre minha aventura no ambiente mobile criando um app e uma api para buscar filmes/séries, mencionei também algumas features que o aplicativo tem, para saber mais clique aqui -> TabNews - TVShow

Hoje vim falar um pouco mais sobre a API e comentar as funcionalidades dela, ela pode ser consumida através do RapidApi - TVShow que consiste em 6 features de uma forma geral

  • /Movies (Filmes)
  • /Series (Série)
  • /Genre (Gênero)
  • /Cast (Elenco)
  • /Provider (Onde assistir)
  • /Language (Idiomas)

Agora irei detalhar um pouco mais o que é possível fazer em cada endpoint

/Languages

Será retornado uma lista de idiomas suportados na aplicação, será retornado uma lista de códigos onde é possível utilizar para realizar as buscas dos titulos

[... { code:"pt-BR" name:"Portuguese brazil" } ...]

/Movie

Aqui teremos todos os endpoints relacionados a filmes

/Movie/Search

Esse endpoint serve para buscar, de forma paginada, filmes a partir de um idioma para isso você pode informar os seguintes parametros na query:

params: { Language: 'pt-BR', Content: 'Exterminador do futuro', Adult: 'false', Page: '1' }

exemplo: /Movie/Search?language=pt-BR&content=Exterminador do futuro&adult=false&page=1

/Movie/TopRated

Aqui vai ser retornados os filmes mais bem avaliados

params: { Language: 'pt-BR', Adult: 'false', Page: '1' }

exemplo: /Movie/TopRated?language=pt-BR&adult=false&page=1

/Movie/Popular

Aqui vai ser retornados os filmes mais populares do momento, são filmes que podem estar em cartaz, que recentemente tiveram muitas avaliações nos streams ou mais assitidos

params: { Language: 'pt-BR', Adult: 'false', Page: '1' }

exemplo: /Movie/Popular?language=pt-BR&adult=false&page=1

/Movie/UpComing

Nesse endpoint serão retornados os filmes que estão em cartaz ou que entrará nos cinemas/streams na próxima semana

params: { Language: 'pt-BR', Adult: 'false', Page: '1' }

exemplo: /Movie/UpComing?language=pt-BR&adult=false&page=1

/Movie/Discover

Aqui vai ser retornado filmes aleatorios mais assistidos ou que está em cartaz e não é popular.

params: { Language: 'pt-BR', Adult: 'false', Page: '1' }

exemplo: /Movie/Discover?language=pt-BR&adult=false&page=1

/Movie/Detail

Esse endpoint serve para retornar os detalhes de um ou mais filmes como:

  • Titulo
  • Data de lançamento
  • Filme com classificação +18
  • Popularidade
  • Sinopse

params: { Items: '1029575,466420,940721,976573,1143183', Language: 'en-US' }

exemplo: /Movie/Detail?items=1029575,466420,940721,976573,1143183&language=pt-BR

/Serie

Aqui teremos todos os endpoints relacionados as séries

/Serie/Search

Esse endpoint serve para buscar,de forma paginada, séries a partir de um idioma para isso você pode informar os seguintes parametros na query:

params: { Language: 'pt-BR', Content: 'Exterminador do futuro', Adult: 'false', Page: '1' }

exemplo: /Serie/Search?language=pt-BR&content=Exterminador do futuro&adult=false&page=1

/Serie/OnTheAir

Nesse endpoint serão retornados as séries que irão entrar no stream ou que ainda estão em exibição

params: { Language: 'pt-BR', Adult: 'false', Page: '1' }

exemplo: /Serie/OnTheAir?language=pt-BR&adult=false&page=1

/Serie/Discover

Aqui vai ser retornado séries aleatorias mais assistidas ou que está em cartaz e não é popular.

params: { Language: 'pt-BR', Adult: 'false', Page: '1' }

exemplo: /Serie/Discover?language=pt-BR&adult=false&page=1

/Serie/Detail

Esse endpoint serve para retornar os detalhes de uma ou mais séries como:

  • Titulo
  • Data de lançamento
  • Filme com classificação +18
  • Popularidade
  • Sinopse
  • Número de episódios
  • Número de temporadas
  • Se ainda está em produção

params: { Items: '1029575,466420,940721,976573,1143183', Language: 'en-US' }

/Serie/Episodes

Aqui vai ser retornado dados dos episódios de uma série de uma temporada informada na requisição.

  • Nome
  • Sinopse
  • Data de exibição
  • Número do episódio
  • Número da season
  • Uma imagem do episódio

params: { ItemId: '1434', SeasonNumber: '1', Language: 'en-US' }

exemplo: /Serie/Episodes?itemId=1434&language=pt-BR&seasonNumber=1

/Genre

Aqui é o endpoint destinado a padronização dos gêneros, é retornado um id e nome que servem para identificar os gêneros dos títulos

exempo do retorno: [...{id:10759, name:"Ação e aventura"}...]

/Genre/Serie

params: { Language: 'en-US' }

exemplo: /Genre/Serie?language=pt-BR

/Genre/Movie

params: { Language: 'en-US' }

exemplo: /Genre/Movie?language=pt-BR

/WatchProvider

É o endpoint destinado a informar onde pode ser assistido, alugado ou comprado aquele título

/WatchProvider/Movie

params: {ItemId: '872585'}

exemplo: /WatchProvider/Movie?itemId=872585

/WatchProvider/Serie

params: {ItemId: '872585'}

exemplo: /WatchProvider/Serie?itemId=872585

/Cast

É o endpoint destinado a retornar o elenco de um título e seu respectivo personagem

/Cast/Movie

params: { ItemId: '872585', Language: 'pt-BR' }

exemplo: /Cast/Movie?itemId=872585

/Cast/Serie

params: { ItemId: '872585', Language: 'pt-BR' }

exemplo: /Cast/Serie?itemId=872585

Conclusão

No RapidApi - TVShow há exemplos de chamadas e retornos de todos os endpoints para que possam ser consumidos, porém qualquer dúvida estarei a disposição no privado para conversar

Atualmente estou trabalhando na inclusão de parametros em algumas rotas para que seja possível realizar uma espécie de funíl nas buscas e fazer com que cada vez mais o usuário receba indicações de titulos que seja do seu perfil.

Além disso estou buscando sempre melhorar o desempenho e segurança da aplicação para que fique sempre disponível para o uso.

Espero que de alguma forma esse post seja útil, seja em algum estudo ou na criação de sua própria aplicação.

Obrigado!

Carregando publicação patrocinada...
1
1

você poderia implementar uma funcionalidade que fizesse também a busca por torrents com o seu respectivo link magnético, mas é claro é algo bem específico e você deve levar em consideração que pode levar ela ser de direitos autorais dos grandes estúdios, mas é assim mesmo kkk