カテゴリ:

システム関数 (システム制御)

SYSTEM$CREATE_BILLING_EVENT

インストールされた収益化アプリケーションのコンシューマーの使用状況を追跡する 請求対象イベント を作成します。このシステム関数の1分間に1イベントの頻度制限を超える必要がある場合は、 SYSTEM$CREATE_BILLING_EVENTS を使用します。このシステム関数は、コンシューマーアカウントにインストールされたアプリケーションからのみ呼び出すことができます。

構文

SYSTEM$CREATE_BILLING_EVENT(
 '<class>',
 '<subclass>',
 <start_timestamp>,
 <timestamp>,
 <base_charge>,
 '<objects>',
 '<additional_info>'
 )
Copy

引数

必須:

'class'

カスタムイベントクラスの識別子。

型: STRING

識別子には以下の要件があります。

  • 文字(A~Z)またはアンダースコア("_")で始める必要がある。

  • 文字、アンダースコア、10進数(0~9)、およびドル記号("$")のみが含まれている必要がある。

  • 長さは64文字以下にする必要がある。

  • SNOWFLAKE_ で始めることはできない。 SNOWFLAKE_ 内部識別子用に予約されています。

クラス名は大文字で格納され、解決されます。クラス名の比較では、大文字と小文字は区別されません。

timestamp

イベントが作成されたタイムスタンプ(UTC)をUnixタイムスタンプとしてミリ秒単位で指定します。

型: 整数

base_charge

請求対象イベントで課金する金額を US ドルで指定します。値は0より大きく、99,999.99より小さくし、小数点以下2桁の精度を超えないようにする必要があります。例: 1.00 または 0.07

型: DOUBLE

オプション:

'subclass'

カスタムイベントのサブクラスの識別子。このフィールドはプロバイダーのみが使用します。

型: STRING

識別子には、 class 引数と同じ命名要件があります。

start_timestamp

イベントの開始時刻(UTC)をUnixタイムスタンプとしてミリ秒単位で指定します。

型: INTEGER

プロバイダーが時間範囲に基づいてイベントを発行する場合、開始時間を設定するために使用します。それ以外の場合は、 TIMESTAMP 引数に使用される値と同じ値を設定します。

'objects'

このイベントに適用される完全修飾オブジェクト名を含む JSON 文字列配列。

型: STRING

最大サイズは4 KB です。

'additional_info'

プロバイダーが追加情報を送信するために使用できるキーと値のペアの JSON 文字列。

型: STRING

最大サイズは4 KB です。

戻り値

この関数は以下のステータスメッセージを返します。

ステータスメッセージ

説明

Success

請求対象イベントが正常に作成されたことを示します。

Invalid parameter: <PARAM_NAME>.

関数にサポートされていないパラメーターが渡されたことを示します。

Only callable from within an application.

この関数がアプリケーションの外部から呼び出されたことを示します。

Payload length exceeds the limit of 9000 characters.

関数の呼び出しが文字数制限を超えたことを示します。

Too many calls.10ミリ秒ウィンドウごとに最大1コールまで使用できます。

特定の期間内で、アプリケーションがこのシステム関数を過剰に呼び出したことを示します。

使用上の注意

このシステム関数は、 Snowflake Native App Framework を使用して作成されたアプリケーションのセットアップスクリプト内にあるストアドプロシージャからのみ呼び出すことができます。

請求対象イベントの例 をご参照ください。