Skip to content

Cabin Analytics API

Cabin bietet eine schreibgeschützte API für den Zugriff auf Ihre Daten. Analytics-Antworten werden aggregiert (genau wie sie im Dashboard gespeichert und angezeigt werden) und sind im JSON-Format verfügbar.

NOTE

Die API ist nur für PRO-Konten verfügbar.

API-Schlüssel

Um die API zu nutzen, müssen Sie einen API-Schlüssel im Bereich API keys settings Ihres Kontos erstellen.

API Keys Sections

  1. Wählen Sie 'New Key'
  2. Geben Sie Ihrem Schlüssel einen Namen
  3. Wählen Sie die Domains aus, für die Sie Zugriff gewähren möchten
  4. Klicken Sie auf 'Create'

Authentifizierung

Um Ihre Anfragen zu authentifizieren, müssen Sie Ihren API-Schlüssel im x-api-key Header Ihrer Anfragen angeben.

Beispielanfrage:

bash
curl -X GET "https://api.withcabin.com/v1/analytics?domain=example.com&date_from=2025-01-01&date_to=2025-02-01&scope=core&limit_lists=20" -H "x-api-key: YOUR_API_KEY"

Endpunkte

Die API ist unter https://api.withcabin.com/v1/{endpoint} verfügbar.

/analytics

Dieser Endpunkt liefert aggregierte Daten über den Traffic Ihrer Website zwischen zwei Daten, einschließlich aggregierter täglicher Daten für Seitenaufrufe und Absprünge.

Abfrageparameter

domain

string erforderlich

Der Domainname, für den Sie Analytics-Daten abrufen möchten.

date_from

string erforderlich

Das Startdatum für die Daten (Format: JJJJ-MM-TT).

date_to

string erforderlich

Das Enddatum für die Daten (Format: JJJJ-MM-TT).

scope

string optional

Standard: core - Der Umfang der Daten. Kann eine beliebige Kombination aus core,pages,referrals enthalten.

limit_lists

number optional

Standard: 50 Maximum: 250 - Die Anzahl der Elemente in Listen, die zurückgegeben werden sollen.

Dies betrifft countries, languages, browsers, operating_systems, devices, screen_sizes, pages und referrals.

Die Prozentsätze in der Antwort bleiben unabhängig vom Limit im Kontext des gesamten Datensatzes.

Über Scope

Die Bereiche pages und referrals fügen zusätzliche Daten für einzelne Pfade auf Ihrer Domain hinzu - siehe Beispielantwort. Diese sind etwas umfangreicher, daher empfehlen wir die Verwendung von core, es sei denn, Sie benötigen die zusätzlichen Daten.

Energieemissionsdaten sind nur mit dem Bereich pages verfügbar.

Beispielantwort

json
{
  query: {
    domain: "example.com",
    date_from: "2025-01-01",
    date_to: "2025-02-01",
    scope: "core,pageviews,referrals",
    limit_lists: 10
  },

  /* Verfügbar mit scope: core */

  summary: {
    page_views: 1959,
    unique_visitors: 1165,
    bounces: 817,
    bounce_rate: 0.29871244635193134
  },
  daily_data: [
    {
      timestamp: 1735689600000,
      page_views: 22,
      unique_visitors: 16,
      bounces: 12,
      bounce_rate: 0.75
    },
    {
      timestamp: 1735776000000,
      page_views: 29,
      unique_visitors: 26,
      bounces: 23,
      bounce_rate: 0.88
    },
    {
      timestamp: 1735862400000,
      page_views: 24,
      unique_visitors: 16,
      bounces: 13,
      bounce_rate: 0.81
    }
  ],
  screen_sizes: {
    small: 38,
    medium: 372,
    large: 463
  },
  devices: {
    desktop: 873,
    mobile: 288,
    tablet: 4,
    smart_tv: 0,
    console: 0,
    wearable: 0
  },
  browsers: [
    {
      name: "Chrome",
      value: 718
    },
    {
      name: "WebKit",
      value: 117
    },
    {
      name: "Firefox",
      value: 85
    }
  ],
  operating_systems: [
    {
      name: "Windows",
      value: 467
    },
    {
      name: "Mac OS",
      value: 365
    },
    {
      name: "iOS",
      value: 223
    }
    // ...
  ],
  countries: [
    {
      code: "GB",
      value: 362
    },
    {
      code: "US",
      value: 263
    },
    {
      code: "JP",
      value: 41
    }
    // ...
  ],
  languages: [
    {
    code: "en",
      value: 887
    },
    {
      code: "ja",
      value: 37
    },
    {
      code: "ru",
      value: 32
    }
    // ...
  ],
  traffic_sources: {
    email: 0,
    search: 217,
    social: 151,
    unknown: 789
  },

  /* Verfügbar mit scope: pages */

  energy: {
    page_count: 22,
    green_hosting: {
      url: "nicmulvaney.com",
      hosted_by: "Cloudflare",
      hosted_by_website: "https://www.cloudflare.com",
      partner: null,
      green: true,
      hosted_by_id: 779,
      modified: "2025-03-17T20:24:22",
      supporting_documents: [
        {
          id: 18,
          title: "Blog post - The Climate and Cloudflare",
          link: "https://blog.cloudflare.com/the-climate-and-cloudflare/"
        },
        {
          id: 1264,
          title: "Cloudflare 2023 Emissions Inventory",
          link: "https://s3.nl-ams.scw.cloud/tgwf-web-app-live/uploads/Cloudflare_2023_Emissions_Inventory.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=SCWT1WBAW6NZ5SW5GYJ8%2F20250317%2Fnl-ams%2Fs3%2Faws4_request&X-Amz-Date=20250317T202736Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=0d3b2ffd9a885dbc41193e0e72bdee9c4ee8cf37671af3d092453578cc5a179c"
        }
      ]
    },
    average_time_spent_ms: 122892,
    average_co2_grams: 0.0708,
    total_co2_grams: 138.65,
    total_distance_km: 0.55,
    total_kettles: 4,
    transferred_bytes: 1145572683,
    total_bytes: 22060595,
    duration_total_ms: 240746383,
    duration_count: 1272
  },
  pages: [
    {
      path: "/page/1",
      page_views: 271671,
      unique_visitors: 243070,
      average_duration_seconds: 123,
      total_bytes: 8.2,
      co2_grams: 538,
      page_views_percentage: 0.12
    },
    {
      path: "/page/2",
      page_views: 167111,
      unique_visitors: 150073,
      average_duration_seconds: 147,
      total_bytes: 4.82,
      co2_grams: 222.6,
      page_views_percentage: 0.08
    },
    {
      path: "/page/3",
      page_views: 106361,
      unique_visitors: 93743,
      average_duration_seconds: 97,
      total_bytes: 4.82,
      co2_grams: 133.4,
      page_views_percentage: 0.05
    },
    // ...
  ],

  /* Verfügbar mit scope: referrals */

  referrals: [
    {
      source: "Google",
      page_views: 259,
      unique_visitors: 197,
      has_utm: false,
      page_views_percentage: 0.39
    },
    {
      source: "LinkedIn",
      page_views: 252,
      unique_visitors: 136,
      has_utm: false,
      page_views_percentage: 0.38
    },
    {
      source: "com.linkedin.android",
      page_views: 34,
      unique_visitors: 18,
      has_utm: false,
      page_views_percentage: 0.05
    },
    // ...
  ]
}

Rate Limiting

Die API ist auf 20 Anfragen pro Minute begrenzt. Wenn Sie mehr benötigen, kontaktieren Sie uns bitte.

Released under the MIT License.