Записи в журнале изменений разделяются на следующие категории:
Категории Новые функции, Изменения и Упраздненные элементы относятся только к этой версии. Категория Важные изменения за 90 дней относится ко всем версиям.
Категория Важные изменения здесь не упоминается, так как она не привязана к определенным выпускам.
Released April 18, 2017 | Available until July 18, 2019
Read After Write - Graph API POST
requests now support returning specified values of an object during the same request as a write, saving a round trip for clients. If a fields
parameter is specified (explanation of the syntax), the request will first do the write, then read the created or updated object, selecting fields using the fields
parameter, as the response. Read-after-write is now enabled for all versions of the Graph API. Visit our docs page to learn more.
New short_names
Field on the User Object - The following field has been added to the user
endpoint:
short_name
- first_name
assumes the universally friendly way to refer to a person is by their first name. However, in many cultures (especially Chinese, Japanese, Korean, Thai, Indic, and a few others), it's inappropriate to address people by their first name. The new short_name method understands the culture-specific rules for how to address a person with a short name. So, for a viewer in the US, they'll continue to see friends in China, Japan, Korea, and India addressed by their first name, but their friends in East and South Asia will see friends with full names.Business App Page Mapping - The user
node has two new edges, ids_for_pages
and ids_for_apps
, for de-referencing a person's ID for an app or a page. The ids_for_pages
edge returns other IDs that person has for pages owned by the same business. Similarly, the ids_for_apps
edge returns other IDs that person has for apps owned by the same business. See Connecting with People Across Apps and Bots in Messenger.
Page POST Support to Add Pages to Crosspost Videos - Approve and accept a crossposting relationships request from another page by POST /{page_id}/crossposting_pages
.
Webhooks IDs Are Serialized as Strings - Numeric IDs are converted to strings in this webhooks update.
Granular Permissions - This new feature gives people more control over managed object permissions. During the login step, if a permission related to pages, business, or groups is granted, the user will have the option to select which managed objects the permission applies to. This means that you might see fewer pages, businesses and groups. Users can manage the following permissions at a granular level:
Current Place - The following fields have been added:
GET /current_place/results
- Helps determine what place a person is currently at by using location signals. User permission is required.POST /current_place/feedback
- Allows you to provide feedback about whether they were actually there. For more information, see Places GraphGET /search?type=place
- The following parameters have been added:
categories
- Search by category.matched_categories
- Indicate which categories the resulting place matches. Must be used with categories
.Time Spent in Video Metrics for Page - The following metrics have been added. For more information, see Insights Metric /{object-id}/insights/{metric}.
page_video_view_time
- The time spent on videos on the page.post_video_view_time_by_country_id
- The time spent on videos on the page by country. Apps Can Receive Changed Values for User's Profile Updates with Webhooks Updates - When a user changes a field, your app can receive the new value as part of the update, saving the step of checking the value. Previously, whenever a user changed one of their fields, we would notify the app of the field that changed without sending the new value.
Documentation - Webhooks now has reference documentation for topics and fields you can subscribe to. This documentation is on Facebook Developers site under Webhooks Reference in the Graph API.
Sample Sender Tool - The new tool makes it easier for developers to test out the Webhooks update structure before subscribing to the topic. In the past, developers had to subscribe to a field and then try to trigger the update by making a change through Facebook. For example, an app might need to know when a user (users that installed the app and granted needed permissions) changes their profile picture. The app would subscribe to the profile picture field in the Webhooks framework. However, to test how this works, you had to change the profile picture on some user that had installed the app to see the structure of the update we send. The sample sender tool allows apps to test the update structure without having to make an unnecessary change. You can find the sample sender tool in the webhooks section of your app's dashboard.
Versioning - Webhooks versions are now the same as Graph API. Any existing Webhooks subscriptions will be running on the oldest supported version of the app. Previously, Webhooks subscriptions didn't support versioning. The only way to make changes was by making breaking changes. For more information on Webhooks versions, see Versioning.
The Batch API returns an error rather than a null response for aborted request items in the Batch API. For more information, see Graph API, Making Batch Requests.
GET /{url}/share
- The share
endpoint has been removed and replaced with:
engagement
field with subfields:
comment_count
comment_plugin_count
reaction_count
share_count
/{page-id}/feed
- Backdated posts are included in the {page_id}/feed
request if the backdated_time
of the post is within the since
and until
time range. The created_time
is the actual creation time. (See changes to Posts below.)
page-restaurant-services
- All fields now return false
or true
instead of 0
or 1
.
overall_star_rating
— If there are 0 or a small number of ratings, the overall_star_rating
field will not be returned. GET /{post-id}
- The following field has been added to this endpoint:
promotable_id
- Previously, certain posts could not be promoted, only their contents. In such cases, the id
field would return the contents ID, rather than the ID for the post. Posts now always return their own ID in the id
field, and a new field, promotable_id
, is added to the GET {post-id}
endpoint to be used when promoting the post.created_time
value. Instead, it will duplicate the original, but with created_time
and backdated_time
set to the new value. The original post will keep its old created_time
value and gain the new backdated_time
and value. Finally, GET {post-id}/feed
will no longer return the original post, but instead will return the newly created duplicate.Expose dash preview URL for live video instead of RTMP URL.
GET /{page_id}/crosspost_pending_approval_pages
- List all the Pages your Page has sent crossposting requests, but that have not accepted yet.
GET /{page_id}/crosspost_whitelisted_pages
- List all the pages you have given crossposting permission.
POST /{video_id}/allow_crossposting_for_pages = [{"page_id": {page_id}, "allow": {true/false}]
- Allow or disallow the permission for certain Pages in your crossposting allow list to crosspost a specific video.
POST /{page_id}/crossposting_pages=[{"page_id": {page_id}, "allow": false, "action": "EXPIRE_ALL_CROSSPOSTS_ON_SHARED_ASSETS"}]
- Remove pages from your crossposting allow list and expire all previously crossposted content.
POST /{page_id}/crossposting_pages=[{"page_id": {page_id}, "allow": false, "action": "NO_ACTION"}]
- Remove pages from your crossposting allow list without affecting previously crossposted content.
GET /{app-id}/subscriptions
- This endpoint now returns versions for fields. Before Webhooks versioning was introduced, the endpoint returned only a list of subscribed fields. Now the endpoints return the list of fields with their respective versions.GET /{message-id}
- The following field has been deprecated:
subject
GET /{thread-id}
- The following field has been deprecated:
tags
The following fields are deprecated for edges and dialogs that allow attaching links to posts:
caption
description
name
picture
thumbnail
The edges and dialogs for which these are deprecated include:
POST /{event-id}/feed
POST /{group-id}/feed
POST /{page-id}/feed
POST /{user-id}/feed
share
and feed
dialogspaid
and organic
metrics are deprecated. The following Webhooks fields from the user topic are deprecated:
about_me
birthday_date
contact_email
current_location
education_history
hometown_location
sex
statuses
tv
work_history
Instead use:
about
birthday
education
email
gender
hometown
location
status
television
work
С помощью API Marketing на Facebook можно создавать кампании с Холстами. Формат видеорекламы позволяет рекламодателям продвигать бренды и достигать целей с прямым откликом. Подробнее см. в разделе API Marketing, реклама на Холсте.
Новые API для динамической рекламы: API Checks и API Quality. API Checks позволяет убедиться, что источник сигналов предоставляет достаточно информации, чтобы показывать подходящие объявления в формате динамической рекламы. API Quality позволяет проверить и убедиться, что ваш каталог и лента содержат достаточно качественной информации для показа динамической рекламы. Подробнее см. в разделе Динамическая реклама, качество каталога и сигналов.
Несколько изображений одного объекта: теперь динамическая реклама в формате кольцевой галереи позволяет показывать несколько изображений одного объекта. В такую рекламу можно добавить до 20 изображений из каталога, соответствующих одному объекту. Например, таким объектом может быть отель или место назначения. Для этой функции мы добавили новые опции: force_single_link = true
и show_multiple_images = true
. Сведения см. в разделах «Динамическая реклама», «Управление рекламой», «Шаблон оформления».
Рекламный текст — теперь вы можете дублировать кампании, группы объявлений и отдельные объявления с помощью API Ad Copy. В этом случае вам не потребуется каждый раз создавать рекламу с нуля, потому что вы сможете дублировать эффективные объявления и создать из них шаблоны рекламы. См. раздел Оформление, плейсменты и предварительный просмотр рекламы.
Приблизительный дневной охват — мы добавили новый эндпойнт /delivery_estimate
на уровне рекламного аккаунта и группы объявлений. Этот эндпойнт позволяет узнать предполагаемый результат ставки — дневной охват и количество конверсий для выбранной группы объявлений. Подробнее см. в разделе Таргетинг, предполагаемый дневной охват.
API Rules Engine — позволяет проще и эффективнее управлять рекламой на основе правил компании, которые вы задали. В API Rules Engine используется модель на основе push-уведомлений. Вместо того чтобы постоянно отправлять в API запросы на обновление информации о рекламе, мы заранее отправляем вам push-уведомления и выполняем указанные вами действия, когда условия соответствуют правилам. Подробнее об API Rules Engine см. здесь.
API Batch — группирование и асинхронная отправка запросов. Сгруппируйте несколько вызовов API Graph в один HTTP-запрос и выполните их асинхронно без блокировки. Помимо этого, в пакетном запросе можно задать зависимости между связанными операциями. Facebook обрабатывает независимые операции параллельно, а зависимые — последовательно. См. Асинхронные и пакетные запросы, API Batch.
effective_
вы можете определить, какие из выбранных вами плейсментов соответствуют цели рекламы и были использованы для ее показа. С помощью API Recommendations вы также можете узнать, почему некоторые плейсменты исключены. См. «Таргетинг», «Дополнительно» «Эффективный плейсмент».Плейсмент в разделе «Рекомендуемое видео» — ранее был частью плейсмента в Ленте Facebook; вы автоматически выбирали его, если использовали плейсмент в Ленте. В версии 2.9 мы отделили плейсмент в разделе «Рекомендуемое видео» от плейсмента в Ленте. Теперь от него можно отказаться, даже если вы выбрали плейсмент в Ленте. Если вы использовали плейсмент в Ленте Facebook в версии 2.8 или более ранней версии, мы больше не будем автоматически показывать вашу рекламу в разделе «Рекомендуемое видео».
Цель «Местная узнаваемость» — мы упразднили цель кампании LOCAL_AWARENESS
. Начиная с версии 2.9 использовать цель LOCAL_AWARENESS
для создания новых кампаний нельзя. Чтобы повысить местную узнаваемость с помощью групп объявлений для одного места, используйте цель REACH
. LOCAL_AWARENESS
для нескольких мест больше не поддерживается. Если у вас есть кампании с этой целью, вы по-прежнему сможете считывать их, редактировать и создавать в них новые группы объявлений и отдельные объявления. Однако от типа существующей кампании зависит, сможете ли вы скопировать ее, чтобы создать новую. Если задано только одно место LOCAL_AWARENESS
, мы скопируем кампанию с указанным значением REACH
. Если задано LOCAL_AWARENESS
и несколько мест, вы не сможете скопировать кампанию.
Цели мобильной рекламы — чтобы упростить цели мобильной рекламы, мы упразднили CanvasAppEngagement
, CanvasAppInstalls
, MobileAppInstalls
и MobileAppEngagement
. Это цели CAE
, MAE
, CAI
и MAI
(в том же порядке). Начиная с версии 2.9, вы не сможете создавать кампании с этими целями. Вместо них мы поддерживаем:
группы объявлений CAE
в кампаниях с целью LINK_CLICKS
; чтобы создать кампании с рекламой CAE, используйте LINK_CLICKS
;
группы объявлений MAE
в кампаниях с целью LINK_CLICKS
или CONVERSIONS
; чтобы создать кампании с рекламой MAE, необходимо использовать LINK_CLICKS
или CONVERSIONS
;
группы объявлений CAI
с целью APP_INSTALLS
; чтобы создать кампании с рекламой CAI, нужно использовать APP_INSTALLS
;
MAI
с целью APP_INSTALLS
; чтобы создать кампании с рекламой MAI, нужно использовать APP_INSTALLS
.
Цели мобильной рекламы, совместимость — при дублировании кампаний CAE
, MAE
, CAI
и MAI
с помощью API Marketing API или инструментов Facebook мы автоматически преобразуем исключенные цели в эквивалентные цели из версии 2.9:
цели MAI
или CAI
преобразуются в APP_INSTALLS
;
цель CAE
преобразуется в LINK_CLICKS
;
цель MAE
преобразуется в LINK_LICKS
или CONVERSIONS
в зависимости от настроек оптимизации, которые вы задали для групп объявлений в кампании. При наличии дочерних групп объявлений, оптимизированных для OFFSITE_CONVERSION
, мы преобразуем кампанию MAE
в кампанию CONVERSIONS
; в противном случае кампания MAE
преобразуется в кампанию LINK_CLICKS
.
Заблокированные категории — мы исключили некоторые категории рекламы Audience Network, вставок в видео и моментальных статей и заменили их более общими категориями для тех же плейсментов. Эти категории позволяют вам запретить показ рекламы в материалах определенного типа: про онлайн-казино, алкогольные напитки и т. д. Категории politics
и religion
упразднены. Доступны следующие категории:
Для моментальных статей и Audience Network: debated_social_issues
, mature_audiences
, tragedy_and_conflict
, dating
, gambling
.
Для вставок в видео: debated_social_issues
, mature_audiences
, tragedy_and_conflict
.
Из настроек оформления рекламы на уровнях рекламного аккаунта и отдельных объявлений упразднено поле SUPPLEMENTAL_MEDIA_ID
. Вы больше не сможете считать его значение.
Из оформления рекламы упразднено поле ACTION_SPEC
. Оно использовалось для рекламных статей, которые мы больше не поддерживаем.
В версиях 2.9 и 2.8 из оформления рекламы упразднены поля actor_image_hash
, actor_image_url
и actor_name
. Они использовались вместе с элементом action_spec
, который мы также упразднили.
Из оформления рекламы исключены поля link_title
и link_description
в call_to_action
. Чтобы настроить заголовки и описания в оформлении рекламы, воспользуйтесь name
и description
в link_data
или title
и link_description
в video_data
.
run_status=3
— ранее вы могли удалить оформление рекламы с помощью этого поля и значения. Поскольку из-за этого возникали проблемы, мы переименовали run_status
в status
, а значение — из Int в значение String DELETED
. Чтобы удалить оформление рекламы, воспользуйтесь status=DELETED
.
Поле COVER_PHOTO_ID
из GET
в эндпойнтах оформления {creative_id}
и {ad_account_id}/adcreatives
упразднено. Оно редко использовалось и было предназначено только для внутреннего ограниченного применения.
image_url
или image_hash
— теперь вы можете задать только одно из этих значений в video_data
для object_story_spec
оформления рекламы. См. справку по оформлению рекламы.
OBJECT_INSTAGRAM_ID
из GET
упразднено из эндпойнтов оформления, включая {creative_id}
и AD_ACCOUNT_ID/adcreatives
. Это поле было предназначено только для внутреннего использования.
В версии 2.8 и более ранних версиях поле instagram_story_id
использовалось для получения ID публикаций в Instagram в оформлении рекламы. Если вы применяли это поле, когда задавали оформление рекламы, мы выдавали исключение, но игнорировали этот параметр и возвращали результаты с instagram_story_id
. При использовании этого отклика возникала ошибка. Чтобы устранить эту проблему, мы переименовали instagram_story_id
в effective_instagram_story_id
, и теперь вам не следует использовать это поле для настройки оформления рекламы.
Тип отклика spent
, today_spent
и yesterday_spent
для всех рекламных объектов изменен с Integer
на String
. Это влияет на кампании, группы объявлений и отдельные объявления.
Идентичные группы продуктов не поддерживаются — мы больше не разрешаем добавлять в один каталог идентичные группы продуктов. При попытке создать идентичную группу продуктов наш API вернет FacebookApiException
с кодом 10803
, содержащим ID такой же группы продуктов.
quoted_fields
в POST /{product_feed_id}
больше не используется. В версии 2.6 мы удалили quoted_fields
из POST /{product_feed_id/product_feeds}
. Это поле было связано с ним, и теперь мы его также удалили.
Эндпойнт POST {catalog-id}/batch
теперь возвращает STRING
. Мы внесли это изменение, чтобы лучше адаптировать каталоги продуктов для динамической рекламы.
Сбой обновлений аудитории — если вы попытаетесь обновить аудиторию динамической рекламы, запрос вернет ошибку. Чтобы внести эти изменения, нужно будет удалить аудиторию, связанную с этой динамической рекламой, и создать новую. См. разделы Динамическая реклама, аудитории и Индивидуально настроенные аудитории
template_url_spec
заменяет template_url
. Это позволяет вам отслеживать клики и применять в рекламе URL в контексте места, а не только URL из каталога продуктов. Например, в рекламу можно включить выбранные пользователем даты заезда и выезда. См. Динамическая реклама, управление рекламой.
Переименование источников событий — раньше при создании или запросе индивидуально настроенных конверсий нужно было использовать поля pixel_id
, pixel_rule
и pixel_aggregation_rule
. Мы изменили названия этих полей, поскольку теперь мы также можем получать данные офлайн-конверсий и индивидуально настроенных конверсий из приложений. Теперь эти поля называются event_source_id
, rule
и aggregation_rule
.
Пиксель отслеживания конверсий — упразднен 15 февраля 2017 г. Вместе с ним мы удалили все границы контекста и узлы, необходимые для создания, обновления, чтения или ссылки на пиксель отслеживания конверсий, из всех версий API.
Поле friends_of_connection
, связанное с ID мероприятий, больше не используется в качестве параметра таргетинга рекламы. Это означает, что теперь вы не можете настроить таргетинг на друзей людей, которые приняли приглашение на ваше мероприятие на Facebook.
Поддержка delivery_estimate
— мы внесли изменения в раздел приблизительного охвата с учетом недавно запущенного delivery_estimate
:
Поле bid_estimations
удалено из эндпойнта /reach_estimates
. Все его документированные функции перенесены в /delivery_estimate
.
Поле /AD_ID/reachestimate
упразднено. Чтобы получить эту информацию, используйте /ADSET_ID/delivery_estimate
.
Поле data
удалено.
Упраздненные элементы в date_preset
— мы упразднили ряд значений date_preset
и заменили их другими. Новые значения лучше соответствуют задачам рекламодателей и больше не включают данные за нынешний день. Например, если запрос отправлен 8 февраля и в нем указан диапазон дат «последние 7 дней», в отклике не будет данных за 8 февраля — только данные за период с 1 февраля по 7 февраля 23:59, включительно. Упразднены следующие значения:
last_3_days
, заменено на last_3d
;
last_7_days
, заменено на last_7d
;
last_14_days
, заменено на last_14d
;
last_28_days
, заменено на last_28d
;
last_30_days
, заменено на last_30d
;
last_90_days
, заменено на last_90d
;
last_week
, заменено на last_week_sun_sat
и last_week_mon_sun
;
this_week
, заменено на this_week_sun_today
и this_week_mon_today
;
значение last_3_months
упразднено.
В версии 2.8 и более ранних версиях поддерживаются и новые, и старые значения.
date_preset
по умолчанию — при отправке в API Insights запросов без поля date_preset
мы по умолчанию использовали значение last_30_days
, которое включает действия с сегодняшнего дня, с 12:00 по часовому поясу рекламного аккаунта. В версии 2.9 мы по умолчанию используем значение last_30d
. Оно включает последние 30 дней, до 23:59 прошлого вечера, в часовом поясе вашего аккаунта, и не включает сегодняшний день.
Поле video_complete_watched_actions
упразднено. Оно содержало ту же информацию, что и video_30_sec_watched_actions
.
unique_impression
и unique_social_impressions
исключены. Используйте вместо них reach
и social_reach
.
Метрики newsfeed_clicks
, newsfeed_impressions
, newsfeed_avg_position
, video_avg_sec_watched_actions
и video_avg_pct_watched_actions
упразднены как устаревшие.
В action_type:
упразднены follow
, gift_sale
, video_play
и vote
.
Доступ к click_to_play_video
теперь можно получить в разбивке action_video_type
.
Из API Insights исключено поле разбивки placement
, которое содержало данные о показе. В версии 2.9 поддерживается только ["publisher_platform", "platform_position"]
. В версии 2.8 поддерживаются разбивки ["placement"]
и ["publisher_platform", "platform_position"]
.
attribution_spec
— ранее в API Insights для отображения данных об окнах атрибуции для кликабельности и конверсий после просмотра использовались два разных поля. Теперь для настройки любого из этих значений следует использовать attribution_spec
. Настройка attribution_spec
заменяет любые существующие настройки. Если вы настроили кликабельность и конверсии после просмотра, то при выборе для параметра attribution_spec
значения event_type = CLICK_THROUGH
будет удалена только атрибуция конверсий после просмотра.