API トークンの使用

API トークンは、ユーザー アクセスのスコープが定義された単一目的のアクセス トークンです (作成時に指定)。これらのトークンは、スクリプト作成、CI/CD ツール、 Bitbucket に接続される開発中のアプリのテストに役立ちます。

Bitbucket API へのアクセスや Git コマンドの実行に使用される API トークンにはスコープが必要です

Git コマンドで API トークンを使用する

API トークンを使用して Bitbucket Cloud で認証を行うには、API トークンと Bitbucket のユーザー名が必要です。Bitbucket ユーザー名は、Bitbucket の [アカウント設定] ページの [Bitbucket プロファイル設定] に記載されています。

インタラクティブ パスワード プロンプトによる API トークン

この方法では、API トークンが保護されずに URL に保存されるのを防ぎ、Git が Bitbucket Cloud を操作 (git pullgit pushgit fetch などのコマンドを実行) するたびにトークンの入力を要求します。

パスワードを求められた場合は、必ず API トークンを入力してください。

インタラクティブ プロンプトを介して API トークンを指定するには、次のコマンドでリポジトリを複製します。

git clone https://{bitbucket_username}@bitbucket.org/{workspace}/{repository}.git

代わりに、静的なユーザー名を使用することもできます。

git clone https://x-bitbucket-api-token-auth@bitbucket.org/{workspace}/{repository}.git

ローカルデバイスにすでに複製されているリポジトリの場合は、次のコマンドでリモート URL をアップデートします。

git remote set-url origin https://{bitbucket_username}@bitbucket.org/{workspace}/{repository}.git

API トークンを URL に含める

API トークンをプレーンテキストとして保護しないで保存したり、Git リモート URL の一部として永続的に保存したりしないことをお勧めします。この方法は、API トークンがビルド ツールの「秘密」変数として安全に保存されている場合に役立ちます。

インタラクティブ パスワード プロンプトなしで API トークンを使用するために、API トークンを URL に含めることができます。例: リポジトリを複製する場合は、次のコマンドを実行します。

git clone https://{bitbucket_username}:{api_token}@bitbucket.org/{workspace}/{repository}.git

代わりに、静的なユーザー名を使用することもできます。

git clone https://x-bitbucket-api-token-auth:{api_token}@bitbucket.org/{workspace}/{repository}.git

ローカルデバイスにすでに複製されているリポジトリの場合は、次のコマンドでリモート URL をアップデートします。

git remote set-url origin https://{bitbucket_username}:{api_token}@bitbucket.org/{workspace}/{repository}.git

Bitbucket API で API トークンを使用する

Bitbucket Cloud の統合またはアプリを構築する際に、可能な場合は OAuth を使用することをお勧めします。Bitbucket Cloud 統合またはアプリの構築については、アトラシアン開発者 - Bitbucket Cloud をご覧ください。

次の例は、Bitbucket Cloud API での認証方法のガイドとして、curl コマンドで API トークンを使用する方法を示しています。どちらの例も、List commits API を使用して、Bitbucket リポジトリでコミットをクエリしています。Atlassian アカウントのメール アドレスと API トークンの両方が必要です。Atlassian アカウントのメール アドレスは、Bitbucket の [個人設定] ページの [メール エイリアス] にリストされます。

API トークンは、ユーザーの Atlassian アカウント メールとともに、ログイン認証情報として送信できます。次に例を示します。

curl --request POST \ --url 'https://api.bitbucket.org/2.0/repositories/{workspace}/{repository}/commits' \ --user '{atlassian_account_email}:{api_token}' \ --header 'Accept: application/json'

または、Bitbucket のメール アドレスと API トークンが base64 エンコードされた後に、HTTP 認証ヘッダーで送信することもできます。次に例を示します。

my_credentials_after_base64_encoding=`echo -n '{atlassian_account_email}:{api_token}' | base64` curl --request POST \ --url 'https://api.bitbucket.org/2.0/repositories/{workspace}/{repository}/commits' \ --header "Authorization: Basic $my_credentials_after_base64_encoding" \ --header 'Accept: application/json'

 

さらにヘルプが必要ですか?

アトラシアン コミュニティをご利用ください。