---
title: "Fresh-now and trailing-28d matching counts for these targeting rules"
method: GET
path: "/api/v1/campaigns/{campaign_id}/experiments/matching-intake"
tags: ["experiments"]
---

# Fresh-now and trailing-28d matching counts for these targeting rules

`GET /api/v1/campaigns/{campaign_id}/experiments/matching-intake`

## Request

- Base URL: `https://api.outrival.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.outrival.com/api/v1/campaigns/{campaign_id}/experiments/matching-intake`
- Auth: HTTP bearer

Population, currently-fresh, and trailing-28-day intake.

``matching_total`` is today's ``matched_count``. ``fresh_matching_now``
excludes anyone with an interaction or any experiment assignment
(inactive included). ``matching_intake_28d`` is matching contacts
created in the last 28 days. Web still calls the old RPC; this is the
endpoint it can adopt later without breaking that call.

## Path parameters

- `campaign_id` string, required

## Query parameters

- `targeting_rules` string, nullable: JSON targeting list. Omitted or [] matches everyone. Additive: today's count_matching_contacts RPC is unchanged.

## Response `200`

Successful Response

- object

## Other responses

- `400`: Invalid campaign ID format or targeting_rules JSON
- `403`: User may not edit this campaign
- `404`: Campaign not found
- `422`: Validation Error

## Changes

- **2026-09-03** `219a10b80707`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/outrival/apis/outrival-api/changes/api/v1/campaigns/:campaign_id/experiments/matching-intake/get.md)

---

[API](https://skmtc.dev/outrival/apis/outrival-api.md) - [All operations](https://skmtc.dev/outrival/apis/outrival-api/llms.txt) - [OpenAPI document](https://skmtc.dev/outrival/apis/outrival-api/revisions/f27d90300b5e?raw)
