pixellint

Cloudflare RUM captures use POST and the beacon payload.

Cloudflare documents POST ingestion and OPTIONS preflight. Exact /cdn-cgi/rum paths are recognized on automatic customer domains and the manual collector.

Current Load and WebVitals fields receive SDK producer warnings. Configured forwarding endpoints and backend account acceptance remain outside this source scope.

Preflight does not require an ingestion body.

OPTIONS is accepted without metric fields. Other methods fail the documented collector contract; current SDK field expectations remain advisory.

Rule: vendor.cloudflare-rum.http.method.invalid

What this pack matches

Paths
/cdn-cgi/rum, /cdn-cgi/rum/
Vendor docs
developers.cloudflare.com/web-analytics/faq/

Rules

Codes are stable. A finding in CI, MCP, or the playground lands on the same id.

Field Required What it checks Rule ids Source
method required The documented collector ingests POST and permits OPTIONS preflight. Complete HTTP capture contract. vendor.cloudflare-rum.http.method.missing
vendor.cloudflare-rum.http.method.empty
vendor.cloudflare-rum.http.method.invalid
docs
method optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. docs
content_type required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. vendor.cloudflare-rum.http.content_type.missing
vendor.cloudflare-rum.http.content_type.empty
vendor.cloudflare-rum.http.content_type.invalid
docs
headers.origin optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.headers.origin.invalid docs
headers.referer optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.headers.referer.invalid docs
body required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: object. vendor.cloudflare-rum.http.body.missing
vendor.cloudflare-rum.http.body.invalid
docs
body.startTime required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or null. vendor.cloudflare-rum.http.body.startTime.missing
vendor.cloudflare-rum.http.body.startTime.invalid
docs
body.pageloadId required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.pageloadId.missing
vendor.cloudflare-rum.http.body.pageloadId.empty
vendor.cloudflare-rum.http.body.pageloadId.invalid
docs
body.eventType required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer. vendor.cloudflare-rum.http.body.eventType.missing
vendor.cloudflare-rum.http.body.eventType.empty
vendor.cloudflare-rum.http.body.eventType.invalid
docs
body.location required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.location.missing
vendor.cloudflare-rum.http.body.location.empty
vendor.cloudflare-rum.http.body.location.invalid
docs
body.siteToken required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.siteToken.missing
vendor.cloudflare-rum.http.body.siteToken.invalid
docs
body.st required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer. vendor.cloudflare-rum.http.body.st.missing
vendor.cloudflare-rum.http.body.st.empty
vendor.cloudflare-rum.http.body.st.invalid
docs
body.versions required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: object. vendor.cloudflare-rum.http.body.versions.missing
vendor.cloudflare-rum.http.body.versions.invalid
docs
body.versions.js required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.versions.js.missing
vendor.cloudflare-rum.http.body.versions.js.invalid
docs
body.versions.fl optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string or number. vendor.cloudflare-rum.http.body.versions.fl.invalid docs
body.versions.timings optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer. vendor.cloudflare-rum.http.body.versions.timings.empty
vendor.cloudflare-rum.http.body.versions.timings.invalid
docs
body.n optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer. vendor.cloudflare-rum.http.body.n.invalid docs
body.ntapi optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer. vendor.cloudflare-rum.http.body.ntapi.empty
vendor.cloudflare-rum.http.body.ntapi.invalid
docs
body.nt optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.nt.empty
vendor.cloudflare-rum.http.body.nt.invalid
docs
body.referrer optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.referrer.empty
vendor.cloudflare-rum.http.body.referrer.invalid
docs
body.bi optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: object. vendor.cloudflare-rum.http.body.bi.invalid docs
body.dt optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.dt.invalid docs
body.serverTimings optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: array. vendor.cloudflare-rum.http.body.serverTimings.invalid docs
body.memory optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: object. vendor.cloudflare-rum.http.body.memory.invalid docs
body.timings optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: object. vendor.cloudflare-rum.http.body.timings.invalid docs
body.timingsV2 optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: object. vendor.cloudflare-rum.http.body.timingsV2.invalid docs
body.firstPaint optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or null. vendor.cloudflare-rum.http.body.firstPaint.invalid docs
body.firstContentfulPaint optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or null. vendor.cloudflare-rum.http.body.firstContentfulPaint.invalid docs
body.bi.be optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.bi.be.invalid docs
body.bi.bev optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.bi.bev.invalid docs
body.bi.bv optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.bi.bv.invalid docs
body.bi.ov optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.bi.ov.invalid docs
body.cls optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: object. vendor.cloudflare-rum.http.body.cls.invalid docs
body.cls.value required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Applies when {"kind":"present","param":"body.cls"}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.value.missing
vendor.cloudflare-rum.http.body.cls.value.invalid
docs
body.cls.path required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Applies when {"kind":"present","param":"body.cls"}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.cls.path.missing
vendor.cloudflare-rum.http.body.cls.path.invalid
docs
body.lcp optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: object. vendor.cloudflare-rum.http.body.lcp.invalid docs
body.lcp.value required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Applies when {"kind":"present","param":"body.lcp"}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or null. vendor.cloudflare-rum.http.body.lcp.value.missing
vendor.cloudflare-rum.http.body.lcp.value.invalid
docs
body.lcp.path required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Applies when {"kind":"present","param":"body.lcp"}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.lcp.path.missing
vendor.cloudflare-rum.http.body.lcp.path.invalid
docs
body.fcp optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: object. vendor.cloudflare-rum.http.body.fcp.invalid docs
body.fcp.value required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Applies when {"kind":"present","param":"body.fcp"}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or null. vendor.cloudflare-rum.http.body.fcp.value.missing
vendor.cloudflare-rum.http.body.fcp.value.invalid
docs
body.fcp.path required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Applies when {"kind":"present","param":"body.fcp"}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.fcp.path.missing
vendor.cloudflare-rum.http.body.fcp.path.invalid
docs
body.ttfb optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: object. vendor.cloudflare-rum.http.body.ttfb.invalid docs
body.ttfb.value required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Applies when {"kind":"present","param":"body.ttfb"}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or null. vendor.cloudflare-rum.http.body.ttfb.value.missing
vendor.cloudflare-rum.http.body.ttfb.value.invalid
docs
body.ttfb.path required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Applies when {"kind":"present","param":"body.ttfb"}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.ttfb.path.missing
vendor.cloudflare-rum.http.body.ttfb.path.invalid
docs
body.inp optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: object. vendor.cloudflare-rum.http.body.inp.invalid docs
body.inp.value required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Applies when {"kind":"present","param":"body.inp"}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or null. vendor.cloudflare-rum.http.body.inp.value.missing
vendor.cloudflare-rum.http.body.inp.value.invalid
docs
body.inp.path required Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Applies when {"kind":"present","param":"body.inp"}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.inp.path.missing
vendor.cloudflare-rum.http.body.inp.path.invalid
docs
body.cls.element optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.cls.element.invalid docs
body.lcp.element optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.lcp.element.invalid docs
body.lcp.url optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.lcp.url.invalid docs
body.lcp.it optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.lcp.it.invalid docs
body.inp.element optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.inp.element.invalid docs
body.inp.name optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.body.inp.name.invalid docs
body.lcp.fp optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string or null. vendor.cloudflare-rum.http.body.lcp.fp.invalid docs
body.lcp.size optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or null. vendor.cloudflare-rum.http.body.lcp.size.invalid docs
body.lcp.rld optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or null. vendor.cloudflare-rum.http.body.lcp.rld.invalid docs
body.lcp.rlt optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or null. vendor.cloudflare-rum.http.body.lcp.rlt.invalid docs
body.lcp.erd optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or null. vendor.cloudflare-rum.http.body.lcp.erd.invalid docs
body.inp.idy optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or null. vendor.cloudflare-rum.http.body.inp.idy.invalid docs
body.inp.pdn optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or null. vendor.cloudflare-rum.http.body.inp.pdn.invalid docs
body.inp.pdy optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or null. vendor.cloudflare-rum.http.body.inp.pdy.invalid docs
body.cls.currentRect optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: object. vendor.cloudflare-rum.http.body.cls.currentRect.invalid docs
body.cls.currentRect.x optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.currentRect.x.invalid docs
body.cls.currentRect.y optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.currentRect.y.invalid docs
body.cls.currentRect.width optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.currentRect.width.invalid docs
body.cls.currentRect.height optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.currentRect.height.invalid docs
body.cls.currentRect.top optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.currentRect.top.invalid docs
body.cls.currentRect.right optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.currentRect.right.invalid docs
body.cls.currentRect.bottom optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.currentRect.bottom.invalid docs
body.cls.currentRect.left optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.currentRect.left.invalid docs
body.cls.previousRect optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: object. vendor.cloudflare-rum.http.body.cls.previousRect.invalid docs
body.cls.previousRect.x optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.previousRect.x.invalid docs
body.cls.previousRect.y optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.previousRect.y.invalid docs
body.cls.previousRect.width optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.previousRect.width.invalid docs
body.cls.previousRect.height optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.previousRect.height.invalid docs
body.cls.previousRect.top optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.previousRect.top.invalid docs
body.cls.previousRect.right optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.previousRect.right.invalid docs
body.cls.previousRect.bottom optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.previousRect.bottom.invalid docs
body.cls.previousRect.left optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.body.cls.previousRect.left.invalid docs
body.timings.navigationStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.navigationStart.invalid docs
body.timings.domainLookupStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.domainLookupStart.invalid docs
body.timings.domainLookupEnd optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.domainLookupEnd.invalid docs
body.timings.connectStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.connectStart.invalid docs
body.timings.connectEnd optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.connectEnd.invalid docs
body.timings.secureConnectionStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.secureConnectionStart.invalid docs
body.timings.redirectStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.redirectStart.invalid docs
body.timings.redirectEnd optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.redirectEnd.invalid docs
body.timings.requestStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.requestStart.invalid docs
body.timings.responseStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.responseStart.invalid docs
body.timings.responseEnd optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.responseEnd.invalid docs
body.timings.domLoading optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.domLoading.invalid docs
body.timings.domComplete optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.domComplete.invalid docs
body.timings.loadEventStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.loadEventStart.invalid docs
body.timings.loadEventEnd optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timings.loadEventEnd.invalid docs
body.timingsV2.nextHopProtocol optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.nextHopProtocol.invalid docs
body.timingsV2.domainLookupStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.domainLookupStart.invalid docs
body.timingsV2.domainLookupEnd optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.domainLookupEnd.invalid docs
body.timingsV2.connectStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.connectStart.invalid docs
body.timingsV2.connectEnd optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.connectEnd.invalid docs
body.timingsV2.secureConnectionStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.secureConnectionStart.invalid docs
body.timingsV2.redirectStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.redirectStart.invalid docs
body.timingsV2.redirectEnd optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.redirectEnd.invalid docs
body.timingsV2.requestStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.requestStart.invalid docs
body.timingsV2.responseStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.responseStart.invalid docs
body.timingsV2.responseEnd optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.responseEnd.invalid docs
body.timingsV2.domInteractive optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.domInteractive.invalid docs
body.timingsV2.domComplete optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.domComplete.invalid docs
body.timingsV2.loadEventStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.loadEventStart.invalid docs
body.timingsV2.loadEventEnd optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.loadEventEnd.invalid docs
body.timingsV2.finalResponseHeadersStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.finalResponseHeadersStart.invalid docs
body.timingsV2.firstInterimResponseStart optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.firstInterimResponseStart.invalid docs
body.timingsV2.transferSize optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.transferSize.invalid docs
body.timingsV2.decodedBodySize optional Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: integer or string or null. vendor.cloudflare-rum.http.body.timingsV2.decodedBodySize.invalid docs
origin_or_referer recommended Cloudflare documents a Referer requirement with an in-flight transition to Origin. Include the browser origin or referring page. Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. vendor.cloudflare-rum.origin_or_referer docs
location_credentials recommended The official beacon removes username and password from parsed page URLs before reporting them. Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. vendor.cloudflare-rum.location_credentials docs
referrer_credentials recommended The official beacon removes username and password from parsed page URLs before reporting them. Complete HTTP capture contract. Applies when {"kind":"value_in","param":"method","values":["POST"]}. vendor.cloudflare-rum.referrer_credentials docs
method optional Complete HTTP capture contract. Capture scope: body.memory.*. Applies when {"kind":"value_in","param":"method","values":["POST"]}. docs
optional Complete HTTP capture contract. Capture scope: body.memory.*. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or string or null. vendor.cloudflare-rum.http..invalid docs
method optional Complete HTTP capture contract. Capture scope: body.serverTimings[]. Applies when {"kind":"value_in","param":"method","values":["POST"]}. docs
optional Complete HTTP capture contract. Capture scope: body.serverTimings[]. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: object. vendor.cloudflare-rum.http..invalid docs
name required Complete HTTP capture contract. Capture scope: body.serverTimings[]. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.name.missing
vendor.cloudflare-rum.http.name.invalid
docs
dur required Complete HTTP capture contract. Capture scope: body.serverTimings[]. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: number or null. vendor.cloudflare-rum.http.dur.missing
vendor.cloudflare-rum.http.dur.invalid
docs
desc required Complete HTTP capture contract. Capture scope: body.serverTimings[]. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.desc.missing
vendor.cloudflare-rum.http.desc.invalid
docs
location optional Complete HTTP capture contract. Capture scope: body.serverTimings[]. Applies when {"kind":"value_in","param":"method","values":["POST"]}. Presence diagnostic severity: warning. Value diagnostic severity: warning. Evidence: vendor template. Native JSON type: string. vendor.cloudflare-rum.http.location.empty
vendor.cloudflare-rum.http.location.invalid
docs

Validate a payload

pixellint validate request @request.json --rulepack vendor/cloudflare-rum

Try this failing payload in the playground. A Cloudflare RUM ingestion capture using GET.

{
  "url": "https://cloudflareinsights.com/cdn-cgi/rum",
  "method": "GET",
  "headers": {}
}

cargo install pixellint · npm install pixellint