Skip to main content

Python Sklik API (unofficial)

Project description

Sklik API Python Client

This repository contains unofficial Python client for interacting with the Sklik API. It provides a simple and convenient way for Python applications to generate reports from Seznam Sklik advertising platform.

Installation

The sklik package can be installed from PyPI. You can install it either with pip or with poetry.

Using pip

Run the following command in your terminal:

pip install sklik

Using poetry

Firstly, ensure you have Poetry installed. If it's not installed, refer to the official Poetry installation guide for instructions. When Poetry is installed, you can add the sklik package to your project by running:

poetry add sklik

Classes and Functions Available

The library includes several major Classes and Functions: SklikApi: Class used to instantiate a SklikApi object which is used for making all requests to the Sklik API. sklik_request(): A low-level function to perform a direct POST request to the Sklik API. It can be used separately when lower-level manipulation of requests is required. Report: Class for dealing with large data set from Sklik API by automatically paginating through the data. create_report(): Utility function to create a new report based on several parameters like account, service, date, fields, granularity etc.

Usage Guide

Creating Instance of SklikApi

To create Instance of SklikApi, provide your Sklik token:

from sklik import SklikApi

token = '<sklik_token>'
SklikApi.init(token)

This sets a default api instance accessible via SklikApi.get_default_api()

Generating A Report

To generate a report, use the create_report function:

from sklik import create_report
from sklik.object import Account

account_id = int('<account_id>')
account = Account(account_id)

report = create_report(
    account, 
    service='campaigns',
    fields=['id', 'name', 'status', 'impressions']
)

Please replace '<account_id>', 'service' and 'fields' with your specific account details.

Iterating Through Pages of A Report

To fetch and iterate through the pages of a report, use the Report object returned by create_report():

for page in report:
    print(page)

This will print each page of the report in sequence. The Report class is iterable, and it handles pagination automatically.

Using sklik_request for Low-Level API Access

The sklik_request function lets you make API requests directly, giving you low-level access to the API. It requires parameters like api_url, service, method, and args. Note, however, that using this function, you'll need to handle responses on your own. Example usage:

response = sklik_request(API_URL, "my_service", "my_method", "my_args")

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

sklik-0.1.3.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

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

sklik-0.1.3-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file sklik-0.1.3.tar.gz.

File metadata

  • Download URL: sklik-0.1.3.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.1 Darwin/23.2.0

File hashes

Hashes for sklik-0.1.3.tar.gz
Algorithm Hash digest
SHA256 3ad817fab5dad9fac556b91decafea00e99dc04d8b9df2c89c0991b8b4f056ed
MD5 7c1af437a1e421d962b98665fac546c7
BLAKE2b-256 b3e4d5f5781ee94fdd41c011d04a3425f15ce67c80cb16e419a0e4df452e9a3e

See more details on using hashes here.

File details

Details for the file sklik-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: sklik-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 7.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.1 Darwin/23.2.0

File hashes

Hashes for sklik-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5d05a8387cb5824442d307426a94746e97968018247f6a09af250937170abec8
MD5 e5ce59750e14fcfab3b613687e38dc3c
BLAKE2b-256 42592b9044a268c779811613b774f0f71fd801e97271fca9fc51594918fb1f81

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