CData Python Connector for eBay

Build 24.0.9063

接続の確立

コネクタ内で利用可能なオブジェクトは、"cdata.ebay" モジュールからアクセスできます。モジュールのオブジェクトを直接使用するには:

  1. モジュールを以下のようにインポートします。
    import cdata.ebay as mod
  2. 接続を確立するには、以下のような適切な接続文字列を使用してコネクタオブジェクトからconnect() メソッドを呼び出します。
    mod.connect("DevID=MyDevID;OAuthClientId=MyAppID;OAuthClientSecret=MyCertID;RuName=MyRuName;SiteID=0;OAuthAccessToken=MyOAuthAccessToken")

eBay API への接続

eBay に接続するには以下を設定します。

  • SiteID:eBay サイトID に設定。デフォルト値は"0"(U.S. のサイト)です。
  • UseSandbox:eBay sandbox アカウントを使用する場合True に設定。デフォルトでは、本製品 は本番環境に接続します。
  • RuName:サインインに使用するRuName(eBay Redirect URL 名)に設定。eBay のサインイン設定で検索します。

eBay への認証

本製品 は、OAuth 2.0 認証規格またはeBay APIで使用されている従来の認証方法であるAuth'n'Auth のいずれかを使用して、eBay を認証できます。

ユーザーアカウント(OAuth)

AuthSchemeOAuth に設定。

デスクトップアプリケーション

カスタムOAuth アプリケーションを作成する必要があります。カスタムアプリケーションの作成については、カスタムOAuth アプリの作成 を参照してください。

OAuth アクセストークンの取得およびリフレッシュ

以下を設定して、接続してください。

  • InitiateOAuth:GETANDREFRESH に設定。InitiateOAuth を使うと、OAuth 交換の繰り返しや、手動でのOAuthAccessToken 設定を避けられます。
  • OAuthClientId:キーセットのApp ID(Client ID)に設定。
  • OAuthClientSecret:キーセットのCert ID(Client Secret))に設定。
  • CallbackURL:本製品 を実行しているデバイスのサーバー名とポートを含むURL に設定。localhost のアドレスはどれでも使用可能です。デフォルトのコールバックURL はhttp://localhost:33333 です。
接続すると、本製品 はデフォルトブラウザでeBay のOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。本製品 はこれでOAuth プロセスを完了します。
  1. 本製品 はeBay からアクセストークンを取得し、それを使ってデータをリクエストします。
  2. OAuth 値はOAuthSettingsLocation で指定された場所に保存され、接続間で永続化されるようにします。
本製品 はアクセストークンの期限が切れると自動的にリフレッシュします。

Web アプリケーション

Web アプリケーション経由で接続する場合は、eBay にカスタムOAuth アプリを登録する必要があります。それから本製品 を使用してOAuth トークンの値を取得および管理します。詳しくは、カスタムOAuth アプリの作成 を参照してください。

OAuth アクセストークンの取得

次の接続プロパティを設定し、OAuthAccessToken を取得します。

  • InitiateOAuthOFF に設定。
  • OAuthClientId:キーセットのApp ID(Client ID)に設定。
  • OAuthClientSecret:キーセットのCert ID(Client Secret))に設定。

続いてストアドプロシージャを呼び出し、OAuth 交換を完了します。

  1. GetOAuthAuthorizationURL ストアドプロシージャを呼び出します。CallbackURL インプットを本製品 を実行しているデバイスのサーバー名とポートを含むURL に設定。例:http://localhost:33333ストアドプロシージャがOAuth エンドポイントのURL を返します。

  2. ステップ1でストアドプロシージャが返したURL に移動します。ログインして、Web アプリケーションを認可します。認証後、ブラウザはリダイレクトURI にリダイレクトします。リダイレクトURI にはcode というパラメータが付加されます。このパラメータの値を控えておきます。この値はBASE64 エンコードされるため、次に進める前にデコードする必要があります。
  3. GetOAuthAccessToken ストアドプロシージャを呼び出します。AuthMode インプットをWEB に設定します。Verifier インプットを、リダイレクトURL のクエリ文字列の(BASE64 デコードされた)code パラメータに設定します。

アクセストークンとリフレッシュトークンを取得した後、データに接続し、OAuth アクセストークンを自動または手動でリフレッシュすることが可能です。

OAuth アクセストークンの自動リフレッシュ

本製品 がOAuth アクセストークンを自動的にリフレッシュするようにするには、最初のデータ接続で次のように設定します。

  • InitiateOAuthREFRESH に設定。
  • OAuthClientId:キーセットのApp ID(Client ID)に設定。
  • OAuthClientSecret:キーセットのCert ID(Client Secret))に設定。
  • OAuthAccessTokenGetOAuthAccessToken によって返されたアクセストークンに設定。
  • OAuthRefreshTokenGetOAuthAccessToken によって返されたリフレッシュトークンに設定。
  • OAuthSettingsLocation:本製品 がOAuth 値を保存する場所に設定。これは接続間で維持されます。

OAuth アクセストークンの手動リフレッシュ

データ接続時に手動でOAuth アクセストークンをリフレッシュするために必要な値は、OAuth リフレッシュトークンのみです。 RefreshOAuthAccessToken ストアドプロシージャを使用して、GetOAuthAccessToken によって返されたExpiresIn パラメータ値が経過した後に手動でOAuthAccessToken をリフレッシュし、次の接続プロパティを設定します。

  • OAuthClientId:キーセットのApp ID(Client ID)に設定。
  • OAuthClientSecret:キーセットのCert ID(Client Secret))に設定。

次に、RefreshOAuthAccessToken を呼び出し、OAuthRefreshTokenGetOAuthAccessToken によって返されたOAuth リフレッシュトークンを指定します。新しいトークンが取得できたら、OAuthAccessToken プロパティにRefreshOAuthAccessToken によって返された値を設定し、新しい接続をオープンします。

最後に、OAuth リフレッシュトークンを保存し、OAuth アクセストークンの有効期限が切れた後に手動でリフレッシュできるようにします。

ヘッドレスマシン

ドライバーを設定するため、ヘッドレスマシンでユーザーアカウントにOAuth を使用します。インターネットブラウザに対応した別の端末で認証する必要があります。

  1. 以下のオプションから選択します。
    • オプション1:後述の「Verifier code を取得および交換」に従い、OAuthVerifier 値を取得します。
    • オプション2:インターネットブラウザに対応したマシンに本製品 をインストールし、通常のブラウザベースのフローで認証した後でOAuth 認証値を転送します。
  2. 次に、ヘッドレスマシンからアクセストークンを自動的にリフレッシュするように本製品 を設定します。

オプション1:Verifier code を取得および交換

Verifier code を取得するには、OAuth authorization URL で認証する必要があります。

インターネットブラウザに対応したマシンから認証してOAuthVerifier 接続プロパティを取得する方法は次のとおりです。

  1. 以下のオプションから選択します。
    • 次のプロパティを設定します。
      • InitiateOAuthOFF に設定。
      • OAuthClientId:キーセットのApp ID(Client ID)に設定。
      • OAuthClientSecret:キーセットのCert ID(Client Secret))に設定。
      次に、適切なCallbackURL およびRuName を指定してGetOAuthAuthorizationURL ストアドプロシージャを呼び出します。ストアドプロシージャによって返されたURL をブラウザで開きます。
  2. ログインして、本製品 にアクセス許可を与えます。すると、リダイレクトURI にリダイレクトされます。リダイレクトURI にはcode というパラメータが付加されます。このパラメータの値を控えておきます。推奨値https://oauth.cdata.com/oauth/ を"auth accepted URL" として使用する場合、この値はBASE64 エンコードされます。この値をデコードしてから先に進む必要があります。後ほどこれをOAuthVerifier 接続プロパティに設定します。
次に、OAuth verifier code をOAuth リフレッシュトークンおよびアクセストークンと交換する必要があります。

ヘッドレスマシンでは、次の接続プロパティを設定してOAuth 認証値を取得します。

  • InitiateOAuthREFRESH に設定。
  • OAuthVerifier:これを、控えておいたverifier code(リダイレクトURI のcode パラメータの値)に設定します。
  • OAuthClientId:キーセットのApp ID(Client ID)に設定。
  • OAuthClientSecret:キーセットのCert ID(Client Secret))に設定。
  • OAuthSettingsLocation:これを設定すると、暗号化されたOAuth 認証値が指定された場所に永続化されます。

接続をテストしてOAuth 設定ファイルを生成し、以下のプロパティを再設定して接続します。

  • InitiateOAuthREFRESH に設定。
  • OAuthClientId:キーセットのApp ID(Client ID)に設定。
  • OAuthClientSecret:キーセットのCert ID(Client Secret))に設定。
  • OAuthSettingsLocation:暗号化されたOAuth 認証値を含む場所に設定。アクセストークンの自動リフレッシュを有効にするために、この場所が本製品 に読み書きのアクセス許可を与えることを確認してください。

オプション2:OAuth 設定を転送

ヘッドレスマシンでの接続に先立ち、インターネットブラウザに対応したデバイスでドライバーとの接続をインストールし、作成する必要があります。上述の「デスクトップアプリケーション」の説明に従って、接続プロパティを設定します。

「デスクトップアプリケーション」の手順が完了すると、生成された認証値は、OAuthSettingsLocation で指定された場所に暗号化されて書き込まれます。デフォルトのファイル名はOAuthSettings.txt です。

接続をテストしてOAuth 設定ファイルを生成し、OAuth 設定ファイルをヘッドレスマシンにコピーします。

ヘッドレスマシンで、次の接続プロパティを設定し、データに接続します。

  • InitiateOAuthREFRESH に設定。
  • OAuthClientId:キーセットのApp ID(Client ID)に設定。
  • OAuthClientSecret:キーセットのCert ID(Client Secret))に設定。
  • OAuthSettingsLocation:ブラウザでマシンからコピーしたOAuth 設定ファイルの場所に設定。アクセストークンの自動リフレッシュを有効にするために、この場所が本製品 に読み書きのアクセス許可を与えることを確認してください。

レガシーアプリのユーザーアカウント(Auth'n'Auth)

本製品 は、eBay のレガシーAuth'n Auth プロトコルを使用して認証することができます。Auth'n'Auth を使用するように構築された古いアプリケーションを使用している場合は、この認証スキームを選択します。

AuthSchemeAuthNAuth に設定します。

カスタムOAuth アプリケーションを作成する必要があります。詳しくは、カスタムOAuth アプリの作成 を参照してください。

アクセストークン

OAuthAccessToken はAuth'n'Auth で認証する場合に必要となります。次の接続プロパティを設定し、OAuthAccessToken を取得します。

  • OAuthClientId:キーセットのApp ID(Client ID)に設定。
  • OAuthClientSecret:キーセットのCert ID(Client Secret))に設定。
  • DevID:キーセットのDeveloper ID に設定。

続いてストアドプロシージャを呼び出し、トークンの交換を完了します。

  1. GetOAuthAuthorizationURL ストアドプロシージャを呼び出します。RuName インプットをアプリ設定で指定したeBay Redirect URL に設定します。ストアドプロシージャがOAuth エンドポイントのURL を返します。

  2. ステップ1でストアドプロシージャが返したURL に移動します。ログインして、Web アプリケーションを認可します。認証後、ブラウザはリダイレクトURI にリダイレクトします。リダイレクトURI にはsessionid というパラメータが付加されます。このパラメータの値を控えておきます。推奨値https://oauth.cdata.com/oauth/ を"auth accepted URL" として使用する場合、この値はBASE64 エンコードされているため、デコードしてから次に進む必要があります。
  3. GetOAuthAccessToken ストアドプロシージャを呼び出します。AuthMode インプットをWEB に設定します。SessionId インプットパラメータを、認可URL のクエリ文字列の'sessionid' 値、またはCallback URL からBASE64 デコードしたセッションID に設定します。

次の接続プロパティを設定し、データに接続します。

  • OAuthClientId:キーセットのApp ID(Client ID)に設定。
  • OAuthClientSecret:キーセットのCert ID(Client Secret))に設定。
  • OAuthAccessTokenGetOAuthAccessToken によって返されたAuth'n'Auth トークンに設定。

    Note: Auth'n'Auth トークンは18ヶ月後に失効します。トークンの期限が切れたら、新しいトークンを発行する必要があります。

  • DevID:キーセットのDeveloper ID に設定。

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 24.0.9063