MyNixOS website logo
Description

Get Data from 'Apple Ads Campaign Management API'.

Provides functions to load and manage data from Apple Ads accounts using the 'Apple Ads Campaign Management API' <https://developer.apple.com/documentation/apple_ads>.

rappleads

Пакет rappleads предоставляет функционал для запроса дыннх из Apple Ads Campaign Management API.

Установка

На данный момент пакет можно установить из GitHub с помощью команд:

# install.packages("pak")
pak::pak("selesnow/rappleads")

Авторизация

В Apple Ads Campaign Management API довольно сложно устроен процесс авторизации, вам необходимо выполнить следующие шаги:

  1. Пригласите пользователей с разрешениями API.
  2. Сгенерируйте пару закрытый-открытый ключ.
  3. Извлеките открытый ключ из сохраненного закрытого ключа.
  4. Загрузите открытый ключ.
  5. Создайте секрет клиента.
  6. Запросите токен доступа.

Пакет rappleads за вас решает пункты 5 и 6, но всё остальное вам необходимо выполнить самостоятельно.

Генерация приватного ключ

После того как вы получили приглашение в рекламные аккаунты вам необходимо сгенерировать приватный ключ. Если вы используете MacOS или UNIX-подобную операционную систему, OpenSSL работает автоматически. Если вы используете Windows, вам необходимо скачать OpenSSL.

В командной строке выполните команду:

openssl ecparam -genkey -name prime256v1 -noout -out private-key.pem

Генерация публичного ключа

Используйте следующую команду для извлечения открытого ключа из сохраненного закрытого ключа:

openssl ec -in private-key.pem -pubout -out public-key.pem

В вашей рабочей директории будет создан файл public-key.pem. Откройте его в текстовом редакторе и скопируйте открытый ключ, включая начальную и конечную строки.

Загрузка ключа в Apple Ads

Чтобы загрузить свой открытый ключ, выполните следующие действия:

  1. В интерфейсе рекламы выберите «Settings» > «API». Вставьте ключ, созданный в разделе выше, в поле «Public key».
  2. Нажмите «Save».
  3. Вы получите необходимые для автоизации учётные данные: clientId, teamId, keyId.

Далее для авторизации вам необходимо создать переменные среды:

  • APL_CLIENT_ID=SEARCHADS.*******************************
  • APL_TEAM_ID=SEARCHADS.*******************************
  • APL_KEY_ID=2864fa90-****-*****-****-****
  • APL_PRIVATE_KEY_PATH=C:/Users/User/private-key.pem
  • APL_ACCOUNT_NAME=AccountName

Эти данные будут использоваться для создания и обновления кеша учётных данных.

Запрос аккаунтов

Общие данные по своему пользователю и доступным ему рекламным аккаунтам вы можете получить с помощью следующих функций:

  • apl_get_me_details() - Id пользователя и основной организации
  • apl_get_user_acl() - Получает роли и организации, к которым есть доступ.

Запрос объектов рекламных кабинетов

  • apl_get_campaigns() - Список рекламных кампаний
  • apl_get_ad_groups() - Список групп объявллений
  • apl_get_ads() - Список объявлений
  • apl_get_creatives() - Список креативов

Запрос отчётов

  • apl_get_campaign_report() - Отчёт с группировкой по рекламным кампаниям
  • apl_get_ad_group_report() - Отчёт с группировкой по группам объявлений
  • apl_get_keyword_report() - Отчёт с группировкой по ключевым словам
  • apl_get_search_term_report() - Отчёт с группировкой по поисковым условиям

Данные в отчётах можно получать в разных часовых поясах, либо в UTC, либо в установленном на уровне организации, менять значение часового пояса можно с помощью функции apl_set_timezone():

  • ORTZ - Часовой пояс выставленный на уровне организации
  • UTC - Часовой пояса UTC

Author

Alexey Seleznev, Head of analytics dept. at Netpeak
Telegram Channel: R4marketing
email: [email protected]
facebook: facebook.com/selesnow
blog: alexeyseleznev.wordpress.com.

Metadata

Version

0.1.3

License

Unknown

Platforms (76)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-freebsd
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64-windows
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-linux
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows