curl --request GET \
--url https://api.example.com/v1/panel/reports/conversionsimport requests
url = "https://api.example.com/v1/panel/reports/conversions"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/v1/panel/reports/conversions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/v1/panel/reports/conversions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/panel/reports/conversions"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/v1/panel/reports/conversions")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/panel/reports/conversions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"conversions": [
{
"orderId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"operation": "<string>",
"state": "<string>",
"currency": "<string>",
"paidMinor": 123,
"refundedMinor": 123,
"paidAt": "2023-11-07T05:31:56Z",
"clickId": "<string>",
"clickSource": "<string>",
"source": "<string>",
"medium": "<string>",
"campaign": "<string>",
"content": "<string>",
"term": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"request_id": "<string>"
}Get v1panelreportsconversions
Requires finance.read. The offline-conversion export: settled orders that came from an advertisement, with the click identifier the platform issued.
Payment happens on the backend, often a day after the click, so the browser session that carried the identifier is long gone by the time there is money to attribute. This is what makes the upload possible.
Nothing is uploaded by this software. format=csv returns a file the operator downloads and hands to the platform themselves — sending a customer’s purchase to an advertising network because a settings toggle was on is not something anybody should have to discover from behaviour.
Refunded orders are present with their refunded amount rather than dropped. A platform that optimised bidding on a sale that was later returned is being taught the wrong thing, and an operator can only correct for that if the export says it happened.
curl --request GET \
--url https://api.example.com/v1/panel/reports/conversionsimport requests
url = "https://api.example.com/v1/panel/reports/conversions"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/v1/panel/reports/conversions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/v1/panel/reports/conversions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/panel/reports/conversions"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/v1/panel/reports/conversions")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/panel/reports/conversions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"conversions": [
{
"orderId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"operation": "<string>",
"state": "<string>",
"currency": "<string>",
"paidMinor": 123,
"refundedMinor": 123,
"paidAt": "2023-11-07T05:31:56Z",
"clickId": "<string>",
"clickSource": "<string>",
"source": "<string>",
"medium": "<string>",
"campaign": "<string>",
"content": "<string>",
"term": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"request_id": "<string>"
}