Python low-level client for HasOffers.com. http://developers.hasoffers.com/
Project description
This package provides a Python low-level client for the HasOffers API.
Installation
pip install hasoffers
Usage Examples
Instantiate a client with your network token and network id:
from hasoffers import Client client = Client("networktoken", "networkid")
The general usage to call an API method is client.request(target, method, **params).
For example, to retrieve all offer categories:
response = client.request("Application", "findAllOfferCategories", filters={ "status": {"NOT_EQUAL": "deleted"} }) if response.success: # do something with response.data
Or to retrieve all conversions for an advertiser:
response = client.request("Conversion", "findAll", page=1, limit=100, filters={ "advertiser_id": 444, }) if response.success: # do something with response.data
To use a combination of OR and AND in filters:
# Find all conversions where (advertiser_id == 444 OR advertiser_id == 555 OR revenue >= 100) AND user_agent contains "AppleWebKit" response = client.request("Conversion", "findAll", page=1, limit=100, filters={ "OR": { "advertiser_id": [444, 555], "revenue": { "GREATER_THAN_OR_EQUAL_TO": 100 } }, "user_agent": { "LIKE": "%AppleWebKit%" } })
Note that a special keyword argument called response_class can be passed to substitute the default response wrapper. For example:
from hasoffers import Response class CustomResponse(Response): def next_page(self): return int(self.data.get('page')) + 1 def has_more(self): return int(self.data.get('page')) < int(self.data.get('pageCount')) response = client.request("Conversion", "findAll", limit=100, page=1, response_class=CustomResponse)
Running Tests
tox
Contributions
All contributions and comments are welcome.
Change Log
v0.1.1
Switch to Semantic Versioning
Fix issue with parse_requirements for newer versions of pip (>=6.0.0)
v0.1
Initial
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
Built Distribution
Hashes for hasoffers-0.1.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28b5390d02cca0d856ed767d99be601580a6fa7b431f5c0b3fa55fcb7bfc4125 |
|
MD5 | 2c0799e3d0c1622254274d07153c9513 |
|
BLAKE2b-256 | e1a2d64e50de1f799aef6ebf0c92e8ed1eb4e508050af227093f4790543d3cbd |