open-api-sdk
Open-api-sdk is a library for interaction with Open Platform.
Content
Installing
Using pip:
$ pip install open-api-sdk
Get started
OPEN Platform uses OpenKeys to allow access to the API. You can register a new OpenKey at your Account.
OPEN Platform expects the OpenKey to be included in all API requests to the server in a header.
We assume that you have the OpenKey by this moment.
To access the library import an OpenPlatform class and call an instance with the OpenKey as following:
from openp_py import OpenPy
# Access API via instance of OpenPlatform class
op = OpenPy(open_key)
open_key
- your open key.
In the following examples, it is assumed that op
is a result of instantiating the OpenPlatform
class with the open_key
API
Page request attributes
Attribute | Type | Description |
---|---|---|
offset | Long | Page offset |
limit | Int | Page limit |
Page response attributes
Attribute | Type | Description |
---|---|---|
totalCount | Long | Total count of entities in a database |
list | [] | List of entities with type T (T is generic) |
Scaffold
Scaffold attributes
Attribute | Type | Description |
---|---|---|
address | String | Scaffold address |
abi | String | Scaffold json interface |
description | String | Scaffold description |
fiatAmount | String | Scaffold fiat amount |
currency | String | Fiat amount currency |
conversionAmount | String | Fiat amount converted to ethereum |
developerAddress | String | Scaffold developer address |
webHook | String | Scaffold webhook for events |
properties | ScaffoldProperty[] | Scaffold properties |
Scaffold properties attributes
Attribute | Type | Description |
---|---|---|
name | String | Property name |
type | PropertyType | Property type |
defaultValue | String | Property default value |
get_all()
scaffolds = op.scaffold.get_all()
get_single(address)
address = '0x1c297f40beb075936d6dbe4b245b92738867ecb1' # an address of the scaffold (example)
scaffold = op.scaffold.get_single(address)
Scaffold summary attributes
Attribute | Type | Description |
---|---|---|
scaffold | Scaffold | Scaffold |
transactionIndex | BigInteger | Transaction index |
tokenBalance | BigInteger | Scaffold token balance |
enabled | Boolean | Scaffold enabled |
currency | String | Fiat amount currency |
shareHolders | ShareHolder | Scaffold shareholders |
get_summary(address)
summary = op.scaffold.get_summary(address)
get_transactions(address)
transactions = op.scaffold.get_summary(address)
data
Set web hook request Attribute | Type | Description |
---|---|---|
address | String | Scaffold address |
webHook | String | Scaffold webhook for events |
example:
data = {'webHook': 'https://example.com'}
set_webhook(address, data)
scaffold = op.scaffold.set_webhook(address, data)
data
Deploy scaffold request Attribute | Type | Description |
---|---|---|
openKey | String | User open key |
description | String | Scaffold description |
fiatAmount | String | Scaffold fiat amount |
currency | String | Fiat amount currency |
conversionAmount | String | Fiat amount converted to ethereum |
developerAddress | String | Scaffold developer address |
webHook | String | Scaffold webhook for events |
properties | ScaffoldProperty[] | Scaffold properties |
example:
data = {
'openKey': open_key,
'developerAddress': '0x0000000000000000000000000000000000000000',
'description': "any_description",
'fiatAmount': "123",
'currency': "USD",
'conversionAmount': '0.2139521163',
'properties': [
{
'name': "property_name",
'type': "STRING",
'defaultValue': "property_value"
}
]
}
deploy_scaffold(data)
scaffold = op.scaffold.deploy(data)
deactivate_scaffold(address)
scaffold = op.scaffold.deactivate(address)
Quota attributes
Attribute | Type | Description |
---|---|---|
currentCount | Int | Current deactivated scaffolds count |
limitCount | Int | Limit of deactivated scaffolds count |
get_quota()
quota = op.scaffold.get_quota()
Shareholder
Shareholder attributes
Attribute | Type | Description |
---|---|---|
address | String | Shareholder address |
percent | Int | Shareholder percent |
example:
# Shareholder attributes
data = {
'address': '0x0000000000000000000000000000000000000000',
'percent': 30
}
add(address, data)
summary = op.shareholder.create(address, data)
data
Update shareholder request Attribute | Type | Description |
---|---|---|
percent | Int | Shareholder percent |
example:
data = {'percent': 50}
update(address , holder_address , data)
shareholder_address = "0xDc29484cc9C02Ee01015f33BcA8bBb5C7293Fb54" # an example of shareholder's address
summary = op.shareholder.update(address, shareholder_address, data)
remove(address, holder_address)
summary = op.shareholder.remove(address, shareholder_address)