Skip to main content

RTB House SDK

Project description

Overview

This library provides an easy-to-use Python interface to RTB House API. It allows you to read and manage you campaigns settings, browse offers, download statistics etc.

API docs: https://api.panel.rtbhouse.com/api/docs

Installation

RTB House SDK can be installed with pip:

$ pip install rtbhouse_sdk

Usage example

Let’s write a script which fetches campaign stats (imps, clicks, postclicks) and shows the result as a table (using tabulate library).

First, create config.py file with your credentials:

USERNAME = 'jdoe'
PASSWORD = 'abcd1234'

Set up virtualenv and install requirements:

$ pip install rtbhouse_sdk tabulate
from datetime import date, timedelta
from operator import attrgetter

from rtbhouse_sdk.client import BasicAuth, Client
from rtbhouse_sdk.schema import CountConvention, StatsGroupBy, StatsMetric
from tabulate import tabulate

from config import PASSWORD, USERNAME

if __name__ == "__main__":
    with Client(auth=BasicAuth(USERNAME, PASSWORD)) as api:
        advertisers = api.get_advertisers()
        day_to = date.today()
        day_from = day_to - timedelta(days=30)
        group_by = [StatsGroupBy.DAY]
        metrics = [
            StatsMetric.IMPS_COUNT,
            StatsMetric.CLICKS_COUNT,
            StatsMetric.CAMPAIGN_COST,
            StatsMetric.CONVERSIONS_COUNT,
            StatsMetric.CTR
        ]
        stats = api.get_rtb_stats(
            advertisers[0].hash,
            day_from,
            day_to,
            group_by,
            metrics,
            count_convention=CountConvention.ATTRIBUTED_POST_CLICK,
        )
    columns = group_by + metrics
    data_frame = [
        [getattr(row, c.name.lower()) for c in columns]
        for row in reversed(sorted(stats, key=attrgetter("day")))
    ]
    print(tabulate(data_frame, headers=columns))

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rtbhouse_sdk-12.0.0.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rtbhouse_sdk-12.0.0-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

Details for the file rtbhouse_sdk-12.0.0.tar.gz.

File metadata

  • Download URL: rtbhouse_sdk-12.0.0.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for rtbhouse_sdk-12.0.0.tar.gz
Algorithm Hash digest
SHA256 c6ecb659c027bd0ee7dd29b436b09fd62206c3e39f102bf5f912f7090d3e7300
MD5 da4687836357d531e3e246ca4179b7c4
BLAKE2b-256 51352e1d9a944447a3a3ae545d03940853ccd6a2f8d61280f8d88e7fa0b7d530

See more details on using hashes here.

File details

Details for the file rtbhouse_sdk-12.0.0-py3-none-any.whl.

File metadata

  • Download URL: rtbhouse_sdk-12.0.0-py3-none-any.whl
  • Upload date:
  • Size: 10.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for rtbhouse_sdk-12.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2727e9e4a5cb86a9f279818180cba4db81d6c397c8c8598f9e0eac6df708609a
MD5 1c36ade3b5da6aff892f695e437e95a0
BLAKE2b-256 372a00cb7ac209f58a7d1652ac49667ae3700109f2dc44268ac91e5be7a1c981

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page