PageSourceSearch

https://ads-api-reddit.netlify.app/assets/js/7b2940e5.c951b9ce.js

js ads-api-reddit.netlify.app collected 2026-10-03 10:25:46 UTC 6,916 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunkreddit_ads_api_site=self.webpackChunkreddit_ads_api_site||[]).push([[2557],{31606:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>d,default:()=>h,frontMatter:()=>o,metadata:()=>s,toc:()=>a});const s=JSON.parse('{"id":"guides/programs/reporting/get-custom-event-report","title":"Retrieve a Custom Conversion Event Report","description":"Get a report for your conversion events. This method is recommended for verifying custom conversion events. If you\'d like to verify standard events, we recommend using the Events Manager instead.","source":"@site/docs/guides/programs/reporting/get-custom-event-report.md","sourceDirName":"guides/programs/reporting","slug":"/guides/programs/reporting/get-custom-event-report","permalink":"/docs/v3/guides/programs/reporting/get-custom-event-report","draft":false,"unlisted":false,"tags":[],"version":"current","sidebarPosition":2,"frontMatter":{"title":"Retrieve a Custom Conversion Event Report","sidebar_position":2},"sidebar":"tutorialSidebar","previous":{"title":"Filter Metrics","permalink":"/docs/v3/guides/programs/reporting/filter-metrics"},"next":{"title":"Product Catalogs","permalink":"/docs/v3/guides/programs/product-catalogs/"}}');var r=t(74848),i=t(28453);const o={title:"Retrieve a Custom Conversion Event Report",sidebar_position:2},d=void 0,c={},a=[{value:"1. Find the index mapping",id:"1-find-the-index-mapping",level:2},{value:"2. Get the report for a custom event",id:"2-get-the-report-for-a-custom-event",level:2}];function l(e){const n={a:"a",admonition:"admonition",code:"code",h2:"h2",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,i.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(n.p,{children:["Get a report for your conversion events. This method is recommended for verifying custom conversion events. If you'd like to verify standard events, we recommend ",(0,r.jsx)(n.a,{href:"/docs/v3/guides/programs/capi/verify-events",children:"using the Events Manager"})," instead."]}),"\n",(0,r.jsx)(n.h2,{id:"1-find-the-index-mapping",children:"1. Find the index mapping"}),"\n",(0,r.jsxs)(n.p,{children:["Call\xa0",(0,r.jsx)(n.a,{href:"/docs/v3/api/get-last-fired-at",children:(0,r.jsx)(n.code,{children:"Get Last Fired At"})}),"\xa0and use\xa0",(0,r.jsx)(n.code,{children:"custom_events"}),"\xa0in the response to map custom event labels. If your fields are valid, you\u2019ll receive a response like this:"]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-json",children:'"data": {\n    // Additional fields here\n    "custom_events": [\n        {\n            "last_fired_at": "2024-03-11T19:03:32+00:00",\n            "name": "begin_checkout"\n        },\n        {\n            "last_fired_at": "2024-03-12T00:59:05.981000+00:00",\n            "name": "login"\n        },\n        {\n            "last_fired_at": "2024-03-11T08:03:41.323000+00:00",\n            "name": "select_item"\n        },\n        {\n            "last_fired_at": "2024-03-10T23:36:53.844000+00:00",\n            "name": "share"\n        }\n    ]\n}\n'})}),"\n",(0,r.jsxs)(n.p,{children:["The custom conversion events will be listed by their index in ascending order, starting with 1. For example, the first conversion event\xa0",(0,r.jsx)(n.code,{children:"begin_checkout"}),"\xa0will have an index of\xa0",(0,r.jsx)(n.code,{children:"1"}),"."]}),"\n",(0,r.jsx)(n.h2,{id:"2-get-the-report-for-a-custom-event",children:"2. Get the report for a custom event"}),"\n",(0,r.jsxs)(n.p,{children:["Fetch data for custom conversion events by calling\xa0",(0,r.jsx)(n.a,{href:"/docs/v3/api/get-a-report",children:(0,r.jsx)(n.code,{children:"Get A Report"})}),"\xa0and adding the designated value to the fields list. Enum for custom event has pattern of\xa0",(0,r.jsx)(n.code,{children:"CONVERSION_CUSTOM_EVENT_{{index}}_{{field}}"}),", where:"]}),"\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{children:"Parameter"}),(0,r.jsx)(n.th,{children:"Requirements"}),(0,r.jsx)(n.th,{children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsxs)(n.td,{children:[(0,r.jsx)(n.code,{children:"{{index}}"})," (integer)"]}),(0,r.jsxs)(n.td,{children:["Between 1 and 20 The slot for the custom conversion event. For example, if your event was the first item in the ",(0,r.jsx)(n.code,{children:"custom_events"})," array, you should set this to ",(0,r.jsx)(n.code,{children:"1"}),"."]}),(0,r.jsx)(n.td,{})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsxs)(n.td,{children:[(0,r.jsx)(n.code,{children:"{{field}}"})," (string)"]}),(0,r.jsxs)(n.td,{children:["Must include at least one of the following: ",(0,r.jsxs)("ul",{children:[(0,r.jsx)("li",{children:(0,r.jsx)("code",{children:"AVG_VALUE"})}),(0,r.jsx)("li",{children:(0,r.jsx)("code",{children:"CLICKS"})}),(0,r.jsx)("li",{children:(0,r.jsx)("code",{children:"ECPA"})}),(0,r.jsx)("li",{children:(0,r.jsx)("code",{children:"ROAS"})}),(0,r.jsx)("li",{children:(0,r.jsx)("code",{children:"TOTAL_ITEMS"})}),(0,r.jsx)("li",{children:(0,r.jsx)("code",{children:"TOTAL_VALUE"})}),(0,r.jsx)("li",{children:(0,r.jsx)("code",{children:"VIEWS"})})]})]}),(0,r.jsx)(n.td,{children:"The field that you want to be returned in your metrics."})]})]})]}),"\n",(0,r.jsx)(n.admonition,{type:"note",children:(0,r.jsxs)(n.p,{children:["Reporting returns conversion data based on the\xa0",(0,r.jsx)(n.a,{href:"https://business.reddithelp.com/s/article/Web-Attribution-Overview",children:"attribution window"}),"\xa0selected in the Ads Manager."]})}),"\n",(0,r.jsx)(n.p,{children:"For example, to return click and view conversions for custom conversion event 1:"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-json",children:'"data": {\n    "fields": [\n        "CONVERSION_CUSTOM_EVENT_1_CLICKS",\n        "CONVERSION_CUSTOM_EVENT_1_VIEWS"\n    ],\n    "starts_at": "2024-03-10T00:00:00Z",\n    "ends_at": "2024-03-12T00:00:00Z"\n}\n'})}),"\n",(0,r.jsx)(n.p,{children:"Data will be returned in the same format as standard conversion events. If your event is 
1well-formatted and your fields are valid, you\u2019ll receive a response like this:"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-json",children:'"data": {\n    "metrics": [\n        {\n            "conversion_purchase_clicks": 7,\n            "conversion_purchase_views": 0,\n            "conversion_custom_event_1_clicks": 56,\n            "conversion_custom_event_1_views": 0,\n            "conversion_custom_event_3_clicks": 36,\n            "conversion_custom_event_3_views": 0\n        }\n    ],\n    "metrics_updated_at": "2024-03-11T00:00:00Z"\n},\n"pagination": {\n    // Additional fields here\n}\n'})})]})}function h(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(l,{...e})}):l(e)}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.