Claude Code Media
103,248初級

Anthropic API 使い方入門|APIキー取得からPython実装まで【2026年版】

Anthropic APIの使い方を基礎から丁寧に解説。APIキー取得手順・Python/Node.js実装コード例・Claudeモデル別料金・Prompt Caching・Claude Codeとの使い分けまで、公式ドキュメント準拠で2026年7月最新情報を完全網羅。

By Claude Code Media 編集部Reviewed by Claude Code Media 編集部

Anthropic API(アンソロピック API)を使えば、Python や Node.js のコードから Claude を直接呼び出し、チャットボット・文書要約・コード生成といった AI 機能を自社サービスへ組み込めます。本記事では API キーの取得から実際の実装例まで、公式ドキュメント(Anthropic API Reference)をもとに 2026 年 7 月時点の最新情報で解説します。

1. Anthropic API とは

Anthropic API は、Anthropic が提供する Claude モデルを HTTP リクエストで利用するための REST API です。エンドポイントにプロンプトを送ると、Claude が生成したテキストが JSON 形式で返ってきます。

1-1. API でできること

API を使って実現できる主なユースケースを整理します。

ユースケース概要
チャットボットカスタマーサポート・社内問い合わせ Bot の構築
文書要約・分類契約書・メール・記事を自動で要約・タグ付け
コード生成・レビュー指定した言語でコードを生成し、バグを自動検出
データ抽出非構造化テキストから JSON 形式でデータを抽出
多言語翻訳自然な文体での翻訳・ローカライズ
画像解析(Vision)画像に写るものをテキストで説明・分析

1-2. Claude Code / Claude.ai との違い

Anthropic の製品は用途で使い分けます。

製品主な用途技術形態
Anthropic APIアプリ・サービスへの Claude 組み込みREST API / SDK
Claude Codeターミナル上での AI 開発エージェントCLI ツール
Claude.aiブラウザ上でのチャット型 AI アシスタントWeb アプリ

API を選ぶのは「自社サービスや社内ツールに Claude を組み込みたい」ときです。Claude Code の詳細は Claude Code 完全ガイド を参照してください。

2. API キーの取得手順

2-1. Anthropic Console でアカウントを作成する

API キーは Anthropic Console で発行します。手順は以下のとおりです。

  1. console.anthropic.com にアクセス
  2. メールアドレスで新規アカウント登録(無料)
  3. メール認証を完了する
  4. 電話番号による 2 段階認証を設定する

アカウント作成直後は**無料クレジット(Free Tier)**が付与されており、トライアル利用が可能です(付与額・有効期限は Anthropic の方針変更に伴い変わる場合があります。最新情報は Anthropic コンソール でご確認ください)。

2-2. API キーを発行する

コンソールにログイン後、左メニューの 「API Keys」「Create Key」 をクリックし、わかりやすい名前(例: my-app-dev)を付けて発行します。

重要: API キーは発行直後の 1 回しか表示されません。必ずその場でコピーして安全な場所に保管してください。

2-3. API キーの安全な管理方法

API キーは絶対にソースコードに直書きしないのが鉄則です。以下の方法で管理してください。

# .env ファイルに保存(.gitignore に追加必須)
ANTHROPIC_API_KEY=sk-ant-xxxxxxxxxxxxxxxxxxxxxxxx
# Python でロードする例
import os
from dotenv import load_dotenv

load_dotenv()
api_key = os.environ.get("ANTHROPIC_API_KEY")

本番環境では AWS Secrets Manager / GCP Secret Manager / Vercel Environment Variables などのシークレット管理サービスを利用することを推奨します。

3. Claudeモデルと API 料金

3-1. 主要モデル一覧(2026 年 7 月時点)

Anthropic API で利用できる主要モデルの比較です(出典: Anthropic 公式 Claude モデル一覧)。

モデル名コンテキスト入力料金出力料金用途
claude-opus-4-8200K$15 / MTok$75 / MTok複雑な推論・エージェント
claude-sonnet-4-5200K$3 / MTok$15 / MTokバランス型・汎用
claude-haiku-3-5200K$0.8 / MTok$4 / MTok高速・低コスト・大量処理

注意: 料金・モデル仕様は Anthropic の方針により変更されることがあります。最新情報は Anthropic 公式料金ページ を必ずご確認ください。

3-2. トークンと料金の計算方法

Claude の料金はトークン(テキストの最小単位)数で計算されます。目安として、日本語は 1 文字 ≈ 1〜2 トークン、英語は 4 文字 ≈ 1 トークンが一般的です。

コストを抑えるには以下が有効です(詳細は Claude Code トークンコスト節約テク9選 を参照)。

  • Prompt Caching: 同じシステムプロンプトを繰り返す場合、最大 90% のコスト削減(Anthropic 公式機能)
  • Haiku を使い分ける: 定型・大量処理は Haiku、複雑な推論のみ Opus に振る
  • 出力トークンの制御: max_tokens パラメータで出力長を制限する

4. Python での実装例

4-1. SDK のインストール

pip install anthropic

4-2. 基本的なメッセージ送信

最もシンプルな Claude への質問コードです。

import anthropic

client = anthropic.Anthropic()  # ANTHROPIC_API_KEY を環境変数から自動読み込み

message = client.messages.create(
    model="claude-sonnet-4-5",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "Pythonでフィボナッチ数列を生成するコードを書いて"}
    ]
)

print(message.content[0].text)

4-3. システムプロンプトとマルチターン対話

実際のチャットアプリでは、役割指定(システムプロンプト)と会話履歴の管理が必要です。

import anthropic

client = anthropic.Anthropic()

# 会話履歴を蓄積するリスト
conversation_history = []

def chat(user_message: str) -> str:
    conversation_history.append({
        "role": "user",
        "content": user_message
    })

    response = client.messages.create(
        model="claude-sonnet-4-5",
        max_tokens=2048,
        system="あなたは日本語で丁寧に答えるビジネスアシスタントです。簡潔で実用的な回答を心がけてください。",
        messages=conversation_history
    )

    assistant_message = response.content[0].text
    conversation_history.append({
        "role": "assistant",
        "content": assistant_message
    })

    return assistant_message

# 使用例
print(chat("売上レポートの要約テンプレートを作って"))
print(chat("もう少し簡潔にして"))

4-4. ストリーミングレスポンス

長い回答をリアルタイムで表示したい場合はストリーミングを使います。

import anthropic

client = anthropic.Anthropic()

with client.messages.stream(
    model="claude-sonnet-4-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "日本のAI活用トレンドを詳しく解説して"}],
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)

5. Node.js / TypeScript での実装例

5-1. SDK のインストール

npm install @anthropic-ai/sdk
# または
yarn add @anthropic-ai/sdk

5-2. TypeScript での基本実装

import Anthropic from "@anthropic-ai/sdk";

const client = new Anthropic();
// ANTHROPIC_API_KEY 環境変数を自動読み込み

async function main() {
  const message = await client.messages.create({
    model: "claude-sonnet-4-5",
    max_tokens: 1024,
    messages: [
      {
        role: "user",
        content: "TypeScriptでRESTful APIを設計するベストプラクティスを教えて",
      },
    ],
  });

  console.log(message.content[0].text);
}

main();

5-3. Next.js App Router での活用例

Web アプリのバックエンドに組み込む典型パターンです。

// app/api/chat/route.ts
import Anthropic from "@anthropic-ai/sdk";
import { NextRequest, NextResponse } from "next/server";

const client = new Anthropic();

export async function POST(req: NextRequest) {
  const { message } = await req.json();

  const response = await client.messages.create({
    model: "claude-haiku-3-5",
    max_tokens: 512,
    messages: [{ role: "user", content: message }],
  });

  return NextResponse.json({
    reply: response.content[0].text,
  });
}

6. 実践的な活用パターン

6-1. PDF・長文ドキュメントの要約

Claude は 200K トークンのコンテキストを持つため、長い PDF や契約書を丸ごと渡して要約させることができます。

def summarize_document(text: str) -> str:
    """長文ドキュメントを3行に要約する"""
    response = client.messages.create(
        model="claude-opus-4-8",
        max_tokens=300,
        system="与えられたドキュメントを日本語で3行以内に要約してください。重要なポイントを箇条書きで示してください。",
        messages=[{"role": "user", "content": text}]
    )
    return response.content[0].text

6-2. 構造化データの抽出

非構造化テキストから JSON でデータを抽出する典型パターンです。

import json

def extract_contact_info(text: str) -> dict:
    """テキストから連絡先情報を抽出する"""
    response = client.messages.create(
        model="claude-haiku-3-5",
        max_tokens=200,
        system='テキストから連絡先情報を抽出し、必ず{"name": "", "email": "", "phone": ""}形式のJSONのみを返してください。',
        messages=[{"role": "user", "content": text}]
    )
    return json.loads(response.content[0].text)

6-3. Vision API で画像を解析する

Claude は画像も入力として受け付けます。

import base64

def analyze_image(image_path: str, question: str) -> str:
    """画像を分析して質問に答える"""
    with open(image_path, "rb") as f:
        image_data = base64.standard_b64encode(f.read()).decode("utf-8")

    response = client.messages.create(
        model="claude-opus-4-8",
        max_tokens=1024,
        messages=[
            {
                "role": "user",
                "content": [
                    {
                        "type": "image",
                        "source": {
                            "type": "base64",
                            "media_type": "image/jpeg",
                            "data": image_data,
                        },
                    },
                    {"type": "text", "text": question}
                ],
            }
        ],
    )
    return response.content[0].text

# 使用例
result = analyze_image("chart.jpg", "このグラフのトレンドを分析してください")

7. エラーハンドリングとベストプラクティス

7-1. よくあるエラーと対処法

エラー原因対処法
AuthenticationErrorAPI キーが無効・未設定環境変数 ANTHROPIC_API_KEY を確認
RateLimitErrorリクエスト数の上限超過リトライ処理を実装、上位 Tier に申請
OverloadedErrorAnthropic サーバー高負荷指数バックオフでリトライ
BadRequestErrorリクエスト形式エラーメッセージ構造・パラメータを確認

7-2. リトライ処理の実装

import time
import anthropic

client = anthropic.Anthropic(
    max_retries=3,  # SDK 内蔵のリトライ機能(指数バックオフ付き)
)

Anthropic の公式 SDK には指数バックオフ付きのリトライ機能が標準実装されています。max_retries パラメータで最大リトライ回数を制御できます。

7-3. コスト管理のポイント

  • 使用量の監視: Anthropic Console の Usage ダッシュボードで日次コストを確認する
  • 予算アラート: Console でコスト上限を設定し、閾値超過時にメール通知を受け取る
  • テスト環境では Haiku を使う: 開発・テスト時は claude-haiku-3-5 を使い、本番のみ Opus / Sonnet に切り替える

まとめ

Anthropic API の基本的な使い方を整理します。

  1. アカウント作成: Anthropic Console でアカウントを作成し、API キーを発行
  2. SDK インストール: pip install anthropic または npm install @anthropic-ai/sdk
  3. 環境変数管理: ANTHROPIC_API_KEY.env に設定し、ソースコードに直書きしない
  4. モデル選択: コスト重視なら Haiku、バランスなら Sonnet、複雑な推論なら Opus
  5. コスト管理: Prompt Caching・トークン制限・Haiku 使い分けで効率化

Claude Code を使った AI 開発エージェントの実装については Claude Code 完全ガイド を、API を Claude Code から呼び出す方法については Claude Code SDK とは? をあわせてご覧ください。

ByClaude Code Media 編集部

AI支援で執筆 — 本記事は Claude Code エージェントによる執筆支援を受け、編集部が事実確認・編集を行っています。 数値・引用元は記事更新日時点で確認済みですが、最新情報は各公式サイトでご確認ください。