SimilarWeb Traffic Sources API

Marketing channel traffic breakdown including organic, paid, referral, social, and display

OpenAPI Specification

similarweb-traffic-sources-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: SimilarWeb Batch Account Traffic Sources API
  description: The SimilarWeb Batch API is optimized for large-scale bulk data extraction, supporting asynchronous jobs of up to one million domains per request. It delivers data to cloud storage destinations including Amazon S3, Google Cloud Storage, and Snowflake. The API covers website traffic, keywords, referrals, geography, segments, apps, companies, e-commerce, and technographics datasets.
  version: 4.0.0
  termsOfService: https://www.similarweb.com/corp/legal/terms-of-use/
  contact:
    name: SimilarWeb Support
    url: https://support.similarweb.com/hc/en-us/articles/22089555897373-REST-API
  license:
    name: Proprietary
    url: https://www.similarweb.com/corp/legal/terms-of-use/
servers:
- url: https://api.similarweb.com
  description: SimilarWeb API server
tags:
- name: Traffic Sources
  description: Marketing channel traffic breakdown including organic, paid, referral, social, and display
paths:
  /v1/website/{domain_name}/traffic-sources/overview-share:
    get:
      operationId: getTrafficSourcesOverview
      summary: Visits by Marketing Channel - Desktop
      description: Retrieve desktop visits broken down by marketing channel (Search, Social, Mail, Display Ads, Direct, Referrals) including organic and paid splits.
      tags:
      - Traffic Sources
      security:
      - apiKeyQuery: []
      parameters:
      - $ref: '#/components/parameters/domainName'
      - $ref: '#/components/parameters/apiKeyQuery'
      - $ref: '#/components/parameters/country'
      - $ref: '#/components/parameters/granularity'
      - $ref: '#/components/parameters/startDate'
      - $ref: '#/components/parameters/endDate'
      - $ref: '#/components/parameters/mainDomainOnly'
      - $ref: '#/components/parameters/format'
      - $ref: '#/components/parameters/mtd'
      responses:
        '200':
          description: Traffic sources breakdown
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrafficSourcesResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
components:
  parameters:
    startDate:
      name: start_date
      in: query
      required: false
      schema:
        type: string
        pattern: ^\d{4}-\d{2}$
        example: 2024-01
      description: Start month in YYYY-MM format
    mainDomainOnly:
      name: main_domain_only
      in: query
      required: false
      schema:
        type: string
        enum:
        - 'true'
        - 'false'
        default: 'false'
      description: Return main domain only (true) or include subdomains (false)
    endDate:
      name: end_date
      in: query
      required: false
      schema:
        type: string
        pattern: ^\d{4}-\d{2}$
        example: 2024-06
      description: End month in YYYY-MM format
    domainName:
      name: domain_name
      in: path
      required: true
      schema:
        type: string
        example: example.com
      description: Website domain without 'www.' prefix
    mtd:
      name: mtd
      in: query
      required: false
      schema:
        type: string
        enum:
        - 'true'
        - 'false'
      description: Month-to-date mode; use with daily granularity
    format:
      name: format
      in: query
      required: false
      schema:
        type: string
        enum:
        - json
        - xml
        default: json
      description: Response format
    apiKeyQuery:
      name: api_key
      in: query
      required: true
      schema:
        type: string
      description: SimilarWeb API authentication key
    country:
      name: country
      in: query
      required: false
      schema:
        type: string
        example: us
      description: 2-letter ISO 3166-1 alpha-2 country code or "world"
    granularity:
      name: granularity
      in: query
      required: false
      schema:
        type: string
        enum:
        - daily
        - weekly
        - monthly
      description: Temporal resolution for time series data
  schemas:
    MetaObject:
      type: object
      description: Standard response metadata
      properties:
        request:
          type: object
          description: Echo of the original request parameters
        status:
          type: string
          description: Request status (Success or error)
        last_updated:
          type: string
          format: date
          description: Timestamp of the most recent data update
    TrafficSourcesResponse:
      type: object
      properties:
        meta:
          $ref: '#/components/schemas/MetaObject'
        visits:
          type: object
          description: Domain-keyed object with source type arrays
          additionalProperties:
            type: array
            items:
              type: object
              properties:
                source_type:
                  type: string
                  description: Channel name (Search, Social, Mail, Display Ads, Direct, Referrals)
                visits:
                  type: array
                  items:
                    type: object
                    properties:
                      date:
                        type: string
                        format: date
                      organic:
                        type: number
                      paid:
                        type: number
  responses:
    BadRequest:
      description: Bad request - invalid parameters or missing required fields
      content:
        application/json:
          schema:
            type: object
  securitySchemes:
    apiKeyHeader:
      type: apiKey
      in: header
      name: api-key
      description: SimilarWeb API key passed as a request header
externalDocs:
  description: SimilarWeb Batch API Documentation
  url: https://developers.similarweb.com/docs/intro-to-the-batch-api-datasets.md