Skip to content

flomio/passninja-python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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
)

Get Pass Template Details

pass_template_object = pass_ninja_client.pass_templates.find(
  'ptk_0x14', # pass template key
)
print(pass_template_object.pass_type_id)

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

About

A PassNinja API helper library for Python

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages