TellusマーケットAPI(開発者向け)

Tellus Marketでプロバイダにより提供されるAPIは、以下の手順で利用することができます。

20200219_000198_image2.png

1.購入

Tellus Marketにて利用したい商品を選択し、購入を行ってください。 購入の方法は利用ガイドにて詳細を確認してください。

2.「商品ID」を確認

商品購入後、Tellus Marketダッシュボードの「購入済み」商品一覧から、「商品ID」を確認することができます。

20200219_000198_image3.png

3.マーケットトークン発行

Tellus Marketで購入したAPIを利用するには、マーケットトークンを発行する必要があります。

import requests, datetime, json
TOKEN = 'アカウント管理でAPIアクセストークンを発行しここに貼り付けます'
product_id = '利用したいAPIの商品ID'
# マーケットトークン有効期限(30分後に設定)
# デフォルトでは5分、最長で60分まで設定可能
expires_at = (datetime.datetime.now(datetime.timezone(datetime.timedelta(hours=+9))) + datetime.timedelta(minutes=30)).isoformat()
def get_market_token(payload={}):
    url = 'https://sdk.tellusxdp.com/api/manager/v2/auth/token/'
    headers = {
        'Authorization': 'Bearer ' + TOKEN,
        'Content-type': 'application/json'    }
    r = requests.post(url, headers=headers, data=json.dumps(payload))
    if r.status_code is not 200:
        raise ValueError('status error({}).'.format(r.status_code))
    return json.loads(r.content) 
# マーケットトークンを発行する
ret = get_market_token({'product_id': product_id, 'expires_at':expires_at})
print('token api result : {}'.format(ret))
'''
token api result : {
  'product_id': 'sample',
  'expires_at': '2020-02-28T10:00:00+09:00', 
  'token': 'xxx',
  'base_url': 'https://example.com'
}
'''

マーケットトークン発行APIを実行するには、APIアクセストークンが必要です。 APIアクセストークンはアカウント管理の「APIトークン」から発行することができます。

12-01.png

購入していない商品の情報でマーケットトークンを発行しようとすると401エラーが表示されます。

発行時に設定した有効期限(最大60分)を過ぎるとマーケットトークンは使えなくなります。必要に応じて再発行してください。

マーケットトークン発行APIについて詳しくは こちら をご覧ください。

4. APIリクエスト

発行したマーケットトークンを使ってAPIリクエストを行います。

import requests, datetime, json
TOKEN = 'アカウント管理でAPIアクセストークンを発行しここに貼り付けます'
product_id = '利用したいAPIの商品ID' path= '利用したいAPIのAPIリファレンスからpathを調べて貼り付けます' # マーケットトークン有効期限(30分後に設定) # デフォルトでは5分、最長で60分まで設定可能 expires_at = (datetime.datetime.now(datetime.timezone(datetime.timedelta(hours=+9))) + datetime.timedelta(minutes=30)).isoformat() def get_market_token(payload={}): url = 'https://sdk.tellusxdp.com/api/manager/v2/auth/token/' headers = { 'Authorization': 'Bearer ' + TOKEN, 'Content-type': 'application/json' } r = requests.post(url, headers=headers, data=json.dumps(payload)) if r.status_code is not 200: raise ValueError('status error({}).'.format(r.status_code)) return json.loads(r.content) def exec_api(url, token, payload={}): headers = { 'Authorization': 'Bearer ' + token } r = requests.get(url, headers=headers, params=payload) return r.content # マーケットトークンを発行する ret = get_market_token({'product_id': product_id, 'expires_at':expires_at}) # API実行 executed = exec_api(ret['base_url'] + path, ret['token'], {}) print('executed : {}'.format(executed))

トークンが不正、有効期限が切れている場合は401エラーが表示されます。

APIのbase_urlはトークン発行APIの返り値を参照することを推奨します。 Pathは各商品のAPIリファレンスで確認してください。