{ "error": { "message": "Request was throttled. Expected available in 1 second.", "type": "rate_limit_error", "param": null, "code": "rate_limit_exceeded" }}
One read-only endpoint returns your DSP’s delivery and spend for a time window, one row per UTC day plus a total. It covers your own DSP only. The key decides whose numbers you get.Spend is in US dollars, as a decimal string ("161.46358"). Parse it as a decimal, not a float.
Your DSP reporting key as a Bearer token: Authorization: Bearer dk_.... Thrad issues it; ask your Thrad contact or email contact@thrad.ai. It is not the token you gave Thrad for bid requests. A missing header returns 401 auth_required. An unknown or revoked key returns 401 invalid_api_key.
Start of the window, inclusive. An ISO 8601 timestamp with a timezone, on the hour in UTC, for example 2026-09-01T00:00:00Z. It must be within the last 365 days.
The sum of every row in data, with the same three fields. "0" spend and zero counts when the window had no impressions.
Today’s row is still filling in. An impression that is never viewed is counted about 30 to 60 minutes after it was served, on the day it was served, so a day is final about an hour after it ends in UTC.
Errors use the shape { "error": { "message", "type", "param", "code" } }. When one parameter is at fault, param names it.
Status
Type
Code
When
400
invalid_request_error
invalid_range
start or end is missing, malformed, has no timezone, or is not on the hour; end is not after start; the window is longer than 366 days; start is more than 365 days ago; or end is more than a day in the future.
401
authentication_error
auth_required
No Authorization header was sent.
401
authentication_error
invalid_api_key
The key is malformed, unknown, or revoked.
429
rate_limit_error
rate_limit_exceeded
More than one request in a second. Wait for the Retry-After header.
504
server_error
clickhouse_timeout
The report took too long to compute. Retry, or ask for a shorter window. A timeout never returns zeros.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Thrad Docs","colors":{"primary":"#1E1E20","light":"#F7F7F7","dark":"#1E1E20"},"logo":{"light":"https://mintcdn.com/thrads-5feffa3d/DxyVKooiEHOWBPsr/images/Thrad-Logo-Orange.png?fit=max\u0026auto=format\u0026n=DxyVKooiEHOWBPsr\u0026q=85\u0026s=271f3bf20d1b3427a47628ba4c698a12","dark":"https://mintcdn.com/thrads-5feffa3d/DxyVKooiEHOWBPsr/images/Thrad-Logo-Orange.png?fit=max\u0026auto=format\u0026n=DxyVKooiEHOWBPsr\u0026q=85\u0026s=271f3bf20d1b3427a47628ba4c698a12"},"favicon":"https://mintcdn.com/thrads-5feffa3d/Oy6te9OMcdFzEUX1/images/favicon.png?fit=max\u0026auto=format\u0026n=Oy6te9OMcdFzEUX1\u0026q=85\u0026s=6bc1a1db484b55f5818f27ac5946d6f8","api":{"mdx":{"auth":{"method":"key","name":"thrad-api-key"},"server":"https://ssp.thrad.ai"}},"appearance":{"default":"light"},"background":{"color":{"light":"#F2EDE9","dark":"#0A0A0A"}},"fonts":{"heading":{"family":"Lufga","weight":500,"source":"fonts/Lufga-Medium.woff2","format":"woff2"},"body":{"family":"Geist","source":"fonts/Geist-Regular.woff2","format":"woff2"}},"icons":{"library":"lucide"},"contextual":{"options":["copy","view","chatgpt","claude","cursor"],"display":"header"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"thrads-5feffa3d","hasAudioNarration":false,"actualSubdomain":"thrads-5feffa3d","customDomains":["docs.thrad.ai"],"gitSource":{"type":"github","owner":"thrads","repo":"thrad-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"entitlements":{},"buildId":"6af35453c7de24114e237278","clientVersion":"0.0.4094","searchFilterCounts":[{"language":"default","tag":"Advertisers","count":27},{"language":"default","tag":"API Reference","count":21},{"language":"default","tag":"Publishers","count":21},{"language":"default","tag":"Attribution","count":14},{"language":"default","tag":"DSP","count":9},{"language":"default","tag":"Browser Tag","count":8},{"language":"default","tag":"Guides","count":7},{"language":"default","tag":"v1 (deprecated)","count":7},{"language":"default","tag":"Server-to-server Conversions API","count":5},{"language":"default","tag":"Serving Ads","count":5}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"@font-face{font-family:\"Geist\";font-weight:500;font-display:swap;src:url(\"/fonts/Geist-Medium.woff2\") format(\"woff2\")}@font-face{font-family:\"Geist\";font-weight:600;font-display:swap;src:url(\"/fonts/Geist-SemiBold.woff2\") format(\"woff2\")}#content-area h1,#content-area h2,#content-area h3,#header h1{font-weight:500!important;letter-spacing:-0.01em}:root:not(.dark) :is(#content-area h1,#content-area h2,#content-area h3,#header h1){color:#1E1E20}:root:not(.dark) body{color:#1E1E20}:root:not(.dark) #content-container{background:#F7F7F7}:root:not(.dark) .prose p,:root:not(.dark) .prose li{color:#3A3A3C}:root{--rounded-sm: 0px;--rounded-md: 0px;--rounded-lg: 0px;--rounded-xl: 0px;--rounded-2xl: 0px}button,.card,pre,code,input,[class*=\"rounded\"]{border-radius:0!important}.sidebar-group-header .sidebar-title{font-size:0.7rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase}:root:not(.dark) #content-area .prose a{color:#28427A;text-decoration-color:rgba(40, 66, 122, 0.3)}:root:not(.dark) #sidebar li[data-active=\"true\"]>a{background:#F7F7F7!important;color:#1E1E20!important}:root:not(.dark) #sidebar .method-pill,:root:not(.dark) #sidebar [class*=\"bg-blue-400\"]{background:#DAE3F2!important;color:#28427A!important}:root:not(.dark) #content-area :not(pre)>code{background:#EFEDE9!important;border:1px solid rgba(10, 10, 10, 0.06);padding:1px 4px!important;color:#1E1E20}:root:not(.dark) .tryit-button,:root:not(.dark) [class*=\"bg-[#3064E3]\"]{background:#1E1E20!important;color:#F7F7F7!important}:root:not(.dark) .method-pill,:root:not(.dark) [class*=\"bg-blue-400/20\"]{background:#DAE3F2!important;color:#28427A!important}:root:not(.dark) #topbar-cta-button a,:root:not(.dark) #topbar-cta-button a>span{background:#EC521B!important;color:#fff!important}:root:not(.dark) #page-context-menu{border:1px solid rgba(10, 10, 10, 0.2);border-radius:999px;overflow:hidden;width:max-content!important;min-width:0!important;flex:none!important}#page-context-menu button{background:transparent!important;border:0!important}:root:not(.dark) #page-context-menu button{color:#1E1E20!important}:root:not(.dark) #page-context-menu button+button{border-left:1px solid rgba(10, 10, 10, 0.1)!important}:root:not(.dark) #page-context-menu button:hover{background:rgba(10, 10, 10, 0.04)!important}:root.dark #page-context-menu{border:1px solid rgba(255, 255, 255, 0.2);border-radius:999px;overflow:hidden;width:max-content!important;min-width:0!important;flex:none!important}:root.dark #page-context-menu button+button{border-left:1px solid rgba(255, 255, 255, 0.1)!important}:root.dark #page-context-menu button:hover{background:rgba(255, 255, 255, 0.06)!important}:root:not(.dark) [role=\"menu\"]{background:#fff!important;border:1px solid rgba(10, 10, 10, 0.1)!important;border-radius:4px!important;box-shadow:0 8px 24px rgba(10, 10, 10, 0.08)!important}[role=\"menu\"] [role=\"menuitem\"]>div:first-child{border:0!important}:root:not(.dark) [role=\"menu\"] [role=\"menuitem\"]:hover,:root:not(.dark) [role=\"menu\"] [role=\"menuitem\"][data-highlighted]{background:rgba(10, 10, 10, 0.04)!important}:root:not(.dark) .callout[data-callout-type=\"note\"],:root:not(.dark) .callout[data-callout-type=\"info\"]{--c-bg: #DAE3F2;--c-fg: #28427A}:root:not(.dark) .callout[data-callout-type=\"warning\"]{--c-bg: #F4E0BD;--c-fg: #6B4D14}:root:not(.dark) .callout[data-callout-type=\"tip\"],:root:not(.dark) .callout[data-callout-type=\"check\"]{--c-bg: #D5E5DD;--c-fg: #2D5B3F}:root:not(.dark) .callout[data-callout-type=\"danger\"]{--c-bg: #FCDADA;--c-fg: #8E2421}:root:not(.dark) .callout[data-callout-type]{background:color-mix(in srgb, var(--c-bg) 50%, #F7F7F7)!important;border-color:transparent!important}:root:not(.dark) .callout[data-callout-type] *:not(code){color:var(--c-fg)!important}:root:not(.dark) #content-area .callout :not(pre)>code{background:color-mix(in srgb, var(--c-fg) 8%, transparent)!important;border-color:color-mix(in srgb, var(--c-fg) 15%, transparent);color:var(--c-fg)}:root:not(.dark) div.border-standard:has(>div>.group>.method-pill),:root:not(.dark) div.border-standard:has(.group>.method-pill):not(.group){background:#fff!important;border-color:rgba(10, 10, 10, 0.1)!important}.group.border-standard:has(>.method-pill){border:0!important;background:transparent!important}#sidebar li a{border-radius:4px!important}:root:not(.dark) #sidebar li a{color:rgba(10, 10, 10, 0.65)}:root:not(.dark) #sidebar li:not([data-active=\"true\"])>a:hover{background:rgba(10, 10, 10, 0.04)!important;color:#1E1E20}:root:not(.dark) #sidebar li[data-active=\"true\"]>a svg{color:#EC521B!important;background-color:#EC521B}:root:not(.dark) #sidebar li[data-active=\"true\"] [class*=\"bg-[#3064E3]\"]{background:#DAE3F2!important;color:#28427A!important}#sidebar li a{min-height:38px;align-items:center!important;padding:0 12px!important;column-gap:10px!important;font:500 0.875rem/1.4 Geist, system-ui, sans-serif!important}:root:not(.dark) #sidebar li a{color:rgba(10, 10, 10, 0.65)!important}:root:not(.dark) #sidebar li a svg{width:18px;height:18px;background-color:rgba(10, 10, 10, 0.57)}:root:not(.dark) #sidebar li[data-active=\"true\"]>a{color:#1E1E20!important}#sidebar .sidebar-group-header{padding-left:12px!important}#sidebar li>button{min-height:38px;align-items:center!important;padding:0 12px!important;column-gap:10px!important;border-radius:4px!important;font:500 0.875rem/1.4 Geist, system-ui, sans-serif!important}:root:not(.dark) #sidebar li>button{color:rgba(10, 10, 10, 0.65)!important}:root:not(.dark) #sidebar li>button:hover{background:rgba(10, 10, 10, 0.04)!important;color:#1E1E20!important}.sidebar-group-header .sidebar-title{font:500 0.6875rem/1.4 Geist, system-ui, sans-serif!important;letter-spacing:0.08em;text-transform:uppercase}:root:not(.dark) .sidebar-group-header .sidebar-title{color:rgba(10, 10, 10, 0.57)!important}.sidebar-group-header{min-height:28px;margin-bottom:4px!important}#sidebar-content .sidebar-group~.sidebar-group,#navigation-items>div+div{border-top:1px solid rgb(from currentColor r g b / 0.1);padding-top:16px}:root:not(.dark) [class*=\"group/step-indicator\"]{background:#1E1E20!important;color:#F7F7F7!important}[class*=\"group/step-indicator\"]{border-radius:999px!important}:root:not(.dark) [class*=\"group/step-indicator\"] *{color:#F7F7F7!important}:root:not(.dark) .frame>div[class*=\"bg-grid\"]{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' width='32' height='32' fill='none' stroke='rgba(10,10,10,0.06)'%3e%3cpath d='M0 .5H31.5V32'/%3e%3c/svg%3e\")!important}:root.dark .frame>div[class*=\"bg-grid\"]{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' width='32' height='32' fill='none' stroke='rgba(255,255,255,0.06)'%3e%3cpath d='M0 .5H31.5V32'/%3e%3c/svg%3e\")!important}.frame>div[class*=\"bg-grid\"]{mask-image:none!important}a[aria-label=\"Navigate to header\"]>div{border-radius:4px!important;background:transparent!important;box-shadow:none!important;--tw-ring-shadow: 0 0 #0000 !important}a[aria-label=\"Navigate to header\"]{margin-left:-2rem!important}a[aria-label=\"Navigate to header\"]>div:hover{background:color-mix(in srgb, currentColor 12%, transparent)!important}div:has(>figure.frame)+div:has(>figure.frame){margin-top:1.5rem}#content-area td code{white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important}#navbar a:has(>.nav-logo){display:inline-flex;align-items:center}#navbar a:has(>.nav-logo)::after{content:\"/\";margin-left:12px;font:400 0.875rem/1.4 Geist, system-ui, sans-serif;color:rgba(10, 10, 10, 0.57)}#navbar a:has(>.nav-logo)+div:not(:has(*)){display:none!important}.nav-dropdown-products-selector-trigger{height:40px!important;padding:0 8px!important;column-gap:10px!important;border-radius:4px!important;font:600 0.875rem/1.4 Geist, system-ui, sans-serif!important;color:#1E1E20!important}.nav-dropdown-products-selector-trigger:hover,.nav-dropdown-products-selector-trigger[aria-expanded=\"true\"]{background:rgba(10, 10, 10, 0.04)!important}.nav-dropdown-products-selector-trigger>svg:first-child{display:none}.nav-dropdown-products-selector-trigger>svg:last-child{color:rgba(10, 10, 10, 0.57)!important}.nav-dropdown-products-selector-trigger>span{display:inline-flex;align-items:center;gap:10px;max-width:none!important;overflow:visible!important}.nav-dropdown-products-selector-trigger>span::after{content:\"Docs\";display:inline-flex;align-items:center;height:18px;padding:0 6px;border-radius:4px;background:rgba(10, 10, 10, 0.04);font:500 0.6875rem/1.4 Geist, system-ui, sans-serif;letter-spacing:0.08em;text-transform:uppercase;color:rgba(10, 10, 10, 0.57)}.dark .nav-dropdown-products-selector-trigger{color:#F7F7F7!important}.dark #navbar a:has(>.nav-logo)::after,.dark .nav-dropdown-products-selector-trigger>span::after{color:rgba(255, 255, 255, 0.5)}#content-side-layout{margin-right:2rem}:root:not(.dark) [class*=\"bg-[#2AB673]\"]:not(.tryit-button),:root:not(.dark) .method-pill[class*=\"bg-green-400/20\"],:root:not(.dark) #sidebar [class*=\"bg-green-400/20\"]{background:#D5E5DD!important;color:#2D5B3F!important}@media (min-width: 1024px) and (max-width: 1279.98px){#content-area{padding-right:2.75rem!important}}@media (min-width: 1024px){#sidebar{width:15rem!important}}#sidebar li li>a,#sidebar li li>button{padding-left:24px!important}#sidebar div:has(>[class*=\"bg-[#FDEAD8]\"]){display:none!important}:root:not(.dark) #sidebar [class*=\"bg-[#F7F7F8]\"]{background:#E8E6E0!important;color:#5C4E2E!important}@media (max-width: 1023.98px){#content-area{padding-left:1.25rem!important;padding-right:1.25rem!important}#content-container{margin-left:-1rem;margin-right:-1rem}#navbar a:has(>.nav-logo)::after{content:none}}#navbar .nav-dropdown-products-selector-trigger{margin-left:-12px}:root:not(.dark) [role=\"dialog\"] [class*=\"bg-background-light\"]{background-color:#F7F7F7!important}"}],"page":{"pagePath":"dsp/api-reference/report","slug":"/dsp/api-reference/report","pageMetadata":{"title":"Report","api":"GET https://api.thrad.ai/v1/dsp/report","description":"Your daily sent impressions, billable impressions, and spend: parameters, response, and errors.","href":"/dsp/api-reference/report"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Your daily sent impressions, billable impressions, and spend: parameters, response, and errors.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Expandable,Heading,ParamField,ResponseField,Table}=_components;if(!Expandable)_missingMdxReference(`Expandable`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!ParamField)_missingMdxReference(`ParamField`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`One read-only endpoint returns your DSP’s delivery and spend for a time window, one row per UTC day plus a total. It covers your own DSP only. The key decides whose numbers you get.`}),`\n`,_jsxs(_components.p,{children:[`Spend is in `,_jsx(_components.strong,{children:`US dollars`}),`, as a decimal string (`,_jsx(_components.code,{children:`\"161.46358\"`}),`). Parse it as a decimal, not a float.`]}),`\n`,_jsx(Heading,{level:`2`,id:`authorizations`,children:`Authorizations`}),`\n`,_jsx(ParamField,{header:`Authorization`,type:`string`,required:true,id:`param-authorization`,children:_jsxs(_components.p,{children:[`Your DSP reporting key as a Bearer token: `,_jsx(_components.code,{children:`Authorization: Bearer dk_...`}),`. Thrad issues it; ask your Thrad contact or email `,_jsx(_components.a,{href:`mailto:contact@thrad.ai`,children:`contact@thrad.ai`}),`. It is not the token you gave Thrad for bid requests. A missing header returns `,_jsx(_components.code,{children:`401 auth_required`}),`. An unknown or revoked key returns `,_jsx(_components.code,{children:`401 invalid_api_key`}),`.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`query-parameters`,children:`Query parameters`}),`\n`,_jsx(ParamField,{query:`start`,type:`string`,required:true,id:`param-start`,children:_jsxs(_components.p,{children:[`Start of the window, inclusive. An ISO 8601 timestamp with a timezone, on the hour in UTC, for example `,_jsx(_components.code,{children:`2026-09-01T00:00:00Z`}),`. It must be within the last 365 days.`]})}),`\n`,_jsx(ParamField,{query:`end`,type:`string`,required:true,id:`param-end`,children:_jsxs(_components.p,{children:[`End of the window, exclusive. Same format as `,_jsx(_components.code,{children:`start`}),`, after it, at most 366 days later, and no more than one day in the future.`]})}),`\n`,`\n`,`\n`,_jsx(Heading,{level:`2`,id:`response`,children:`Response`}),`\n`,_jsx(ResponseField,{name:`dsp`,type:`string`,id:`param-dsp`,children:`Your DSP’s name at Thrad.`}),`\n`,_jsx(ResponseField,{name:`start`,type:`string`,id:`param-start-1`,children:`The window start you asked for, in UTC.`}),`\n`,_jsx(ResponseField,{name:`end`,type:`string`,id:`param-end-1`,children:`The window end you asked for, in UTC. Exclusive.`}),`\n`,_jsxs(ResponseField,{name:`currency`,type:`string`,id:`param-currency`,children:[`Always `,_jsx(_components.code,{children:`\"USD\"`}),`.`]}),`\n`,_jsxs(ResponseField,{name:`data`,type:`array`,id:`param-data`,children:[_jsx(_components.p,{children:`One row per UTC day that had impressions, oldest first. Days with none are left out.`}),_jsxs(Expandable,{title:`row properties`,children:[_jsxs(ResponseField,{name:`date`,type:`string`,id:`param-date`,children:[`The UTC day, `,_jsx(_components.code,{children:`YYYY-MM-DD`}),`.`]}),_jsx(ResponseField,{name:`sent_impressions`,type:`integer`,id:`param-sent-impressions`,children:`Your ads Thrad served to a publisher that day, whether or not they were seen.`}),_jsxs(ResponseField,{name:`billable_impressions`,type:`integer`,id:`param-billable-impressions`,children:[`Of those, the ones that became viewable (at least 50% on screen for at least one second). On OpenRTB, Thrad fires your `,_jsx(_components.code,{children:`burl`}),` for each one.`]}),_jsx(ResponseField,{name:`spend`,type:`string`,id:`param-spend`,children:`The total of your winning bids on billable impressions, in US dollars. Each impression adds its CPM bid divided by 1,000.`})]})]}),`\n`,_jsx(ResponseField,{name:`total`,type:`object`,id:`param-total`,children:_jsxs(_components.p,{children:[`The sum of every row in `,_jsx(_components.code,{children:`data`}),`, with the same three fields. `,_jsx(_components.code,{children:`\"0\"`}),` spend and zero counts when the window had no impressions.`]})}),`\n`,_jsx(_components.p,{children:`Today’s row is still filling in. An impression that is never viewed is counted about 30 to 60 minutes after it was served, on the day it was served, so a day is final about an hour after it ends in UTC.`}),`\n`,_jsx(Heading,{level:`2`,id:`errors`,children:`Errors`}),`\n`,_jsxs(_components.p,{children:[`Errors use the shape `,_jsx(_components.code,{children:`{ \"error\": { \"message\", \"type\", \"param\", \"code\" } }`}),`. When one parameter is at fault, `,_jsx(_components.code,{children:`param`}),` names it.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Status`}),_jsx(_components.th,{children:`Type`}),_jsx(_components.th,{children:`Code`}),_jsx(_components.th,{children:`When`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`invalid_request_error`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`invalid_range`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`start`}),` or `,_jsx(_components.code,{children:`end`}),` is missing, malformed, has no timezone, or is not on the hour; `,_jsx(_components.code,{children:`end`}),` is not after `,_jsx(_components.code,{children:`start`}),`; the window is longer than 366 days; `,_jsx(_components.code,{children:`start`}),` is more than 365 days ago; or `,_jsx(_components.code,{children:`end`}),` is more than a day in the future.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`401`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`authentication_error`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`auth_required`})}),_jsxs(_components.td,{children:[`No `,_jsx(_components.code,{children:`Authorization`}),` header was sent.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`401`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`authentication_error`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`invalid_api_key`})}),_jsx(_components.td,{children:`The key is malformed, unknown, or revoked.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`429`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`rate_limit_error`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`rate_limit_exceeded`})}),_jsxs(_components.td,{children:[`More than one request in a second. Wait for the `,_jsx(_components.code,{children:`Retry-After`}),` header.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`504`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`server_error`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`clickhouse_timeout`})}),_jsx(_components.td,{children:`The report took too long to compute. Retry, or ask for a shorter window. A timeout never returns zeros.`})]})]})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Report","api":"GET https://api.thrad.ai/v1/dsp/report","description":"Your daily sent impressions, billable impressions, and spend: parameters, response, and errors.","href":"/dsp/api-reference/report"}}},"mdxSourceWithNoJs":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,Expandable,Heading,ParamField,RequestExample,ResponseExample,ResponseField,Table}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Expandable)_missingMdxReference(`Expandable`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!ParamField)_missingMdxReference(`ParamField`,true);if(!RequestExample)_missingMdxReference(`RequestExample`,true);if(!ResponseExample)_missingMdxReference(`ResponseExample`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`One read-only endpoint returns your DSP’s delivery and spend for a time window, one row per UTC day plus a total. It covers your own DSP only. The key decides whose numbers you get.`}),`\n`,_jsxs(_components.p,{children:[`Spend is in `,_jsx(_components.strong,{children:`US dollars`}),`, as a decimal string (`,_jsx(_components.code,{children:`\"161.46358\"`}),`). Parse it as a decimal, not a float.`]}),`\n`,_jsx(Heading,{level:`2`,id:`authorizations`,children:`Authorizations`}),`\n`,_jsx(ParamField,{header:`Authorization`,type:`string`,required:true,id:`param-authorization`,children:_jsxs(_components.p,{children:[`Your DSP reporting key as a Bearer token: `,_jsx(_components.code,{children:`Authorization: Bearer dk_...`}),`. Thrad issues it; ask your Thrad contact or email `,_jsx(_components.a,{href:`mailto:contact@thrad.ai`,children:`contact@thrad.ai`}),`. It is not the token you gave Thrad for bid requests. A missing header returns `,_jsx(_components.code,{children:`401 auth_required`}),`. An unknown or revoked key returns `,_jsx(_components.code,{children:`401 invalid_api_key`}),`.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`query-parameters`,children:`Query parameters`}),`\n`,_jsx(ParamField,{query:`start`,type:`string`,required:true,id:`param-start`,children:_jsxs(_components.p,{children:[`Start of the window, inclusive. An ISO 8601 timestamp with a timezone, on the hour in UTC, for example `,_jsx(_components.code,{children:`2026-09-01T00:00:00Z`}),`. It must be within the last 365 days.`]})}),`\n`,_jsx(ParamField,{query:`end`,type:`string`,required:true,id:`param-end`,children:_jsxs(_components.p,{children:[`End of the window, exclusive. Same format as `,_jsx(_components.code,{children:`start`}),`, after it, at most 366 days later, and no more than one day in the future.`]})}),`\n`,_jsxs(RequestExample,{children:[_jsx(CodeBlock,{filename:`cURL`,numberOfLines:`4`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`4`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -G`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://api.thrad.ai/v1/dsp/report`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$THRAD_DSP_KEY`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --data-urlencode`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'start=2026-09-01T00:00:00Z'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --data-urlencode`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'end=2026-09-03T00:00:00Z'`})]}),`\n`]})})}),_jsx(CodeBlock,{filename:`Python`,numberOfLines:`15`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`15`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` os`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` decimal `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Decimal`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` requests`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`response `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` requests.get(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://api.thrad.ai/v1/dsp/report\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` headers`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Authorization\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`f`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Bearer `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`os.environ[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'THRAD_DSP_KEY'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`]`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`},`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` params`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"start\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-09-01T00:00:00Z\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"end\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-09-03T00:00:00Z\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`},`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` timeout`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`30`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`response.raise_for_status()`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`report `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` response.json()`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`for`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` day `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`in`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` report[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`]:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:` print`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(day[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"date\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`], day[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"billable_impressions\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`], Decimal(day[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"spend\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`]))`})]}),`\n`]})})})]}),`\n`,_jsxs(ResponseExample,{children:[_jsx(CodeBlock,{filename:`200 - Daily rows`,numberOfLines:`25`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`25`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"dsp\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"medianet\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"start\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-09-01T00:00:00+00:00\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"end\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-09-03T00:00:00+00:00\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"currency\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"USD\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"date\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-09-01\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"sent_impressions\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`103508`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"billable_impressions\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`66427`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"spend\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"161.46358\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"date\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-09-02\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"sent_impressions\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`114045`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"billable_impressions\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`71578`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"spend\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"233.6391\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"total\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"sent_impressions\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`217553`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"billable_impressions\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`138005`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"spend\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"395.10268\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`400 - Window not on the hour`,numberOfLines:`8`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`8`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"message\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:'\"`start` must be on the hour (UTC).\"'}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"invalid_request_error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"param\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"start\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"invalid_range\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`401 - Unknown key`,numberOfLines:`8`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`8`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"message\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Invalid API key.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"authentication_error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"param\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"invalid_api_key\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`429 - Too fast`,numberOfLines:`8`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`8`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"message\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Request was throttled. Expected available in 1 second.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"rate_limit_error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"param\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"rate_limit_exceeded\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})]}),`\n`,_jsx(Heading,{level:`2`,id:`response`,children:`Response`}),`\n`,_jsx(ResponseField,{name:`dsp`,type:`string`,id:`param-dsp`,children:`Your DSP’s name at Thrad.`}),`\n`,_jsx(ResponseField,{name:`start`,type:`string`,id:`param-start-1`,children:`The window start you asked for, in UTC.`}),`\n`,_jsx(ResponseField,{name:`end`,type:`string`,id:`param-end-1`,children:`The window end you asked for, in UTC. Exclusive.`}),`\n`,_jsxs(ResponseField,{name:`currency`,type:`string`,id:`param-currency`,children:[`Always `,_jsx(_components.code,{children:`\"USD\"`}),`.`]}),`\n`,_jsxs(ResponseField,{name:`data`,type:`array`,id:`param-data`,children:[_jsx(_components.p,{children:`One row per UTC day that had impressions, oldest first. Days with none are left out.`}),_jsxs(Expandable,{title:`row properties`,children:[_jsxs(ResponseField,{name:`date`,type:`string`,id:`param-date`,children:[`The UTC day, `,_jsx(_components.code,{children:`YYYY-MM-DD`}),`.`]}),_jsx(ResponseField,{name:`sent_impressions`,type:`integer`,id:`param-sent-impressions`,children:`Your ads Thrad served to a publisher that day, whether or not they were seen.`}),_jsxs(ResponseField,{name:`billable_impressions`,type:`integer`,id:`param-billable-impressions`,children:[`Of those, the ones that became viewable (at least 50% on screen for at least one second). On OpenRTB, Thrad fires your `,_jsx(_components.code,{children:`burl`}),` for each one.`]}),_jsx(ResponseField,{name:`spend`,type:`string`,id:`param-spend`,children:`The total of your winning bids on billable impressions, in US dollars. Each impression adds its CPM bid divided by 1,000.`})]})]}),`\n`,_jsx(ResponseField,{name:`total`,type:`object`,id:`param-total`,children:_jsxs(_components.p,{children:[`The sum of every row in `,_jsx(_components.code,{children:`data`}),`, with the same three fields. `,_jsx(_components.code,{children:`\"0\"`}),` spend and zero counts when the window had no impressions.`]})}),`\n`,_jsx(_components.p,{children:`Today’s row is still filling in. An impression that is never viewed is counted about 30 to 60 minutes after it was served, on the day it was served, so a day is final about an hour after it ends in UTC.`}),`\n`,_jsx(Heading,{level:`2`,id:`errors`,children:`Errors`}),`\n`,_jsxs(_components.p,{children:[`Errors use the shape `,_jsx(_components.code,{children:`{ \"error\": { \"message\", \"type\", \"param\", \"code\" } }`}),`. When one parameter is at fault, `,_jsx(_components.code,{children:`param`}),` names it.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Status`}),_jsx(_components.th,{children:`Type`}),_jsx(_components.th,{children:`Code`}),_jsx(_components.th,{children:`When`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`invalid_request_error`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`invalid_range`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`start`}),` or `,_jsx(_components.code,{children:`end`}),` is missing, malformed, has no timezone, or is not on the hour; `,_jsx(_components.code,{children:`end`}),` is not after `,_jsx(_components.code,{children:`start`}),`; the window is longer than 366 days; `,_jsx(_components.code,{children:`start`}),` is more than 365 days ago; or `,_jsx(_components.code,{children:`end`}),` is more than a day in the future.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`401`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`authentication_error`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`auth_required`})}),_jsxs(_components.td,{children:[`No `,_jsx(_components.code,{children:`Authorization`}),` header was sent.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`401`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`authentication_error`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`invalid_api_key`})}),_jsx(_components.td,{children:`The key is malformed, unknown, or revoked.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`429`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`rate_limit_error`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`rate_limit_exceeded`})}),_jsxs(_components.td,{children:[`More than one request in a second. Wait for the `,_jsx(_components.code,{children:`Retry-After`}),` header.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`504`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`server_error`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`clickhouse_timeout`})}),_jsx(_components.td,{children:`The report took too long to compute. Retry, or ask for a shorter window. A timeout never returns zeros.`})]})]})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Report","api":"GET https://api.thrad.ai/v1/dsp/report","description":"Your daily sent impressions, billable impressions, and spend: parameters, response, and errors.","href":"/dsp/api-reference/report"}}}},"mdxExtracts":{"tableOfContents":[{"title":"Authorizations","slug":"authorizations","depth":2,"children":[]},{"title":"Query parameters","slug":"query-parameters","depth":2,"children":[]},{"title":"Response","slug":"response","depth":2,"children":[]},{"title":"Errors","slug":"errors","depth":2,"children":[]}],"codeExamples":{"request":{"type":"RequestExample","children":[{"filename":"cURL","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"shellscript\">\u003ccode language=\"shellscript\" numberOfLines=\"4\">\u003cspan class=\"line\">\u003cspan style=\"color:#953800;--shiki-dark:#DCDCAA\">curl\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> -G\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> https://api.thrad.ai/v1/dsp/report\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D7BA7D\"> \\\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> -H\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"Authorization: Bearer \u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">$THRAD_DSP_KEY\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D7BA7D\"> \\\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> --data-urlencode\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'start=2026-09-01T00:00:00Z'\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D7BA7D\"> \\\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> --data-urlencode\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'end=2026-09-03T00:00:00Z'\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"},{"filename":"Python","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"python\">\u003ccode language=\"python\" numberOfLines=\"15\">\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\">import\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> os\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\">from\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> decimal \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\">import\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> Decimal\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\">import\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> requests\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">response \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> requests.get(\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"https://api.thrad.ai/v1/dsp/report\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#953800;--shiki-dark:#9CDCFE\"> headers\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Authorization\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\">f\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Bearer \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\">{\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">os.environ[\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">'THRAD_DSP_KEY'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">]\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\">}\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">},\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#953800;--shiki-dark:#9CDCFE\"> params\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"start\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"2026-09-01T00:00:00Z\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">, \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"end\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"2026-09-03T00:00:00Z\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">},\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#953800;--shiki-dark:#9CDCFE\"> timeout\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">30\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">)\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">response.raise_for_status()\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">report \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> response.json()\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\">for\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> day \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\">in\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> report[\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"data\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">]:\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0550AE;--shiki-dark:#DCDCAA\"> print\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">(day[\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"date\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">], day[\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"billable_impressions\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">], Decimal(day[\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"spend\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">]))\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"}],"attributes":[]},"response":{"type":"ResponseExample","children":[{"filename":"200 - Daily rows","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"json\">\u003ccode language=\"json\" numberOfLines=\"25\">\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"dsp\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"medianet\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"start\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"2026-09-01T00:00:00+00:00\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"end\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"2026-09-03T00:00:00+00:00\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"currency\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"USD\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"data\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: [\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"date\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"2026-09-01\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"sent_impressions\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">103508\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"billable_impressions\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">66427\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"spend\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"161.46358\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"date\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"2026-09-02\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"sent_impressions\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">114045\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"billable_impressions\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">71578\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"spend\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"233.6391\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> ],\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"total\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"sent_impressions\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">217553\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"billable_impressions\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">138005\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"spend\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"395.10268\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"},{"filename":"400 - Window not on the hour","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"json\">\u003ccode language=\"json\" numberOfLines=\"8\">\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"error\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"message\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"`start` must be on the hour (UTC).\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"type\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"invalid_request_error\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"param\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"start\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"code\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"invalid_range\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"},{"filename":"401 - Unknown key","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"json\">\u003ccode language=\"json\" numberOfLines=\"8\">\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"error\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"message\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Invalid API key.\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"type\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"authentication_error\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"param\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"code\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"invalid_api_key\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"},{"filename":"429 - Too fast","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"json\">\u003ccode language=\"json\" numberOfLines=\"8\">\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"error\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"message\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Request was throttled. Expected available in 1 second.\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"type\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"rate_limit_error\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"param\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"code\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"rate_limit_exceeded\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"}],"attributes":[]}},"endpoint":{"title":"Report","path":"/v1/dsp/report","servers":[{"url":"https://api.thrad.ai"}],"method":"get","request":{"security":[{"title":"API Key Auth","parameters":{"header":{"thrad-api-key":{"type":"apiKey"}},"query":{},"cookie":{}}}],"parameters":{"query":{"start":{"schema":[{"type":"string","description":"Start of the window, inclusive. An ISO 8601 timestamp with a timezone, on the hour in UTC, for example `2026-09-01T00:00:00Z` . It must be within the last 365 days.","required":true}]},"end":{"schema":[{"type":"string","description":"End of the window, exclusive. Same format as `start` , after it, at most 366 days later, and no more than one day in the future.","required":true}]}},"header":{"Authorization":{"schema":[{"type":"string","description":"Your DSP reporting key as a Bearer token: `Authorization: Bearer dk_...` . Thrad issues it; ask your Thrad contact or email contact@thrad.ai . It is not the token you gave Thrad for bid requests. A missing header returns `401 auth_required` . An unknown or revoked key returns `401 invalid_api_key` .","required":true}]}},"cookie":{},"path":{}},"body":{}},"response":{"200":{"application/json":{"schemaArray":[{"type":"object","properties":{"dsp":[{"type":"string","description":"Your DSP’s name at Thrad."}],"start":[{"type":"string","description":"The window start you asked for, in UTC."}],"end":[{"type":"string","description":"The window end you asked for, in UTC. Exclusive."}],"currency":[{"type":"string","description":"Always `\"USD\"` ."}],"data":[{"type":"array","items":[{"type":"object","properties":{"date":[{"type":"string","description":"The UTC day, `YYYY-MM-DD` ."}],"sent_impressions":[{"type":"integer","description":"Your ads Thrad served to a publisher that day, whether or not they were seen."}],"billable_impressions":[{"type":"integer","description":"Of those, the ones that became viewable (at least 50% on screen for at least one second). On OpenRTB, Thrad fires your `burl` for each one."}],"spend":[{"type":"string","description":"The total of your winning bids on billable impressions, in US dollars. Each impression adds its CPM bid divided by 1,000."}]}}],"description":"One row per UTC day that had impressions, oldest first. Days with none are left out."}],"total":[{"type":"object","properties":{},"description":"The sum of every row in `data` , with the same three fields. `\"0\"` spend and zero counts when the window had no impressions."}]}}],"examples":{"example":{"value":{"dsp":"\u003cstring>","start":"\u003cstring>","end":"\u003cstring>","currency":"\u003cstring>","data":[{"date":"\u003cstring>","sent_impressions":123,"billable_impressions":123,"spend":"\u003cstring>"}],"total":{}}}}}}},"deprecated":false}},"jsLinks":[],"subdomain":"thrads-5feffa3d","siteName":"Thrad Docs","title":"Report - Thrad Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-16T00:55:00.399Z","originalFileLocation":"dsp/api-reference/report.md"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Your daily sent impressions, billable impressions, and spend: parameters, response, and errors.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Thrad Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/thrads-5feffa3d/bkiWb08aHWdUwdNK/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/thrads-5feffa3d/bkiWb08aHWdUwdNK/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/thrads-5feffa3d/bkiWb08aHWdUwdNK/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/thrads-5feffa3d/bkiWb08aHWdUwdNK/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/thrads-5feffa3d/bkiWb08aHWdUwdNK/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/thrads-5feffa3d/bkiWb08aHWdUwdNK/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/thrads-5feffa3d/bkiWb08aHWdUwdNK/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/thrads-5feffa3d/bkiWb08aHWdUwdNK/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/thrads-5feffa3d/bkiWb08aHWdUwdNK/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Report - Thrad Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Your daily sent impressions, billable impressions, and spend: parameters, response, and errors.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Thrad Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.thrad.ai/dsp/api-reference/report\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://thrads-5feffa3d.mintlify.site/_mintlify/api/og/v2?division=Reporting\u0026amp;title=Report\u0026amp;description=Your+daily+sent+impressions%2C+billable+impressions%2C+and+spend%3A+parameters%2C+response%2C+and+errors.\u0026amp;theme=3f468421409f48e312fa01a5\u0026amp;signature=01c6abe18e67aa00d53306a09f92d8ef4638a734bf04566f994b5d3b14c227ad\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Report - Thrad Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Your daily sent impressions, billable impressions, and spend: parameters, response, and errors.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://thrads-5feffa3d.mintlify.site/_mintlify/api/og/v2?division=Reporting\u0026amp;title=Report\u0026amp;description=Your+daily+sent+impressions%2C+billable+impressions%2C+and+spend%3A+parameters%2C+response%2C+and+errors.\u0026amp;theme=3f468421409f48e312fa01a5\u0026amp;signature=01c6abe18e67aa00d53306a09f92d8ef4638a734bf04566f994b5d3b14c227ad\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/thrads-5feffa3d/bkiWb08aHWdUwdNK/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Thrad Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#1E1E20\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.thrad.ai/dsp/api-reference/report\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/dsp/api-reference/report.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.thrad.ai/#organization\",\"name\":\"Thrad Docs\",\"url\":\"https://docs.thrad.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/thrads-5feffa3d/DxyVKooiEHOWBPsr/images/Thrad-Logo-Orange.png?fit=max\u0026auto=format\u0026n=DxyVKooiEHOWBPsr\u0026q=85\u0026s=271f3bf20d1b3427a47628ba4c698a12\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.thrad.ai#website\",\"name\":\"Thrad Docs\",\"url\":\"https://docs.thrad.ai\",\"publisher\":{\"@id\":\"https://docs.thrad.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.thrad.ai/dsp/api-reference/report#webpage\",\"url\":\"https://docs.thrad.ai/dsp/api-reference/report\",\"name\":\"Report\",\"description\":\"Your daily sent impressions, billable impressions, and spend: parameters, response, and errors.\",\"dateModified\":\"2026-10-16T00:55:00.399Z\",\"isPartOf\":{\"@id\":\"https://docs.thrad.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.thrad.ai/dsp/api-reference/report#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.thrad.ai/dsp/api-reference/report#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Reporting\",\"item\":\"https://docs.thrad.ai/dsp/guides/reporting\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Report\",\"item\":\"https://docs.thrad.ai/dsp/api-reference/report\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.thrad.ai/dsp/api-reference/report#apireference\",\"headline\":\"Report\",\"name\":\"Report\",\"description\":\"Your daily sent impressions, billable impressions, and spend: parameters, response, and errors.\",\"url\":\"https://docs.thrad.ai/dsp/api-reference/report\",\"mainEntityOfPage\":{\"@id\":\"https://docs.thrad.ai/dsp/api-reference/report#webpage\"},\"dateModified\":\"2026-10-16T00:55:00.399Z\",\"publisher\":{\"@id\":\"https://docs.thrad.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.thrad.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Thrad Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Thrad Docs","nav":{"global":null,"products":[{"product":"Publishers","icon":"message-square","description":"Show ads in your AI app","pages":[{"title":"Publishers","href":"/introduction"}]},{"product":"Advertisers","icon":"megaphone","description":"Run campaigns and track conversions","pages":[{"title":"Advertisers","href":"/advertisers/introduction"}]},{"product":"DSP","icon":"gavel","description":"Bid on Thrad inventory","groups":[{"group":"Get Started","pages":[{"title":null,"href":"/dsp/introduction"},{"title":"IVT \u0026 Verification","href":"/dsp/guides/ivt"}]},{"group":"OpenRTB","pages":[{"group":"Guides","pages":[{"title":"Overview","href":"/dsp/guides/ortb/overview"},{"title":"Ad Formats","href":"/dsp/guides/ortb/ad-formats"},{"title":"Targeting Signals","href":"/dsp/guides/ortb/targeting"},{"title":"Onboarding","href":"/dsp/guides/ortb/onboarding"}]},{"group":"API Reference","pages":[{"title":"Bid","api":"POST /openrtb/bid","href":"/dsp/api-reference/ortb-bid"}]}]},{"group":"Reporting","pages":[{"title":"Delivery \u0026 Spend","description":"Pull your daily impressions and spend from Thrad to reconcile with your own numbers.","href":"/dsp/guides/reporting"},{"title":"Report","api":"GET https://api.thrad.ai/v1/dsp/report","href":"/dsp/api-reference/report"}]}]}]},"basePath":"","title":"Report - Thrad Docs","buildId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","deploymentId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","dynamics":["c2aa737661","2b790eda92","b0f84f53ff"],"chunks":["OpenApiReferenceProvider-C-hEh3I2.js","utils-CnF4QiUD.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-C7PVNbel.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-8ytevL2A.js","snippetPresets-BT1alx3v.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BLXC0i_W.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CyLIGI9_.js","shallow-DC0lGVIW.js","getApiPlaygroundDisplay-CgDQ85tN.js","CodeSnippet-6-I-Gpv9.js","CodeSnippets-BAk1kDdu.js","Page-C945cI-W.js","getPastedJson-B276RuWN.js","icon-BqP8etTm.js","MethodPill-DM6sbxG1.js","DuplicateIcon-PyJglOaE.js","createIcon-CMeOMAc_.js","DynamicMarkdown-BoyYAA8K.js","SectionHeading-DAYv3gvZ.js","axios-vUo_bRtp.js"]}