Export post stats (CSV)
GET
/analytics/export-posts-csv
curl 'https://api.xholic.ai/v1/analytics/export-posts-csv' \ -H "Authorization: Bearer $XHOLIC_API_KEY"xholic analytics export-posts-csv{ "name": "analytics_export_posts_csv", "arguments": {}}const response = await fetch("https://api.xholic.ai/v1/analytics/export-posts-csv", { headers: { Authorization: `Bearer ${process.env.XHOLIC_API_KEY}` },});const result = await response.json();console.log(result.summary);import axios from "axios";
const { data } = await axios.get("https://api.xholic.ai/v1/analytics/export-posts-csv", { params: {}, headers: { Authorization: `Bearer ${process.env.XHOLIC_API_KEY}` },});console.log(data.summary);import osimport requests
response = requests.get( "https://api.xholic.ai/v1/analytics/export-posts-csv", headers={"Authorization": f"Bearer {os.environ['XHOLIC_API_KEY']}"}, params={},)print(response.json()["summary"])package main
import ( "fmt" "io" "net/http" "os")
func main() { req, _ := http.NewRequest("GET", "https://api.xholic.ai/v1/analytics/export-posts-csv", nil) req.Header.Set("Authorization", "Bearer "+os.Getenv("XHOLIC_API_KEY")) res, err := http.DefaultClient.Do(req) if err != nil { panic(err) } defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body))}<?php$ch = curl_init("https://api.xholic.ai/v1/analytics/export-posts-csv");curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('XHOLIC_API_KEY')],]);$result = json_decode(curl_exec($ch), true);echo $result['summary'];require "net/http"require "json"
uri = URI("https://api.xholic.ai/v1/analytics/export-posts-csv")req = Net::HTTP::Get.new(uri)req["Authorization"] = "Bearer #{ENV.fetch("XHOLIC_API_KEY")}"res = Net::HTTP.start(uri.host, uri.port, use_ssl: true) { |http| http.request(req) }puts JSON.parse(res.body)["summary"]Every post in a period with its numbers as CSV text (up to 5,000 rows). Filters match how_did_it_do.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”range
string
timezone
IANA timezone such as America/New_York. Use the user’s timezone.
string
IANA timezone such as America/New_York. Use the user’s timezone.
kind
string
search
string
sort
string
direction
string
from
First day, YYYY-MM-DD; overrides range.
string
First day, YYYY-MM-DD; overrides range.
to
Last day, YYYY-MM-DD.
string
Last day, YYYY-MM-DD.
account
X account to act on, as @handle. Leave it out to use the connection’s default account.
string
X account to act on, as @handle. Leave it out to use the connection’s default account.
Responses
Section titled “Responses”Success
Media typeapplication/json
object
ok
required
boolean
summary
required
One or two readable sentences about the result.
string
data
required
The result. Its shape depends on the action.
ids
object
key
additional properties
any
next
Array<string>
creditsCharged
number
dryRun
boolean
Example
{ "ok": true}default
Section titled “default”Error
Media typeapplication/json
object
ok
required
boolean
error
required
object
code
required
string
message
required
string
scope
required
string
retryAfterSeconds
integer
details
Example
{ "ok": false, "error": { "code": "UNAUTHENTICATED", "scope": "account" }}