Snowpipe ストリーミング API REST エンドポイント¶
以下のリクエストヘッダーは、Snowpipe ストリーミング REST API のすべてのエンドポイントに適用されます。
ヘッダー |
説明 |
---|---|
|
認証トークン |
|
JWT/OAuth |
ホスト名の取得¶
Get Hostname
は Snowpipe ストリーミング REST API とのやりとりに使用するホスト名を返します。各アカウントは固有のホスト名を持っています。
GET /v2/streaming/hostname
応答:
フィールド |
型 |
説明 |
---|---|---|
status_code |
int |
内部エラーと公開ドキュメントのマッピングに使用できるステータスコード。 |
message |
string |
レスポンスコードが200(成功)でない場合のエラーを説明する説明的なエラーメッセージ。そうでなければ、レスポンスコード200の場合は空です。 |
hostname |
string |
アカウントの行セットホスト名。 |
取引所行セット・スコープ・トークン¶
Exchange Rowset Scoped Token
は、Snowpipe ストリーミング API 関連のサービスのみにアクセスするために使用できるセキュリティトークンを返します。これは顧客にセキュリティ保護を提供します。
POST /oauth/token
要求:
属性 |
必須 |
コンポーネント |
説明 |
---|---|---|---|
content_type |
有り |
ヘッダー |
"application/x-www-form-urlencoded" |
grant_type |
有り |
payload |
|
scope |
有り |
payload |
アカウントの行セット ホスト名。 |
応答:
フィールド |
型 |
説明 |
---|---|---|
status_code |
int |
内部エラーと公開ドキュメントのマッピングに使用できるステータスコード。 |
message |
string |
レスポンスコードが200(成功)でない場合のエラーを説明する説明的なエラーメッセージ。そうでなければ、レスポンスコード200の場合は空です。 |
token |
string |
行セット・スコープ・トークン。 |
オープンチャンネル¶
Open Channel
オペレーションは、パイプまたはテーブルに対して新しいチャンネルを作成またはオープンします。チャンネルが既に存在する場合、Snowflakeはそのチャンネルのクライアントシーケンサをバンプし、最後にコミットされたオフセットトークンを返します。
PUT /v2/streaming/databases/{databaseName}/schemas/{schemaName}/pipes/{pipeName}/channels/{channelName}
要求:
属性 |
必須 |
コンポーネント |
説明 |
---|---|---|---|
databaseName |
有り |
URI |
大文字と小文字を区別しないデータベース名 |
schemaName |
有り |
URI |
大文字と小文字を区別しないスキーマ名 |
pipeName |
有り |
URI |
大文字と小文字を区別しないパイプ名 |
channelName |
有り |
URI |
大文字と小文字を区別しない、作成または再開するチャンネル名。 |
offset_token |
無し |
payload |
チャンネルをオープンする際にオフセットトークンをセットするための文字列。 |
requestId |
無し |
クエリパラメーター |
システムを通してリクエストを追跡するために使用される UUID |
応答:
フィールド |
型 |
説明 |
---|---|---|
channel_status_code |
String |
チャンネルのステータスを示します。 |
last_committed_offset_token |
String |
最新のコミット オフセット トークン |
database_name |
String |
チャンネルが属するデータベース名。 |
schema_name |
String |
チャンネルが属するスキーマ名。 |
pipe_name |
String |
チャンネルが属するパイプ名。 |
channel_name |
String |
チャンネル名。 |
rows_inserted |
int |
このチャンネルに挿入されたすべての行の数。 |
rows_parsed |
int |
このチャンネルに挿入されるとは限らないが、パースされたすべての行の数。 |
rows_errors |
int |
このチャンネルへの挿入時にエラーが発生し、拒否された行の数。 |
last_error_offset_upper_bound |
String |
エラーに最後に対応する挿入行セットの最新のオフセットトークンの上限。最後にエラーが発生した行セットの実オフセット・トークンは、このオフセット・トークンか、またはチャンネル取り込み順で厳密にその前のオフセット・トークンのいずれかです。 |
last_error_message |
String |
そのチャンネルの最新のエラーコードに対応する人間が読めるメッセージで、機密性の高い顧客データは編集されています。 |
last_error_timestamp |
timestamp_utc |
最後にエラーが発生したタイムスタンプ。 |
snowflake_avg_processing_latency_ms |
int |
このチャンネルの平均e2e処理時間。 |
行の追加¶
Append Rows
の演算子は、指定されたチャンネルにバッチで行を挿入します。
POST /v2/streaming/data/databases/{databaseName}/schemas/{schemaName}/pipes/{pipeName}/channels/{channelName}/rows
要求:
属性 |
必須 |
コンポーネント |
説明 |
---|---|---|---|
databaseName |
有り |
URI |
大文字と小文字を区別しないデータベース名 |
schemaName |
有り |
URI |
大文字と小文字を区別しないスキーマ名 |
pipeName |
有り |
URI |
大文字と小文字を区別しないパイプ |
channelName |
有り |
URI |
大文字と小文字を区別しないチャンネル名 |
continuationToken |
ステートフルクライアントの場合は必要ですが、ステートレスクライアントの場合は不要です。 |
クエリパラメーター |
Snowflakeからの継続トークン、クライアントと行シーケンサーの両方をカプセル化 |
offsetToken |
無し |
クエリパラメーター |
バッチごとにオフセットトークンをセットするために使用される文字列。 |
rows |
有り |
payload |
NDJSON 形式でインジェストされる実際のデータペイロード。 |
requestId |
無し |
クエリパラメーター |
UUID システムを通してリクエストを追跡するために使用されます。 |
応答:
フィールド |
型 |
説明 |
---|---|---|
status_code |
int |
内部エラーと公開ドキュメントをマッピングするために顧客が使用できるステータスコード |
next_continuation_token |
string |
クライアントシーケンサーと行シーケンサーの両方をカプセル化したSnowflakeの次の継続トークンです。次のバッチを挿入するために使用する必要があります。 |
message |
string |
レスポンスコードが200(成功)でない場合のエラーを説明する説明的なエラーメッセージ。そうでなければ、レスポンスコード200の場合は空です。 |
ドロップチャンネル¶
Drop Channel
オペレーションは、メタデータとともにサーバー側にチャンネルをドロップします。
DELETE /v2/streaming/databases/{databaseName}/schemas/{schemaName}/pipes/{pipeName}/channels/{channelName}
要求:
属性 |
必須 |
コンポーネント |
説明 |
---|---|---|---|
databaseName |
有り |
URI |
大文字と小文字を区別しないデータベース名 |
schemaName |
有り |
URI |
大文字と小文字を区別しないスキーマ名 |
pipeOrTableName |
有り |
URI |
大文字と小文字を区別しないパイプ名またはテーブル名 |
channelName |
有り |
URI |
大文字と小文字を区別しないチャンネル名 |
continuationToken |
無し |
payload |
クライアントシーケンサと行シーケンサの両方をカプセル化したSnowflakeの継続トークン。もしプロバイダーがなければ、最新のクライアント・シーケンサーでチャンネルを削除します。 |
requestId |
無し |
クエリパラメーター |
システムを通してリクエストを追跡するために使用される UUID |
応答:
フィールド |
型 |
説明 |
---|---|---|
status_code |
int |
内部エラーと公開ドキュメントをマッピングするために顧客が使用できるステータスコード |
message |
string |
レスポンスコードが200(成功)でない場合のエラーを説明する説明的なエラーメッセージ。そうでなければ、レスポンスコード200の場合は空です。 |
チャンネルステータスの一括取得¶
Bulk Get Channel Status
オペレーションは、特定のクライアント・シーケンサーのチャンネルのステータスを返します。
POST /v2/streaming/databases/{databaseName}/schemas/{schemaName}/pipes/{pipeName}:bulk-channel-status
要求:
属性 |
必須 |
コンポーネント |
説明 |
---|---|---|---|
databaseName |
有り |
URI |
大文字と小文字を区別しないデータベース名 |
schemaName |
有り |
URI |
大文字と小文字を区別しないスキーマ名 |
pipeName |
有り |
URI |
大文字と小文字を区別しないパイプ名 |
channelName |
有り |
ペイロード |
顧客がステータスを取得したい文字列チャンネル名の配列 (大文字と小文字は区別されます)。 |
応答:
フィールド |
型 |
説明 |
---|---|---|
channel_status_code |
String |
チャンネルのステータスを示します。 |
last_committed_offset_token |
String |
最新のコミット オフセット トークン |
database_name |
String |
チャンネルが属するデータベース名。 |
schema_name |
String |
チャンネルが属するスキーマ名。 |
pipe_name |
String |
チャンネルが属するパイプ名。 |
channel_name |
String |
チャンネル名。 |
rows_inserted |
int |
このチャンネルに挿入されたすべての行の数。 |
rows_parsed |
int |
このチャンネルに挿入されるとは限らないが、パースされたすべての行の数。 |
rows_errors |
int |
このチャンネルへの挿入時にエラーが発生し、拒否された行の数。 |
last_error_offset_upper_bound |
String |
エラーに最後に対応する挿入行セットの最新のオフセットトークンの上限。最後にエラーが発生した行セットの実オフセット・トークンは、このオフセット・トークンか、またはチャンネル取り込み順で厳密にその前のオフセット・トークンのいずれかです。 |
last_error_message |
String |
そのチャンネルの最新のエラーコードに対応する人間が読めるメッセージで、機密性の高い顧客データは編集されています。 |
last_error_timestamp |
timestamp_utc |
最後にエラーが発生したタイムスタンプ。 |
snowflake_avg_processing_latency_ms |
int |
このチャンネルの平均e2e処理時間。 |