Как правильно передать массив данных в POST запросе?

У Яндекса нашел образец POST запроса, а отправить его не могу, получаю bool(false)

Вот, что предлагает Яндекс:

Тело запроса

{
  "board_id": string,
  "content": [
    {
      "source": {
        "url": string
      },
      "source_type": string
    }
  ],
  "description": string,
  "source_meta": {
    "page_domain": string,
    "page_title": string,
    "page_url": string
  }
}

Отправить пытаюсь так:

$body = '{
  "board_id": 3e5005e000000000092c234,
  "content": [
    {
      "source": {
        "url": https://site.ru/123934.jpg
      },
      "source_type": image
    }
  ],
  "description": Описание карточки. Максимальная длина описания — 2048 символов.,
  "source_meta": {
    "page_domain": site.ru,
    "page_title": Заголовок страницы с контентом,
    "page_url": https://site.ru
  }
}';

$opts = array('http' =>
  array(
    'method'  => 'POST',
    'header'  => "Host: api.collections.yandex.net\r\n".
    "Authorization: OAuth AgAAAAAAAAAAAAAAAADDDDDDDD3jHzZ8\r\n".
    "Content-Type: application/json; charset=utf-8\r\n".
    "Accept: application/json\r\n",
    'content' => $body
  )
);
                   
$context  = stream_context_create($opts);
$url = 'https://api.collections.yandex.net/v1/cards/?as_company=my_company';
$result = file_get_contents($url, false, $context);

Документация

Где я ошибся? Как верно отправить запрос?

Спасибо!


Ответы (0 шт):