GelotvBot.APIs.YouTube (GeloTVBot v0.1.0)

Copy Markdown View Source

Generic YouTube Data API v3 client.

Summary

Types

credentials()

@type credentials() :: %{
  optional(:access_token) => String.t(),
  optional(:api_key) => String.t()
}

Functions

delete(path, credentials, opts \\ [])

delete_decoded(path, credentials, opts \\ [])

get(path, credentials, opts \\ [])

get_decoded(path, credentials, opts \\ [])

insert_live_chat_message(credentials, live_chat_id, text, opts \\ [])

@spec insert_live_chat_message(credentials(), String.t(), String.t(), keyword()) ::
  GelotvBot.HTTPClient.response()

live_broadcasts(credentials, opts \\ [])

@spec live_broadcasts(
  credentials(),
  keyword()
) :: GelotvBot.HTTPClient.response()

live_chat_messages(credentials, live_chat_id, opts \\ [])

@spec live_chat_messages(credentials(), String.t(), keyword()) ::
  GelotvBot.HTTPClient.response()

paginate(path, credentials, opts \\ [])

@spec paginate(String.t(), credentials(), keyword()) ::
  {:ok, [map()]} | {:error, term()}

patch(path, credentials, body, opts \\ [])

patch_decoded(path, credentials, body, opts \\ [])

post(path, credentials, body, opts \\ [])

post_decoded(path, credentials, body, opts \\ [])

put(path, credentials, body, opts \\ [])

put_decoded(path, credentials, body, opts \\ [])

refresh_token(credentials, opts \\ [])

@spec refresh_token(
  map() | keyword(),
  keyword()
) :: {:ok, map()} | {:error, term()}

request(method, path, credentials, opts \\ [])

request_decoded(method, path, credentials, opts \\ [])

@spec request_decoded(atom(), String.t(), credentials(), keyword()) ::
  {:ok, map()} | {:error, term()}