# Brain Feature Summary

Brain Feature Summary Report
### Fields
| Field | Time Windows | Rollups |
|  --- | --- | --- |
| **Dimensions** |  |  |
| `agg_timestamp` | `yesterday`, `last_X_days`, `month_to_date` | `by_day` |
| `advertiser_id` | Any | Any |
| `advertiser_name` | Any | Any |
| `agency_id` | Any | Any |
| `agency_name` | Any | Any |
| `campaign_id` | Any | Any |
| `campaign_name` | Any | Any |
| `feature` | Any | Any |
| `index` | Any | Any |
| `model_goal` | Any | Any |
| `organization_id` | Any | Any |
| `organization_name` | Any | Any |
| `position` | Any | Any |
| **Metrics** |  |  |

### Pageable
Yes
### Time Windows
`yesterday`, `last_X_days`, `month_to_date`
### Rollups
`by_day`

Endpoint: POST /brain-feature-summary
Version: 1.0.0
Security: Auth0

## Description:

  - `Fields` ()
    FieldTime WindowsRollupsDimensionsagg_timestampyesterday, last_X_days, month_to_dateby_dayadvertiser_idAnyAnyadvertiser_nameAnyAnyagency_idAnyAnyagency_nameAnyAnycampaign_idAnyAnycampaign_nameAnyAnyfeatureAnyAnyindexAnyAnymodel_goalAnyAnyorganization_idAnyAnyorganization_nameAnyAnypositionAnyAnyMetrics

  - `Pageable` ()
    Yes

  - `Time Windows` ()
    yesterday, last_X_days, month_to_date

  - `Rollups` ()
    by_day

## Security:

  - `Auth0` (unknown)
    oauth2 scopes: offline_access

## Request fields (application/json):

  - `end_time` (string)

  - `fields` (array, required)

  - `filters` (array, required)

  - `filters.field` (string)

  - `filters.filters` (array)

  - `filters.filters.field` (string)

  - `filters.filters.filters` (array)
    An array of filters. Required if `op` is `and` or `or`.

  - `filters.filters.op` (string)
    * `=`: Equals or contains if `value` is an array
* `!=`: Not equals
* `>`: Greater than
* `>=`: Greater than or equals
* `<`: Less than
* `<=`: Less than or equals
* `=~`: Text contains (case-insensitive)
* `and`: All filters must match
* `or`: At least one filter must match
* `isNull`: Is null
* `isNotNull`: Is not null

  - `filters.filters.value` (any)

  - `filters.op` (string)
    * `=`: Equals or contains if `value` is an array
* `!=`: Not equals
* `>`: Greater than
* `>=`: Greater than or equals
* `<`: Less than
* `<=`: Less than or equals
* `=~`: Text contains (case-insensitive)
* `and`: All filters must match
* `or`: At least one filter must match
* `isNull`: Is null
* `isNotNull`: Is not null

  - `filters.value` (any)

  - `full_entities` (array)

  - `max_results` (integer)
    Maximum number of results to return. Only applicable for streaming responses. No limit if absent or `null`.

  - `order` (array)

  - `order.desc` (boolean)

  - `order.field` (string, required)

  - `order.nulls_last` (boolean)

  - `pagination` (object)
    Streaming response if absent or `null`, Paginated response otherwise

  - `pagination.page_index` (integer)

  - `pagination.page_size` (integer)

  - `rollup` (string, required)

  - `start_time` (string)

  - `time_window` (string)

  - `time_zone` (string)
    **Only in supported datasets:** `campaign`, `UTC` or a time zone name defined in https://www.iana.org/time-zones

## Response 200:

  - `200` (unknown)
    JSON for Paginated, JSONL for Streaming

## Response 200 fields (application/json):

  - `meta` (object)

  - `meta.items_count` (integer)

  - `meta.page_index` (integer)

  - `meta.status` (string)
    Enum: "OK"

  - `meta.total_items_count` (integer)

  - `meta.total_pages` (integer)

  - `results` (array)

## Response 400:

  - `400` (unknown)
    The request is not valid

## Response 400 fields (application/json):

  - `error_code` (string)

  - `message` (string)

  - `request_id` (string)

## Response 401:

  - `401` (unknown)
    Unauthorized

## Response 401 fields (application/json):

  - `error_code` (string)

  - `message` (string)

  - `request_id` (string)

## Response 5XX:

  - `5XX` (unknown)
    An error occurred

## Response 5XX fields (application/json):

  - `error_code` (string)

  - `message` (string)

  - `request_id` (string)

