4-1. TellusマーケットAPI(開発者向け)

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

20200219_000198_image2.png

1.購入

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

2.「商品ID」を確認

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

20200219_000198_image3.png

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

マーケットで購入した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アクセストークンはダッシュボードの「開発環境」から発行することができます kidimage1.png 購入していない商品の情報でマーケットトークンを発行しようとすると401エラーが表示されます。 発行時に設定した有効期限(最大60分)を過ぎるとマーケットトークンは使えなくなります。必要に応じて再発行してください。 マーケットトークン発行APIについて詳しくは[こちら](https://www.tellusxdp.com/docs/api-reference/tools-v2.html)をご覧ください。 ## 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リファレンスで確認してください。

次へ