Skip to main content

Python library that simplifies access to the Public CodeOffer API

Project description

CodeOffer Python Package

CodeOffer is a Python package that provides an API wrapper for the public CodeOffer API. The package simplifies authentication and management of in-app assets for developers who use the CodeOffer API in their applications.

Installation

To install the package, run the following command:

pip install codeoffer

Usage

Import the codeoffer class from the package:

Authentication & Sessions

Initialize a new session, but first you need to import the oauth class from codeoffer

from codeoffer import oauth

After that you can create a new session token:

token = session.create_session_token()

Now get the login link and ask the user to log in: token.get_login_link()

Right after that call the token.wait_for_confirmation() method, this method will wait until the user completed the login-process.

To return the current logged in user you need to import the user class from codeoffer

from codeoffer import user

Then you can return the current user by using the get_user method and passing the token as a parameter:

user = user.User.get_user(token)

And now you can get the username, email, profile picture and access to the current logged in app (if the user purchased / downloaded the app with his account)

print(f"Hey {user.username}")

Assets

You can return all the apps your app contains.

First import the app class from codeoffer

from codeoffer import app

Then you need to initialize the app with a session token.

app = app.App.by_session_token(token)

After that you can return all the assets your app contains and return properties like the name, identifier and if the user has access to that asset.

assets = app.get_asset_directory()
for asset in assets:  
	print(f"{asset.name}: {asset.access}")

Complete Example

from codeoffer import oauth  
from codeoffer import app  
from codeoffer import user  

session = oauth.Session("10aa641e562bdd82d2f8449d")  
token = session.create_session_token()  
token.get_login_link()  
token.wait_for_confirmation()  
user = user.User.get_user(token)  
print(f"Hey {user.username}")  
app = app.App.by_session_token(token)  
assets = app.get_asset_directory()  
for asset in assets:  
	print(f"{asset.name}: {asset.access}")

License

This package is licensed under the MIT License.

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

codeoffer-0.6.0.tar.gz (2.1 kB view details)

Uploaded Source

Built Distribution

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

codeoffer-0.6.0-py3-none-any.whl (2.0 kB view details)

Uploaded Python 3

File details

Details for the file codeoffer-0.6.0.tar.gz.

File metadata

  • Download URL: codeoffer-0.6.0.tar.gz
  • Upload date:
  • Size: 2.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.9

File hashes

Hashes for codeoffer-0.6.0.tar.gz
Algorithm Hash digest
SHA256 e95a753668ce24cc314c319b6aeebd5832eeff32b91656f57152c86d25ba5026
MD5 e1defe992daae6b8ca4eb59eea05caa0
BLAKE2b-256 d261c8de9ddc400325f12ff61e755b7ebc7e9c87a31a5c8c510948318cde2a25

See more details on using hashes here.

File details

Details for the file codeoffer-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: codeoffer-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 2.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.9

File hashes

Hashes for codeoffer-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9a76d197b1d20b284afb526fdb0fb288a2b0eaf6ce454d0562afeaf7e483712b
MD5 4932b382c85299613fd78d6b35184d97
BLAKE2b-256 434b1754d56946cbc08ba84a72b7fdabe2d72438972b0ad252dc211e9baf82c3

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