Skip to main content

PassNinja API library for Python

Project description

passninja-python

Use passninja-python as a PyPi or Anaconda module.

Contents

Installation

Install via pip:

pip install passninja

Usage

PassNinjaClient

Use this class to create a PassNinjaClient object. Make sure to pass your user credentials to make any authenticated requests.

import passninja

account_id = '**your-account-id**'
api_key = '**your-api-key**'

pass_ninja_client = passninja.PassNinjaClient(account_id, api_key)

We've placed our demo user API credentials in this example. Replace it with your actual API credentials to test this code through your PassNinja account and don't hesitate to contact PassNinja with our built in chat system if you'd like to subscribe and create your own custom pass type(s).

For more information on how to use passninja-python once it loads, please refer to the PassNinja JS API reference

PassNinjaClientMethods

This library currently supports methods for creating, getting, updating, and deleting passes via the PassNinja api. The methods are outlined below.

Create

simple_pass_object = pass_ninja_client.passes.create(
    'ptk_0x14', # passType
    {'discount': '50%', 'memberName': 'John'} # passData
)
print(simple_pass_object.url)
print(simple_pass_object.passType)
print(simple_pass_object.serialNumber)

Find

Finds issued passes for a given pass template key

pass_objects = pass_ninja_client.passes.find(
    'ptk_0x14', # passType aka pass template key
)

Get

detailed_pass_object = pass_ninja_client.passes.get(
    'ptk_0x14', # passType
    '97694bd7-3493-4b39-b805-20e3e5e4c770' # serialNumber
)

Decrypt

Decrypts issued passes payload for a given pass template key

decrypted_pass_object = pass_ninja_client.passes.decrypt(
    'ptk_0x14', # passType
    '55166a9700250a8c51382dd16822b0c763136090b91099c16385f2961b7d9392d31b386cae133dca1b2faf10e93a1f8f26343ef56c4b35d5bf6cb8cd9ff45177e1ea070f0d4fe88887' # payload
)

Update

simple_pass_object = pass_ninja_client.passes.put(
    'ptk_0x14', # passType
    '97694bd7-3493-4b39-b805-20e3e5e4c770', # serialNumber
    {'discount': '100%', 'memberName': 'Ted'} # passData
)

Delete

deleted_pass_serial_number = pass_ninja_client.passes.delete(
    'ptk_0x14', # passType,
    '97694bd7-3493-4b39-b805-20e3e5e4c770' # serialNumber
)
print('Pass deleted. Serial_number: ', deleted_pass_serial_number)

Documentation

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

passninja-1.3.0.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

passninja-1.3.0-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file passninja-1.3.0.tar.gz.

File metadata

  • Download URL: passninja-1.3.0.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for passninja-1.3.0.tar.gz
Algorithm Hash digest
SHA256 0afdae331bd1edd6f462da616d70d66f42fae7af27023f4b5611e62c78d10c9a
MD5 a0c6bc9334d4e5f191939ed32e739f55
BLAKE2b-256 e492be0aef9f13db1d8a9f636b363e48e4de7043c7d25b42d097fc263241135b

See more details on using hashes here.

File details

Details for the file passninja-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: passninja-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for passninja-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 17b4fe5e60a313d4268590ede1792843bcdaae9d8316119172b4def3c9537637
MD5 c845540e925313e1036a98e16795103b
BLAKE2b-256 365e68f1c73e6630d55c401afdd48d398593aafbd8a218298f8ced64ab5888f4

See more details on using hashes here.

Supported by

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