> ## Documentation Index
> Fetch the complete documentation index at: https://www.ayrshare.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# YouTube API

> Опції публікації через YouTube API

<Warning>
  Публікація у YouTube вимагає, щоб ваш акаунт YouTube мав щонайменше один Channel, і ви були власником цього Channel.
  Щоб створити YouTube Channel, натисніть на свій профіль у YouTube Dashboard і виберіть "Create a Channel".
  Ви також можете скористатися прямим посиланням для створення YouTube Channel: [http://m.youtube.com/create\_channel](http://m.youtube.com/create_channel)

  Якщо виникають проблеми з переглядом каналів YouTube, див. [посібник з усунення несправностей із каналами YouTube](/help-center/technical-support/youtube_channels_not_showing).
</Warning>

<Info>
  Помилки завантаження YouTube можуть повертати коди помилок **453** (timeout) або **454**
  (service unavailable) із `retryAvailable: true`. Ваша інтеграція може перевіряти цей прапорець і
  автоматично повторювати тимчасові помилки із затримкою. Повний перелік див. у
  [довіднику з кодами помилок](/errors/errors-ayrshare).
</Info>

Докладніше див. [YouTube Media Guidelines](/media-guidelines/youtube) та [YouTube Authorization](/dashboard/connect-social-accounts/youtube).

## Публікація у YouTube

### Огляд публікації

Публікація через YouTube API вимагає об'єкта `youTubeOptions` щонайменше з параметром `title` (макс. 100 символів).
`title` — єдине обов'язкове поле, його можна автоматично згенерувати за допомогою [ендпоінта transcribe](/apis/generate/transcribe-video).

Наприклад, щоб опублікувати YouTube-відео зі стандартними налаштуваннями:

```json YouTube Post theme={"system"}
{
  // Required: Video description
  "post": "My Best YouTube Description", // empty string is allowed

  // Required: Platform to post to
  "platforms": ["youtube"],

  // Required: URL of video (only 1 allowed)
  "mediaUrls": ["https://img.ayrshare.com/012/vid.mp4"],

  "youTubeOptions": {
    // Required: Video title (max 100 characters)
    "title": "Your Best Title"
  }
}
```

Відео YouTube за замовчуванням мають статус `private`, але видимість можна встановити як `public` або `unlisted`.
Про опціональні поля див. нижче.

### Опціональні поля YouTube-посту

Нижче наведено кілька інших опціональних полів, включно з `visibility` відео, `tags` та датою `publishAt`. Вимоги й описи див. у коментарях.

```json YouTube Post Optional Fields theme={"system"}
{
  // Required fields
  "post": "My Best YouTube Description", // Video description, up to 5,000 characters
  "platforms": ["youtube"], // Platform to post to
  "mediaUrls": ["https://img.ayrshare.com/012/vid.mp4"], // URL of video (1 allowed)

  "youTubeOptions": {
    // Required fields
    "title": "Your Best Title", // Video Title (max 100 characters)

    /** Optional Fields **/

    // Visibility: "public", "unlisted", or "private" (default: "private")
    "visibility": "private",

    // Thumbnail settings - JPEG/PNG URL under 2MB, must end in png/jpg/jpeg
    "thumbNail": "https://img.ayrshare.com/012/gb.jpg",

    // Video organization
    "playListId": "PLrav6EfwgDX5", // Playlist ID to add the video
    "tags": ["dancing", "dogs"], // Tag array (400 chars total, 2+ chars each)

    // Video settings
    "madeForKids": false, // Self-declared kids content (default: false)
    "license": "youtube", // "youtube" (default) or "creativeCommon"
    "embeddable": true, // default: true
    "publicStatsViewable": true, // default: true
    "shorts": true, // Post as YouTube Short (max 3 minutes, adds #shorts)
    "notifySubscribers": true, // Send notification to subscribers (default: true)
    "categoryId": 24, // Video category (24 = Entertainment)
    "containsSyntheticMedia": true, // Disclose that a video contains realistic Altered or Synthetic (A/S) content

    // YouTube controlled publishing - UTC publish time. See below for details.
    "publishAt": "2022-10-08T21:18:36Z",
  }
}
```

<ul class="custom-bullets">
  <li>`title` має бути не більше 100 символів. `post` — не більше 5 000 символів. `post` і `title` можуть містити будь-які символи, крім \< і >.</li>
  <li>Playlist Id можна знайти, відкривши плейлист у браузері та скопіювавши значення після `list=`. Автентифікований користувач і канал повинні бути власниками плейлиста, щоб додавати відео.</li>
  <li>Якщо ваше відео не закінчується відомим розширенням, як-от mp4, використайте параметр `isVideo`. Деталі див. в [ендпоінті /post](/apis/post/post).</li>
  <li>Поле `publishAt` дозволяє YouTube керувати часом публікації.
  Відео буде private до моменту публікації, коли стане public.
  Якщо час публікації в минулому, відео буде негайно опубліковано як public.
  Не використовуйте поле `scheduleDate` посту разом із `publishAt`.</li>
  <li>Поле `containsSyntheticMedia` використовується для розкриття того, що відео містить реалістичний Altered or Synthetic (A/S) контент: змушує реальну людину виглядати так, ніби вона сказала чи зробила те, чого насправді не робила; змінює кадри реальної події чи місця; генерує реалістичну сцену, якої насправді не було.</li>
  <li>`license` — задає тип ліцензії відео. Допустимі значення: `"youtube"` (Standard YouTube License, за замовчуванням) або `"creativeCommon"` (Creative Commons - Attribution).</li>
  <li>`embeddable` — Boolean (або рядки `"true"` / `"false"`). Керує тим, чи можна вбудовувати відео на сторонніх сайтах. За замовчуванням: `true`.</li>
  <li>`publicStatsViewable` — Boolean (або рядки `"true"` / `"false"`). Керує тим, чи є **розширена панель статистики** на сторінці перегляду відео публічно доступною. Базові кількість переглядів і лайків залишаються публічно видимими незалежно від цього налаштування. За замовчуванням: `true`. Деталі див. у [`status.publicStatsViewable` у довіднику YouTube Data API](https://developers.google.com/youtube/v3/docs/videos#status.publicStatsViewable).</li>
  <li>Докладніше див. [YouTube Media Guidelines](/media-guidelines/youtube).</li>
</ul>

<Note>
  **Монетизація та контроль контенту**

  Поля `madeForKids`, `license`, `embeddable` та `publicStatsViewable` можна задавати через Ayrshare API під час завантаження. Однак прямі перемикачі монетизації (увімкнення/вимкнення реклами), вибір типу реклами (pre-roll, mid-roll, post-roll), розподіл доходів і Content ID вимагають облікових даних YouTube CMS — доступних лише для MCN та enterprise content owners — і **не** доступні через стандартний YouTube OAuth чи Ayrshare API.
</Note>

## YouTube Shorts

YouTube Short — це коротке вертикальне відео тривалістю до трьох хвилин.
Це аналог відео TikTok та Instagram/Facebook Reels.

### Публікація YouTube Shorts

Ви можете опублікувати YouTube Shorts тривалістю до 3 хвилин, додавши параметр `shorts` до об'єкта `youTubeOptions`.

```json YouTube Shorts Post theme={"system"}
{
  "youTubeOptions": {
    "shorts": true
  }
}
```

Хештег <i>#shorts</i> буде додано до опису YouTube.

### Важлива інформація про YouTube Shorts

<ul class="custom-bullets">
  <li>
    Надсилання відео як Short — це вказівка YouTube, що ви хочете, щоб відео з'явилося
    як Short, але не гарантує це. Відео має відповідати вимогам [Short
    video](/media-guidelines/youtube#shorts), зокрема тривалість не більше 3 хвилин і
    вертикальне співвідношення сторін 9:16, щоб YouTube вважав його Short.
  </li>

  <li>YouTube Shorts не підтримують мініатюри.</li>

  <li>
    Додаткова інформація про використання [API для публікації YouTube
    Shorts](https://www.ayrshare.com/blog/post-youtube-shorts-with-an-api/).
  </li>
</ul>

## Мініатюри YouTube

<Info>
  Кастомні мініатюри вимагають **верифікованого каналу YouTube**. Найпоширеніша причина, чому мініатюра не застосовується (хоча відео все одно публікується) — це неверифікований канал. Верифікуйте на [https://www.youtube.com/verify](https://www.youtube.com/verify) (верифікація по телефону). Ваш `thumbNail` також має бути **PNG або JPG/JPEG**, **не більше 2MB** і доступним за **робочим URL**; Ayrshare перевіряє це перед публікацією, коли це можливо. Коли відео публікується, а мініатюра не застосовується, результат YouTube зберігає `status: "success"` і додає масив `warnings` (`feature: "thumbnail"`, `code: 307`) з описом помилки. Повне вирішення див. в [YouTube Thumbnail Not Applied (Unverified Channel)](/help-center/technical-support/youtube_thumbnail_unverified_channel).
</Info>

### Додавання мініатюр YouTube

Мініатюри YouTube та інші можливості (наприклад, завантаження 15-хвилинних відео) потребують верифікації вашого номера телефону.
`thumbNail` — це URL JPEG або PNG розміром до 2MB. Розширення файлу має бути png, jpg або jpeg.

```json YouTube Thumbnail theme={"system"}
{
  "youTubeOptions": {
    "thumbNail": "https://img.ayrshare.com/012/gb.jpg"
  }
}
```

YouTube Shorts наразі не підтримують мініатюри.

### Увімкнення мініатюр у YouTube Studio

Вам мають бути надані дозволи YouTube для публікації мініатюр. У [YouTube Studio](https://studio.youtube.com/) перейдіть до *Settings->Channel*. Виберіть "*Feature Eligibility*" і натисніть "*Features that require phone verification*". Введіть свій номер телефону, щоб увімкнути.

<img class="center" src="https://mintcdn.com/ayrshare-docs/Nmrhj2Gh7WSf62Bh/images/apis/post/yt-thumb.webp?fit=max&auto=format&n=Nmrhj2Gh7WSf62Bh&q=85&s=67855a44b4ab5612d5f89df9db511556" alt="YouTube Studio" width="1200" height="781" data-path="images/apis/post/yt-thumb.webp" />

<Warning>
  YouTube може знадобитися до 24 годин, щоб увімкнути мініатюри після верифікації номера. Зверніть увагу: YouTube визначає право на додавання мініатюр. "Enabled" верифікація телефону не гарантує, що YouTube дозволить завантажувати мініатюри.

  Якщо ви верифіковані вже 24 години й проблема лишається, перевірте:

  1. Чи можете ви вручну завантажувати мініатюри у YouTube Studio.
  2. Якщо ви працюєте з Brand Content Owner Account (часто для бізнес- або організаційних каналів), переконайтеся, що у вас є необхідні дозволи. Рекомендуємо права "Owner".
  3. Якщо проблема лишається, перегляньте це відео про [вирішення проблеми з мініатюрами](https://www.youtube.com/watch?v=1bFmX2uQk0Y).
</Warning>

## Відео: публікація у YouTube через API

<iframe width="380" height="200" src="https://www.youtube.com/embed/UkisNgVxubg" title="Posting to YouTube API" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" />

## Ліміти завантаження

YouTube обмежує кількість відео, які канал може завантажити через YouTube API за 24 години.

<ul class="custom-bullets">
  <li>
    Залежно від місцезнаходження творця, канал може збільшити свій добовий ліміт,
    отримавши доступ до розширених функцій. Дізнатися більше у цій
    [статті](https://notifications.google.com/g/p/ACnX6LbjUElgT-OfRLVjenkpdldv6pIJ5JYGZyPGTdJwRYmo3fXFkfXJsPGnswgns0BjJ6Bjxn2bqpqfBt6gBdkLoqESKA7mqLNllzcR2qnYUJn5KlJN5jPqCWl6DGr58cZEt94mMvxXATN6_PaBR1RYEpNMTYWN).
  </li>

  <li>
    Ліміти можуть різнитися залежно від країни/регіону або історії каналу. Copyright strikes можуть впливати на
    право за історією каналу, а [Community Guidelines
    strikes](https://support.google.com/youtube/answer/2802032) впливатимуть на те, скільки канал може
    завантажувати.
  </li>
</ul>

Якщо ви отримали помилку ліміту завантаження, зачекайте та спробуйте знову через 24 години.

## Посилання в описі

Ви маєте активувати **Advanced Features** у YouTube Studio, щоб мати клікабельні посилання в описі відео YouTube.

Перейдіть у **YouTube Studio -> Settings -> Channel -> Feature Eligibility -> Advanced Features -> Access Features**, щоб активувати розширені функції.

<img class="center" src="https://mintcdn.com/ayrshare-docs/Nmrhj2Gh7WSf62Bh/images/apis/post/YT-settings.webp?fit=max&auto=format&n=Nmrhj2Gh7WSf62Bh&q=85&s=129f12886c2896167f936dcc7c633234" alt="YouTube Feature Eligibility" width="1000" height="661" data-path="images/apis/post/YT-settings.webp" />

## Плейлисти

Ви можете додавати відео до плейлиста YouTube, вказавши `playListId` в об'єкті `youTubeOptions`.
Переконайтеся, що автентифікований користувач і канал є власниками плейлиста.

```json YouTube Playlist theme={"system"}
{
  "youTubeOptions": {
    "playListId": "PLrav6EfwgDX5"
  }
}
```

## Субтитри / підписи до відео

Ви можете додавати субтитри YouTube (також відомі як YouTube captions) до відео, вказавши [SRT-файл](https://en.wikipedia.org/wiki/SubRip) або YouTube [SBV-файл](https://support.google.com/youtube/answer/2734698). Використовуйте поле `subTitleUrl` в об'єкті `youTubeOptions`, щоб вказати URL до SRT- або SBV-файлу.

```json YouTube Subtitles theme={"system"}
{
  "youTubeOptions": {
    "title": "My new post from Ayrshare to Youtube",
    "subTitleUrl": "https://img.ayrshare.com/012/captions.srt",
    "subTitleLanguage": "en",
    "subTitleName": "English"
  }
}
```

<ul class="custom-bullets">
  <li>
    `subTitleUrl`: валідний SRT- або SBV-файл. URL має починатися з `https://` та закінчуватися на `.srt` або
    `.sbv` і бути валідним SRT- або SBV-файлом. Файл має бути меншим за 100 MB.
  </li>

  <li>
    `subTitleLanguage`: опціонально. Мова субтитрів. Має бути валідним [кодом
    мови](/iso-codes/language). За замовчуванням: "en".
  </li>

  <li>
    `subTitleName`: опціонально. Назва треку субтитрів. Ця назва відображається
    користувачу як опція під час відтворення. Максимальна довжина — 150 символів.
    За замовчуванням: "English".
  </li>
</ul>

<Note>
  **Що таке SRT- та SBV-файли?**

  SRT (SubRip Subtitle) і SBV (YouTube SubViewer) — формати файлів субтитрів для відображення
  синхронізованого тексту у відео. Основна відмінність — SRT використовує часові мітки у форматі HH:MM:SS,MS з
  розділювачами-стрілками, а SBV — HH:MM:SS.MS з комами.

  ```text theme={"system"}
  ## SRT Format Example
  1
  00:00:01,000 --> 00:00:04,000
  Welcome to our tutorial on subtitle formats.

  2
  00:00:04,500 --> 00:00:08,000
  Today we'll learn about SRT and SBV files.

  ## SBV Format Example
  0:00:01.000,0:00:04.000
  Welcome to our tutorial on subtitle formats.

  0:00:04.500,0:00:08.000
  Today we'll learn about SRT and SBV files.
  ```
</Note>

## Теги

Ви можете додавати теги YouTube до своїх відео, вказавши масив `tags` в об'єкті `youTubeOptions`.
Кожен тег має бути щонайменше з 2 символів, а сумарна довжина всіх тегів не повинна перевищувати 500 символів.

```json YouTube Tags theme={"system"}
{
  "youTubeOptions": {
    "tags": ["dancing", "dogs"]
  }
}
```

## Згадки у YouTube

Хоча ви можете додати `@handle` у пост YouTube, YouTube не підтримує розпізнавання згадок у тексті посту.
`@handle` залишиться звичайним текстом.

## Обмеження на символи

Докладніше див. [YouTube Character Limits](/help-center/technical-support/character_limits#youtube-character-limits).

## Додаткові ендпоінти

<Card title="Get YouTube Categories" icon="code" href="/apis/utils/youtube-categories" horizontal />

<Card title="Set YouTube Watermark" icon="code" href="/apis/utils/set-youtube-watermark" horizontal />

<Card title="Remove YouTube Watermark" icon="code" href="/apis/utils/remove-youtube-watermark" horizontal />
