ConfigError: Missing region in config

TL;DR — AWS SDK が、どのリージョンと通信するか分かりません。クライアントに明示的に設定する(new DynamoDBClient({ region: 'us-east-1' }))、AWS_REGION 環境変数経由、または ~/.aws/config で設定してください。

意味

ConfigError: Missing region in config

すべての DynamoDB エンドポイントはリージョン単位なので、SDK はリクエストを送る前にリージョンを解決する必要があります。この正確な表現は、デフォルトでリージョンを選択しない AWS SDK for JavaScript v2(現在サポート終了)から来ます。その設定ソースのいずれもリージョンを供給しないと、ネットワーク呼び出しの前にこれをスローします。他の SDK と AWS CLI は、リージョンが設定されていないとき、それぞれ同等のもので失敗します。

発生する理由

  • クライアントにリージョンが渡されておらず、環境に AWS_REGION もない(JavaScript SDK は AWS_REGION を読みます。AWS CLI は AWS_DEFAULT_REGION--region も尊重します)。
  • SDK が決して読まない ~/.aws/config のリージョン — JavaScript SDK v2 は、AWS_SDK_LOAD_CONFIG 環境変数が設定されているときのみ共有 config ファイルをロードします。それがないと、まったく正しい region = 行が無視されます。
  • 環境変数名の タイプミスAWS_REGIONSREGION)。

修正方法(いずれか1つ)

  1. クライアントに設定します(最も明示的):
    import {DynamoDBClient} from '@aws-sdk/client-dynamodb';
    const client = new DynamoDBClient({region: 'us-east-1'});
  2. 環境変数:
    export AWS_REGION=us-east-1
  3. AWS config ファイル~/.aws/config):
    [default]
    region = us-east-1
    JavaScript SDK v2 では、SDK が実際にこのファイルを読むよう AWS_SDK_LOAD_CONFIG=1 も設定します(CLI と他のほとんどの SDK はデフォルトで読みます)。
  4. DynamoDB Local ですか? それでも 何らかの リージョン文字列(任意の値 — ローカルデータベースファイルの命名にのみ使われます)と endpoint が必要です:
    const client = new DynamoDBClient({region: 'local', endpoint: 'http://localhost:8000'});

DynoTable を Local に向ける

DynoTable はリージョンを AWS プロファイルごとに保存します — Settings → Profiles → Add Profile と進み、保存する前にドロップダウンからリージョンを選んでください。サイドバー下部のプロファイルチップに有効なリージョンが表示され、⌘P で切り替えられます。リージョンが空のとき、あるいは AWS_SDK_LOAD_CONFIG を必要とする SDK が共有設定ファイルを無視しているときは、Test Connection がすぐに失敗します。

Local なら Download Local を使う(またはプロファイルのエンドポイントを http://localhost:8000 に向ける)うえで、リージョンには任意の文字列を設定します — DynoTable はエンドポイントとリージョンを同じプロファイルに保持するので、両者がずれることはありません。接続できたら ⌘K でテーブルを開き、リクエストが想定どおりのリージョンに向かっていることを確かめましょう。同じ設定をアプリケーションのコードに貼り付ける前にプロファイルのリージョンを検証するには、ビジュアルなクエリビルダーが便利です。

SDK v2 と v3 のリージョン解決の違いを調べるときは、DynoTable が使っているプロファイル設定と、アプリケーションの環境変数を並べて比べてください。ステージング(⌘S)を使えば、バッチジョブを走らせる前に、設定したプロファイルに対して書き込みを試せます。

出典

関連するエラー

参考資料

最終検証日 2026-07-13、上記にリンクした公式 AWS ドキュメントに照らして確認しました。

Console なしで DynamoDB を扱う

DynamoDB では実行できない本物の SQL(JOINs、GROUP BY、集計)を実行する高速な DynamoDB デスクトップクライアント。ビジュアル編集と、あなた自身の Bedrock キーで動く AI エージェントを備えています。

30日間無料トライアル、クレジットカード不要 — その後は期限のない Free プラン。