ターン アクセス SQLクエリを REST API 終点
クエリビルダーでクエリを保存するには、 新しいエンドポイント, and you have a URL at api.querystreams.com with its own key. The SQL runs read-only on the Agent that already reads your Access file; the caller gets JSON or CSV and never sees the SQL, the schema or a password. Nothing to host, no port to open. About 90 seconds from a saved query, and the Free plan covers your first endpoint.
最終的に手に入るもの
URL api.querystreams.com これは、保存した Access クエリの行を JSON または CSV 形式でキーを持つユーザーに返します。共有する前に、ポータルのコンソールでテストしてください。例:
| 鍵 | 価値 | 説明 |
|---|---|---|
市 文字列 オプション | シアトル | 保存されたクエリからの呼び出し可能なフィルター |
X-APIキー | qsapi_AB•••••••••• | あなたの秘密のトークン |
{
"市": 「シアトル」
}| ヘッダ | 価値 | 説明 |
|---|---|---|
X-APIキー | qsapi_AB•••••••••• | あなた専用の秘密トークン。発信者1人につき1つ。いつでも取り消し可能。 |
コンテンツタイプ | アプリケーション/json | パラメータはJSONボディとして送信されます |
受け入れる | アプリケーション/json | JSON形式で返されます。テキスト/CSVを要求するとCSVが返されます。 |
curl -X POST "https://api.querystreams.com/v1/endpoints/8f2c4d1e-6b3a-4f7e-9c21-5d0a7b3e2f19" \ -H "X-API-Key: qsapi_YOUR_KEY" \ -H "Content-Type: application/json" \ -d '{"city": "Seattle"}'{
「列」: [ { "名前": "会社名", "タイプ": "整数" }, { "名前": "市", "タイプ": "弦" }, { "名前": "市", "タイプ": "弦" } ],
「行」: [
{ "会社名": 1042, "市": 「ノースウィンド・トレーダーズ」, "市": 「シアトル」 },
{ "会社名": 1057, "市": 「アルパイン・アウトフィッターズ」, "市": 「デンバー」 },
{ "会社名": 1063, "市": 「ハーバーフーズ」, "市": 「ハリファックス」 }
],
「メタ」: { 「行数」: 3, 「agent_duration_ms」: 41, 「リクエストID」: "req_7Hq2mKd9" }
}| ヘッダ | 価値 | 説明 |
|---|---|---|
コンテンツタイプ | application/json; charset=utf-8 | 本文タブの封筒 |
コンテンツの長さ | 412 | バイト数が返されました。上のサイズバッジ |
Microsoft Access holds your data in a file on a computer you control. Someone else wants a slice of it in their app, their dashboard or their script, and the usual answers all hand over too much: a database login that outlives the project, a nightly export that is stale by breakfast, or a small API server that somebody now has to run and patch. Query Streams makes the endpoint a saved query plus a key. The Agent that already reads your Access file runs the query, api.querystreams.com checks the key and the rate limit, and the caller gets rows. The SQL, the schema and the credentials never leave your account.
必要なもの
クエリストリームアカウント
すべてのプランにREST APIが含まれています。無料プランでは、エンドポイント1つ、キー2つ、呼び出しごとに250行まで利用できます。これはこのガイドを作成するのに十分です。サインアップはこちらから。 my.querystreams.com.
クエリビルダーに保存されたクエリ
エンドポイントは、保存されたクエリを正確に 1 つラップします。SELECT を記述し、一度実行して保存します。動的フィルタ ( 変数 呼び出し元がフィルタリングできるようにするためには、WHERE句で指定します。
エンドポイントを作成できるのは誰ですか? オーナー、管理者、クリエイター。 API トップバーにアイテムが表示されていません。管理者は、以下の手順でユーザーに対してアイテムを有効にできます。 アカウント → 権限エンドポイントを共有する相手は、どのプランでもQuery Streamsアカウントさえあれば問題ありません。
4つのステップで設定できます
-
クエリを保存します
で クエリビルダー Access接続を選択し、公開したいSELECT文を記述して一度実行し、行を確認してください。呼び出し元が必要とする列のみを指定してください。エンドポイントはクエリが返すものと全く同じ結果を返します。
保存されたクエリ · 顧客セレクト トップ 100 顧客ID、会社名、都市 フロム お客様 注文 による 会社名;
呼び出し元がフィルタリングできるようにする必要がある場合は、たとえば動的フィルタを追加します。
WHERE city = @city。 それぞれ変数ステップ3でAPIパラメータになります。 セーブ そしてクエリに名前を付けます。その名前がエンドポイントの表示名になります。 -
エンドポイントを作成します
開く API 上部のバーをクリックして 新しいエンドポイント魔法使いには4つのステップがあります。 クエリを選択する, 設定, パラメータをロックする そして シェア。 の上 クエリを選択する先ほど保存したクエリをクリックします。エージェントがオフラインのクエリはグレー表示されます。 次のページ.
ショートカット。 クエリビルダーから開いているクエリを直接表示できます。ウィザードは次の場所から始まります。 設定 既に選択されたクエリを使用しています。
-
パラメータを設定してロックする
の上 設定 デフォルト設定は最初のエンドポイントには適切です。 表示名 クエリから入力された、 寿命 永久(選択) 期限切れ (一時的なシェアの場合) 応答モード 静的(JSONレスポンス1つ、選択可能) ストリーミング配信 プランの静的行数上限を超える結果については、 内部フォーマット JSON。レスポンスモードとフォーマットは作成後に固定されるため、ここで決定してください。クリック 次のページ.
の上 パラメータをロックする クエリ内のすべての動的フィルターが一覧表示されます。呼び出し元が設定できるものはそのままにしておきます。 呼び出し可能 そしてそれぞれに クエリ文字列名; チェック 必須 呼び出し時にそれがなければ失敗する可能性がある。呼び出し元が変更してはならない値を固定する。 ロック済みまたは、次のようなデートのシナリオ 月初め. 隠れた クエリのデフォルト値を保持し、それを設定しようとする試みを拒否します。 次のページ.
-
シェアしてキーを手に入れよう
の上 シェア 招待できます 人々 メールで、または追加 サービスキー サーバーまたは自動化ツールを選択するか、両方とも今はスキップしてください。 キーを作成して取得する成功画面にはエンドポイント URL とキーが表示されます。キーは 49 文字の文字列で、
qsapi_コピーしてください。後でエンドポイントから再度表示できます。 共有 タブとして保存されるため、画面を閉じても失われることはありません。クリック 送信 コンソールで、ポータル自体から最初の呼び出しを行います。応答ペインには、 ステータス, 時間 そして サイズ、 体 タブには JSON が表示され、呼び出しは 活動 数秒後にタブキーを押す。
それでおしまい。 これで、Accessファイルは、あなたが渡したキーに対して、読み取り専用のURLで応答するようになりました。何もインストールされず、ポートも開かれず、SQLはあなたのアカウント内に保持されます。
どこからでも電話できます
コンソールのURLバーからエンドポイントIDを自分のものに置き換えて、 qsapi_YOUR_KEY キーを使用して。呼び出し可能なパラメータはGETのクエリ文字列に含まれます。ここでは保存されたクエリが公開されます。 市:
curl "https://api.querystreams.com/v1/endpoints/8f2c4d1e-6b3a-4f7e-9c21-5d0a7b3e2f19?city=Seattle" \ -H "X-API-Key: qsapi_YOUR_KEY"
{
「列」: [ { "名前": "会社名", "タイプ": "整数" }, { "名前": "市", "タイプ": "弦" }, { "名前": "市", "タイプ": "弦" } ],
「行」: [
{ "会社名": 1042, "市": 「ノースウィンド・トレーダーズ」, "市": 「シアトル」 },
{ "会社名": 1057, "市": 「アルパイン・アウトフィッターズ」, "市": 「デンバー」 },
{ "会社名": 1063, "市": 「ハーバーフーズ」, "市": 「ハリファックス」 }
],
「メタ」: { 「行数」: 3, 「agent_duration_ms」: 41, 「リクエストID」: "req_7Hq2mKd9" }
}行は列名をキーとするオブジェクトとして返され、列リストと メタ 行数、結果が切り捨てられたかどうか、およびサポートのために引用できるリクエスト ID を示すブロック。POST と同じ呼び出しでパラメータが JSON ボディに格納されます。これは、長い値のリストに適した方法です。
curl -X POST "https://api.querystreams.com/v1/endpoints/8f2c4d1e-6b3a-4f7e-9c21-5d0a7b3e2f19" \ -H "X-API-Key: qsapi_YOUR_KEY" \ -H "Content-Type: application/json" \ -d '{"params": {"city": "Seattle"}}'?format=csv- JSONではなくCSV形式で、ヘッダー行も含まれます。
受け入れ可能な形式: text/csvも同様です。ストリーミングエンドポイントは、最終的な NDJSON (1 行に 1 つの JSON オブジェクト) を返します。{"_summary": true, "row_count": N}行; 最後の行を確認してください。 ?sample=true- 最大5行まで、課金対象外。顧客への配線に最適です。
?圧縮=lz4- デコーダーを備えた大音量発信者向けのLZ4フレームボディ。 コード タブには言語ごとのデコーダーのスニペットがあります。通常のgzipは、クライアントが送信するときに自動的に行われます。
Accept-Encoding: gzip. 認証: Bearer qsapi_…- 別名として受け入れられた
X-APIキーブラウザのコードから使用します。
プラグを差し込む場所
ExcelとPower BI
エクスポート → Power Query M (.pq) すぐに使えるクエリが提供されます。それを詳細エディター(Excel:データ → データの取得 → 他のソースから → 空白のクエリ、Power BI:ホーム → データの変換 → 新しいソース → 空白のクエリ)に貼り付け、プレースホルダーを置き換えます。 qsapi_ 鍵。
郵便配達人、不眠症、ホップスコッチ
同じ 輸出 メニューは、Postman v2.1 コレクション、Insomnia v5 エクスポート、またはパラメーターが入力され、キーのプレースホルダーが設定された Hoppscotch コレクションをダウンロードします。
あなた自身のコード
の コード このタブには、cURL、Python、JavaScript、TypeScript、Java、C#、Go、PHP、PowerShell、Rubyの動作サンプルが含まれています。 エクスポート → OpenAPI 3.1仕様 あらゆるクライアントジェネレーターまたはSwagger UIにデータを提供します。
n8n、Zapier、Make、cron
作成する サービスキー ツールを実行するには、URLとキーをHTTPノードに貼り付けてスケジュール設定してください。各ツールにはそれぞれ固有のキーが割り当てられるため、他のツールに影響を与えることなく、1つのツールのキーを無効にすることができます。
計画で許可されている内容
| プラン | エンドポイント | エンドポイントごとのキー | エンドポイントあたりの人数 | 呼び出しごとの行数(静的) | 1回の呼び出しあたりの行数(ストリーミング) | 1分あたりの通話数、キーあたりの通話数 |
|---|---|---|---|---|---|---|
| 無料 | 1 | 2 | 1 | 250 | 250 | 3 |
| 個人的な核心 | 2 | 3 | 2 | 5,000 | 250,000 | 15 |
| パーソナルプラス | 5 | 5 | 5 | 10,000 | 500,000 | 30 |
| ビジネスコア | 5 | 10 | 10 | 50,000 | 1,000,000 | 300 |
| ビジネスプラス | 10 | 20 | 25 | 100,000 | 5,000,000 | 600 |
| ビジネスマックス | 25 | 30 | 50 | 250,000 | 10,000,000 | 600 |
| エンタープライズコア | 50 | 50 | 100 | 500,000 | 25,000,000 | 1,000 |
| エンタープライズプラス | 100 | 100 | 250 | 1,000,000 | 50,000,000 | 1,000 |
| エンタープライズマックス | 250 | 200 | 500 | 2,500,000 | 100,000,000 | 1,500 |
すべての呼び出しには、60秒の固定クエリタイムアウトと8MiBの応答上限が設定されており、返されるバイト数は、ExcelやGoogleスプレッドシートのアドインと同じ、プランの月間データ許容量にカウントされます。無料プランではエンドポイントが1つ、月間5MBまで利用できますが、これは1日に何度も呼び出される小さなテーブルであれば十分対応できます。 価格ページをご覧ください プランごとの手当について。
無料とは、あなたが守り続けるプランのことです。 これは期限付きのトライアルではありません。その内容については、 価格ページ.
安全に保つ
SQLはあなたのものです
呼び出し側は行データを受け取ります。クエリ、テーブル名、接続の詳細を見ることはなく、エンドポイントが実行する処理を変更することもできません。
鍵は1つ、エンドポイントは1つ、呼び出し元も1つ。
1つのキーは、正確に1つのエンドポイントに対してのみ有効です。各ユーザーまたはツールにそれぞれ専用のキーを割り当てれば、すべての呼び出しがそのキーに関連付けられてログに記録されます。いずれかのキーを失効させても、他のキーは引き続き機能します。失効は約5分以内に反映されます。
読み取り専用、壁の向こう側
エージェントは、保存されたSELECT文のみを、ネットワーク内部から独自の外部接続経由で実行します。ポートを開放する必要も、インターネット上に認証情報を送信する必要もありません。
台帳に記録されたすべての通話
の 活動 タブには、拒否されたものも含め、時間、受信者、ステータス、行数、バイト数、期間の各呼び出しが表示されます。 期限切れ 一時的な共有の有効期間と、エンドポイントが指定された日付に自動的にオフになる期間。
何かがうまくいかないとき
| ステータス | コード | 何をするか |
|---|---|---|
| 401 | APIキー必須 / APIキー無効 | ヘッダーが欠落しているか、キーが間違っています。送信 X-API-Key: qsapi_…49文字すべてです。キーはエンドポイントの「共有」タブから再度コピーできます。 |
| 403 | API_KEY_ENDPOINT_MISMATCH | 別のエンドポイントで使用されている有効なキー。各キーは1つのエンドポイントに属します。 |
| 403 | APIキーが取り消されました / APIエンドポイントの有効期限が切れました | キーが失効したか、エンドポイントの有効期限が切れました。新しいキーを作成するか、エンドポイントを復元してください。 |
| 400 | API_PARAM_NOT_OVERRIDABLE | 送信されたパラメータは、所有者が呼び出し可能としてマークしていません。本文には、許可されている名前が一覧表示されています。 |
| 414 | APIクエリが大きすぎます | GETクエリ文字列は8KB、または200個のリスト値を渡しました。同じパラメータをPOST JSONボディとして送信してください。 |
| 413 | API_出力サイズが大きすぎます | 結果が8MiBの上限を超えました。クエリを絞り込むか、エンドポイントをストリーミングに切り替えてください。 |
| 429 | API_RATE_LIMITED | キーまたはエンドポイントへの呼び出しが今この瞬間多すぎます。 再試行後 秒、または上げる レート制限 API設定 → プラン内のデフォルト設定をご覧ください。 |
| 429 | API_DATA_REALM_EXHAUSTED | 所有者の月間データ容量を使い切りました。データ容量は請求月ごとにリセットされます。容量を増やすにはアップグレードしてください。 |
| 503 | APIエージェントが接続されていません | お使いのAccessファイルの背後にあるエージェントがオフラインになっています。データ → データエージェントで確認してください。再接続され次第、呼び出しは再び正常に実行されます。 |
| 504 | APIクエリタイムアウト | クエリの実行に60秒以上かかりました。フィルタまたはインデックスを追加するか、より絞り込んだクエリを保存してください。 |
すべてのエラーボディは、 {"error": {"code": "…", "message": "…"}} そしてすべての反応には X-QSリクエストID ヘッダー。サポートに問い合わせる際は、IDを引用してください。
人々が尋ねる質問
私のデータはクエリストリームにコピーされますか?
いいえ。エージェントはデータが存在する場所でクエリを実行し、呼び出しで要求された行のみを送信します。その間に同期やキャッシュは行われず、呼び出しごとにクエリが実行されます。
呼び出し側はSQLを変更したり、他のテーブルを要求したりできますか?
いいえ。エンドポイントは保存されたクエリを1つ実行します。呼び出し元は、マークしたパラメーターのみを設定できます。 呼び出し可能、そして値は安全にバインドされます。テキストは引用符で囲まれ、エスケープされ、数値は範囲チェックされ、リストは展開されます。
これをパートナーに渡すにはどうすればいいですか?
エンドポイントの 共有 タブを選択 人々 そして、メールアドレスを入力します。魔法のリンクが送られてくるので、そのアドレスでサインインし(無料アカウントでも構いません)、独自のキーを作成します。アクティビティ タブで、その通話が名前で表示されます。サーバーまたは自動化ツールの場合は、 APIキー 代わりにラベルを付ける。
保存済みのクエリを編集するとどうなりますか?
エンドポイントは次の呼び出しで新しい SQL を実行し、その OpenAPI 仕様が再生成されます。URL とキーは変更されません。フィルタを追加または削除した場合は、 パラメータをロックする 発信者は正しいパラメータを確認できる。
無料プランで本当にこれがカバーされるのですか?
はい。無料プランは、期限切れの試用版ではなく、継続して利用できるプランです。1つのエンドポイント、2つのキー、1回の呼び出しにつき250行が含まれます。含まれる内容の詳細は、 価格ページ.
エンドポイントはAccessのSQL方言に対応していますか?
はい、なぜならそのSQLはあなたが作成したものだからです。クエリビルダーでAccessファイルに対してSQL文を作成して実行したのですから。エンドポイントは、Accessが想定する形式でパラメータ値をバインドし、同じ接続を通してそのSQL文をそのまま実行します。
Accessファイルはインターネットからアクセスできる必要がありますか?
いいえ。エージェントがネットワーク内部からアクセスするだけで済みます。エージェントはQuery Streamsに対して1回の外部接続を行います。呼び出し元はapi.querystreams.comと通信し、お客様のコンピュータと通信することはありません。
関連ガイド
すべてのガイド Access
Setup trouble?
- Access engine will not install, the file is on a mapped drive, or Test connection fails? The Access setup page walks each fix click by click → Microsoft Access connector setup
- Agent shows Offline, or Test connection and Browse are greyed out? Check that the Agent is online → Is the Agent online?

