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

# Проверка вебхука монитора

> Отправить подписанную тестовую полезную нагрузку на URL вебхука и сообщить, была ли она принята.

**Это выполняет реальную HTTP-доставку**, а не проверку синтаксиса URL. Получатель должен принимать `POST` и успешно отвечать — URL, который просто отдаёт страницу на `GET`, всё равно завершится неудачей. При сбое вы получите `40023` (URL недействителен или недоступен) или `40022` (тестовая доставка не удалась), а `details` будет содержать необработанное тело ответа от получателя, которое может занимать несколько килобайт HTML. Передайте `monitor_id`, чтобы подписать тест реальной подписью этого монитора; если не указать, используется заглушка подписи.



## OpenAPI

````yaml ru-openapi POST /monitors/webhook/validate
openapi: 3.0.0
info:
  description: >-
    API Pubrio предоставляет данные об экспансии на рынки — сигналы в реальном
    времени, отмечающие выход компании на новый рынок, — вместе с лежащими в их
    основе данными о компаниях и людях. Выполняйте поиск, просмотр и обогащение
    данных об аккаунтах и контактах, а также подписывайтесь на типизированные
    сигналы движения с указанием даты по более чем 200 рынкам.
  version: 1.0.0
  title: Pubrio OpenAPI
  termsOfService: https://pubrio.com/ru/terms-of-service
  contact:
    email: king.lai@pubrio.com
    name: King Lai
    url: https://pubrio.com/ru/get-in-touch
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
servers:
  - url: https://api.pubrio.com
security:
  - pubrio_api_key: []
tags:
  - name: Profile
    description: Информация о профиле рабочей области и статистика использования
  - name: Enrichment
    description: Обогащение записей о людях и компаниях подробными B2B-данными
  - name: Lookalike
    description: Поиск компаний, похожих на заданную компанию
  - name: Search
    description: >-
      Поиск людей, компаний, вакансий, новостей и рекламы с использованием
      фильтров
  - name: Lookup
    description: >-
      Просмотр подробной информации о конкретных людях, компаниях, вакансиях,
      новостях, рекламе и технологиях
  - name: LinkedIn
    description: Просмотр данных о людях и компаниях по URL профиля LinkedIn
  - name: Redeem
    description: >-
      Погашение кредитов для получения контактных данных людей (по одному и
      пакетно)
  - name: Channels
    description: >-
      Управление шаблонами каналов для рассылок (создание, обновление, удаление,
      список)
  - name: Monitor
    description: >-
      Создание мониторов данных и управление ими с вебхуками, статистикой и
      обработкой
  - name: Filters
    description: >-
      Получение доступных значений фильтров для параметров поиска (технологии,
      местоположения, отрасли и т. д.)
  - name: API Keys
    description: >-
      Просмотр списка и анализ журналов запросов API и статистики использования
      ключей API
  - name: Insights
    description: Агрегированные данные по сигналам компаний (вакансии, новости, реклама).
  - name: Export
    description: Массовый экспорт данных (расходует кредиты).
  - name: Expansion
    description: 'Данные об экспансии компаний на рынки: сигналы, стадии, рынки и экспорт.'
externalDocs:
  description: >-
    API Pubrio используется для поиска, предварительного просмотра и обогащения
    контактов и аккаунтов. База данных Pubrio предоставляет обширные
    B2B-контакты и данные для анализа продаж.
  url: https://docs.pubrio.com
paths:
  /monitors/webhook/validate:
    post:
      tags:
        - Monitor
      summary: Проверка вебхука монитора
      description: >-
        Отправить подписанную тестовую полезную нагрузку на URL вебхука и
        сообщить, была ли она принята.


        **Это выполняет реальную HTTP-доставку**, а не проверку синтаксиса URL.
        Получатель должен принимать `POST` и успешно отвечать — URL, который
        просто отдаёт страницу на `GET`, всё равно завершится неудачей. При сбое
        вы получите `40023` (URL недействителен или недоступен) или `40022`
        (тестовая доставка не удалась), а `details` будет содержать
        необработанное тело ответа от получателя, которое может занимать
        несколько килобайт HTML. Передайте `monitor_id`, чтобы подписать тест
        реальной подписью этого монитора; если не указать, используется заглушка
        подписи.
      operationId: monitors_validate_webhook
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                monitor_id:
                  type: string
                  format: uuid
                  description: >-
                    Уникальный идентификатор существующего монитора для теста.
                    Необязательно при тестировании новых конфигураций.
                name:
                  type: string
                  description: Название монитора.
                description:
                  type: string
                  description: Описание монитора.
                detection_mode:
                  type: string
                  description: >-
                    Как обнаруживаются сигналы. `signal_first` сканирует рынок в
                    широком масштабе; `company_first` отслеживает именованный
                    список аккаунтов и требует хотя бы одну компанию, домен или
                    URL LinkedIn. **Неизменяемо после создания** — изменение
                    этого параметра у существующего монитора возвращает `40021`.
                    Вместо этого создайте новый монитор.
                  enum:
                    - company_first
                    - signal_first
                signal_types:
                  type: array
                  items:
                    type: string
                    enum:
                      - jobs
                      - news
                      - advertisements
                      - expansions
                  description: Типы отслеживаемых сигналов.
                signal_filters:
                  type: array
                  items:
                    type: object
                    required:
                      - signal_type
                    properties:
                      signal_type:
                        type: string
                        enum:
                          - jobs
                          - news
                          - advertisements
                          - expansions
                        description: Какой поток фильтрует эта запись.
                      filters:
                        type: object
                        description: >-
                          Фильтры для этого потока. `jobs`, `news` и
                          `advertisements` принимают параметры [Job
                          Search](/en/api-reference/endpoint/companies/job_search),
                          [News
                          Search](/en/api-reference/endpoint/companies/news_search)
                          и [Advertisement
                          Search](/en/api-reference/endpoint/companies/advertisements_search).
                          `expansions` использует словарь [Expansion
                          Search](/en/api-reference/endpoint/expansions/market_lookup):
                          `froms` / `tos`, `window_days`, `stages`, `scopes`,
                          `momentum`, `freshness`, `signal_types`,
                          `signal_subtypes`, `signal_strengths`, `source_types`.
                          Слаги можно получить из [Expansion
                          Reference](/en/api-reference/endpoint/expansions/types).
                  description: >-
                    По одной записи на каждый поток сигналов, который
                    отслеживает монитор.
                  example:
                    - signal_type: jobs
                      filters:
                        locations:
                          - US
                    - signal_type: news
                      filters:
                        locations:
                          - US
                    - signal_type: advertisements
                      filters:
                        target_locations:
                          - US
                    - signal_type: expansions
                      filters:
                        tos:
                          - US
                        stages:
                          - expanding
                          - scaling
                        signal_types:
                          - HIRE
                          - EXEC
                        signal_strengths:
                          - high
                          - very_high
                company_filters:
                  type: object
                  description: >-
                    Глобальные фильтры компаний. Принимает те же параметры, что
                    и эндпоинт [Company
                    Search](/en/api-reference/endpoint/companies/search).
                  example:
                    locations:
                      - US
                    employees:
                      - - 501
                        - 1000
                      - - 1001
                        - 5000
                companies:
                  type: array
                  items:
                    type: string
                    format: uuid
                  description: >-
                    Список UUID domain_search_id компаний. Альтернатива:
                    используйте `domains` или `linkedin_urls`.
                domains:
                  type: array
                  items:
                    type: string
                  description: Список доменов компаний. Альтернатива `companies`.
                linkedin_urls:
                  type: array
                  items:
                    type: string
                    format: uri
                  description: Список URL компаний в LinkedIn. Альтернатива `companies`.
                is_company_enrichment:
                  type: boolean
                  description: Обогащать ли данные компании.
                is_people_enrichment:
                  type: boolean
                  description: Обогащать ли данные людей.
                people_enrichment_configs:
                  type: array
                  items:
                    type: object
                  description: >-
                    Массив слоёв обогащения данных о людях. Содержит
                    `max_people_to_return` (1-25), `people_contact_types` (см.
                    [Redeem](/en/api-reference/endpoint/redeem/people)) и
                    `filters` (см. [People
                    Search](/en/api-reference/endpoint/people/search)).
                  example:
                    - filters:
                        people_locations:
                          - US
                      max_people_to_return: 3
                      people_contact_types:
                        - email-work
                destination_type:
                  type: string
                  description: Тип точки доставки.
                  enum:
                    - webhook
                    - email
                    - sequences
                destination_config:
                  type: object
                  description: >-
                    Конфигурация точки доставки. Для webhook: требуется
                    `webhook_url` (строка), необязательные `headers` (объект) и
                    `body` (объект). Для email: принимает `email` (строка) или
                    `emails` (массив строк). Для последовательностей
                    (sequences): требуется `sequence_identifier` (строка) плюс
                    хотя бы одно из `is_people_search_enrolled` /
                    `is_company_contact_enrolled`, установленное в true.
                  example:
                    webhook_url: https://your-webhook.com/endpoint
                    headers:
                      Authorization: Bearer token
                    body:
                      pipeline: my-webhook
                frequency_minute:
                  type: integer
                  description: 'Частота срабатывания в минутах. Мин: 0, Макс: 10080.'
                  minimum: 0
                  maximum: 10080
                max_failure_trigger:
                  type: integer
                  description: >-
                    Максимальное количество последовательных сбоев до
                    приостановки. Мин: 1, Макс: 10.
                  minimum: 1
                  maximum: 10
                max_daily_trigger:
                  type: integer
                  description: >-
                    Максимальное количество срабатываний в день. Мин: 0, Макс:
                    86400.
                  minimum: 0
                  maximum: 86400
                max_records_per_trigger:
                  type: integer
                  description: >-
                    Определяет максимальное количество записей, доставляемых за
                    одно срабатывание. Меньшие значения уменьшают размер
                    полезной нагрузки при каждой доставке, что рекомендуется для
                    больших наборов результатов или интеграций с ограничением
                    частоты запросов. Мин: 1, Макс: 100, По умолчанию: 25. См.
                    [Setting up
                    Webhooks](/en/developer-guides/setting-up-webhooks) для
                    рекомендаций.
                  minimum: 1
                  maximum: 100
                notification_email:
                  type: string
                  format: email
                  description: Email для уведомлений о сбоях.
                max_retry_per_trigger:
                  type: integer
                  description: >-
                    Максимальное количество повторных попыток на срабатывание.
                    Мин: 0, Макс: 3.
                  minimum: 0
                  maximum: 3
                retry_delay_second:
                  type: integer
                  description: >-
                    Задержка между повторными попытками в секундах. Мин: 1,
                    Макс: 5.
                  minimum: 1
                  maximum: 5
              required:
                - destination_config
      responses:
        '200':
          description: >-
            Успешный ответ с результатами проверки вебхука — конфигурацией точки
            доставки и тестовыми данными запроса/ответа. При сбое вебхука
            эндпоинт возвращает 400 (MONITOR_WEBHOOK_URL_INVALID) с ответом
            вебхука в деталях ошибки.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      destination_config:
                        type: object
                        description: Проверенная конфигурация точки доставки.
                      request_payload:
                        type: object
                        description: >-
                          Тело запроса, отправленное на вебхук во время
                          проверки.
                      response_payload:
                        type: object
                        description: Тело ответа, полученное от вебхука.
              example:
                data:
                  destination_config:
                    webhook_url: https://usewebhook.com/example
                    headers:
                      X-Custom-Auth: your-token
                    body:
                      source: pubrio
                  request_payload:
                    monitor:
                      monitor_id: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                      name: My Monitor
                      detection_mode: signal_first
                      signal_types:
                        - jobs
                        - news
                        - advertisements
                      signal_filters:
                        - ...
                      company_filters:
                        ...: ...
                      is_company_enrichment: true
                      is_people_enrichment: true
                      people_enrichment_configs:
                        - ...
                    metadata:
                      total_signals: 3
                      total_companies: 1
                      total_people: 0
                    triggered_at: '2026-04-05T22:43:06.973Z'
                    signals:
                      - signal_type: jobs
                        signal:
                          signal_type: jobs
                          job_search_id: ...
                          companies:
                            - ...
                        companies:
                          - ...
                      - ...
                    source: pubrio
                  response_payload: OK
        '400':
          $ref: '#/components/responses/general_error'
        '429':
          $ref: '#/components/responses/rate_limit_error'
        '500':
          $ref: '#/components/responses/server_error'
components:
  responses:
    general_error:
      description: >-
        Некорректный запрос. Запрос был некорректно сформирован или содержал
        недопустимые параметры. Подробности см. в коде и сообщении об ошибке.
      content:
        application/json:
          schema:
            required:
              - code
              - message
              - details
            type: object
            properties:
              code:
                example: 40001
                type: integer
              message:
                example: >-
                  Errors and codes will vary depending on the scenario, please
                  see the documentation for information.
                type: string
              details:
                type: object
    rate_limit_error:
      description: >-
        Превышен лимит запросов. За заданный период времени было сделано слишком
        много запросов. Повторите попытку после сброса окна лимита запросов.
      content:
        application/json:
          schema:
            required:
              - error
            type: object
            properties:
              error:
                example: Request rate limit exceeded. Please wait and try again later.
                type: string
    server_error:
      description: >-
        Внутренняя ошибка сервера. На сервере произошла непредвиденная ошибка.
        Если ошибка повторяется, обратитесь в службу поддержки.
      content:
        application/json:
          schema:
            required:
              - error
            type: object
            properties:
              error:
                example: An unexpected error occurred on the server.
                type: string
  securitySchemes:
    pubrio_api_key:
      type: apiKey
      name: pubrio-api-key
      description: >-
        Уникальный токен API, представляющий действия, которые вы выполняете
        через API, и соответствующие права доступа и операции. Вы можете создать
        его в разделе [Settings](https://dashboard.pubrio.com/#/settings/).
      in: header

````