tuber uses one naming and return-value grammar across
its public API.
list_*() functions correspond to YouTube list endpoints.
They retrieve a collection and usually support pagination.
get_*() functions return a derived, enriched, or singular
result. Write functions use the operation as the verb, such as
create_playlist(), upload_video(),
delete_comment(), and
set_video_thumbnail().
The resource noun follows the verb. Names use full words where the
API concept is not already familiar:
list_video_categories() rather than an abbreviation, and
get_video_stats() rather than a generic
get_stats().
Arguments use snake case. Plural ID arguments accept vectors, while singular ID arguments accept one value. Functions that expose several YouTube filters require exactly one primary filter and report conflicting combinations before making a request.
max_results always limits the total number of returned
items. The function may make several requests because YouTube caps
individual response pages. page_token selects the first
page when a caller needs to resume a previous request.
Public reads use auth = "key" by default. Pass
auth = "token" when the resource is private. Functions that
always require OAuth, including writes and owner-only reads, do not
expose an auth choice.
Collection functions return a data frame by default and a collected
API response when simplify = FALSE. Fixed simplified
schemas use snake-case columns and preserve their columns even when no
rows are returned.
get_video_details() is the deliberate exception. Its
columns depend on the requested part values and retain
YouTube’s field names. Use simplify = FALSE when you need
the nested video resource or an owner-only part.
Write functions return the created or updated API resource. Upload functions return the final HTTP response, the parsed resource, and the relevant YouTube URL. Delete functions return the HTTP response invisibly.
The table records the public wrappers in this release. It is a
support matrix, not a claim that tuber implements the
entire YouTube API.
| Resource | Read and analysis | Write |
|---|---|---|
| Channels | get_channel_details(), get_my_channel(),
list_channel_activities(),
list_channel_videos() |
insert_channel_banner() |
| Channel sections | list_channel_sections() |
delete_channel_section() |
| Videos | get_video_details(), get_video_stats(),
list_popular_videos(), list_my_videos() |
upload_video(), update_video_metadata(),
set_video_thumbnail(), delete_video() |
| Playlists | list_playlists(), list_playlist_items(),
ID helpers |
create_playlist(),
change_playlist_title(),
add_video_to_playlist(), delete functions |
| Comments | list_comment_threads(), list_comments(),
get_all_comments() |
post_comment(), reply_to_comment(),
moderation and delete functions |
| Captions | list_captions(), download_caption() |
upload_caption(), delete_caption() |
| Search | yt_search(), search_short_videos() |
Not applicable |
| Live and monetization | list_live_broadcasts(),
list_live_chat_messages(),
list_super_chat_events(),
list_channel_members() |
Not implemented |
| Subscriptions | list_subscriptions() |
Not implemented |
| Reference data | languages, regions, video categories, and abuse-report reasons | Not applicable |
The package does not currently wrap playlist images, watermarks, caption updates, subscription mutations, or the write methods for live-streaming resources. Google has retired related-video search and guide categories, so this release does not expose wrappers for those endpoints.
Version 2.0.0 removes ambiguous abbreviations and applies the
list_*() rule.
| Before 2.0.0 | 2.0.0 |
|---|---|
get_comments() |
list_comments() |
get_comment_threads() |
list_comment_threads() |
get_playlist_items() |
list_playlist_items() |
get_playlists() |
list_playlists() |
get_subscriptions() |
list_subscriptions() |
get_live_chat_messages() |
list_live_chat_messages() |
get_super_chat_events() |
list_super_chat_events() |
get_stats() |
get_video_stats() |
get_channel_stats() |
get_channel_details() |
list_videos() |
list_popular_videos() |
list_videocats() |
list_video_categories() |
list_langs() |
list_languages() |
get_captions() |
download_caption() |