Как получить данные по целям с Яндекс.Метрика? [через апи]

Я практично не работал с этим вопросом, поэтому относись к ответу без полного доверия. Все равно попробую подсказать куда смотреть.

Точка входа в целом в апи которое дает данные по целям Введение | API Яндекс Метрики

Вот тут смыслы для goal-ов (конверсий в терминологии документации)
Are you not a robot?. Тебе интересен смысл для reaches.

Тебе надо найти айдишники goal-ов создаваемых через reachGoal. (будет развернутый текст от ИИ в конце моего ответа)

Вот какой код ИИ нагенерировал в ответ на твой запрос. Тебе надо найти айдишники конверсий создаваемых через reachGoal и поиграться с параметрами апи (подобрать и сгенерировать даты). Это пример запроса по одному goal-у, в разрезе дат по характеристике reaches

// Функция для получения данных по целям
function getGoalsStats() {
    const TOKEN = 'ВАШ_ТОКЕН';
    const COUNTER_ID = 'ВАШ_СЧЕТЧИК_ID';
    
    // Запрос к API
    fetch(`https://api-metrika.yandex.net/stat/v1/data?
           metrics=ym:s:goals<goal_id>reaches&
           dimensions=ym:s:date&
           date1=2010-01-01&
           date2=today&
           id=${COUNTER_ID}`, {
        headers: {
            'Authorization': `OAuth ${TOKEN}`
        }
    })
    .then(response => response.json())
    .then(data => {
        // Обработка полученных данных
        displayGoalsData(data);
    });
}

ИИшный ответ где взять айдишник goal


goal_id можно найти несколькими способами:

  1. В интерфейсе Яндекс.Метрики:
  • Зайдите в Яндекс.Метрику
  • Перейдите в раздел “Настройки” → “Цели”
  • У каждой цели будет свой ID в списке целей или в URL при редактировании цели
  1. Через API Яндекс.Метрики:

// Получение списка целей через API
fetch(https://api-metrika.yandex.net/management/v1/counter/${COUNTER_ID}/goals, {
headers: {
‘Authorization’: OAuth ${TOKEN}
}
})
.then(response => response.json())
.then(data => {
console.log(data.goals); // Здесь будет список целей с их ID
});

  1. В URL при редактировании цели:
    Когда вы открываете редактирование цели, в URL будет параметр вида:

https://metrika.yandex.ru/goals?id=XXXXX&goal_id=YYYYY

Где YYYYY - это и есть ID цели.

  1. Через JavaScript-код на странице:

// Получить все цели счётчика
ym(COUNTER_ID, ‘getGoals’, function(goals) {
console.log(goals); // Объект со всеми целями и их ID
});

  1. В коде отправки цели:

// При отправке цели можно использовать как имя цели, так и её ID
ym(COUNTER_ID, ‘reachGoal’, ‘GOAL_NAME’); // По имени цели
// или
ym(COUNTER_ID, ‘reachGoal’, ‘goal_GOAL_ID’); // По ID цели

Пример использования ID цели в запросе к API:

// Для цели с ID 123456
const goalMetrics = ‘ym:s:goal123456reaches’; // Формат: goalreaches

fetch(https://api-metrika.yandex.net/stat/v1/data?metrics=${goalMetrics}&id=${COUNTER_ID}, {
headers: {
‘Authorization’: OAuth ${TOKEN}
}
})
.then(response => response.json())
.then(data => {
console.log(data); // Данные по достижениям цели
});

Важно помнить:

  1. ID цели - это числовое значение
  2. При создании новой цели ID присваивается автоматически
  3. ID цели уникален в пределах одного счётчика
  4. После удаления цели её ID больше не используется для новых целей