このセクションでは、Blocklet Server上のネットワーキングとサービスに関連するすべてのGraphQLクエリの詳細なリファレンスを提供します。これらのメソッドを使用すると、ルーティング、ドメイン、証明書、Webhook、および通知のデータと設定を取得できます。これらの設定を変更する操作については、ネットワーキングとサービスのミューテーションセクションを参照してください。
通知
通知を管理および取得するためのクエリ。
getNotifications
指定されたフィルターに基づいて通知のリストを取得します。
パラメータ
- input
RequestGetNotificationsInput(required) — フィルター基準を含むオブジェクト。- receiver
string— 通知受信者のDIDでフィルターします。 - sender
string— 通知送信者のDIDでフィルターします。 - read
boolean— 既読ステータスでフィルターします。 - paging
PagingInput— ページネーションオプション。 - teamDid
string— チーム/blockletのDID。 - severity
string[]— 重要度レベル(例: 'info'、'error')でフィルターします。 - componentDid
string[]— コンポーネントDIDでフィルターします。 - entityId
string[]— エンティティIDでフィルターします。 - source
string[]— ソース(例: 'system'、'component')でフィルターします。
- receiver
戻り値
通知のリストとページネーション詳細を含むResponseGetNotificationsオブジェクトに解決されるPromiseを返します。
リクエスト例
getNotifications Example
import BlockletServerClient from '@blocklet/server-js';
const client = new BlockletServerClient();
async function fetchUnreadNotifications() {
try {
const response = await client.getNotifications({
input: {
read: false,
paging: { pageSize: 10, page: 1 },
},
});
console.log('Unread notifications:', response.list);
console.log('Unread count:', response.unreadCount);
} catch (error) {
console.error('Error fetching notifications:', error);
}
}
fetchUnreadNotifications();レスポンス例
Response
{
"code": "ok",
"list": [
{
"id": "...",
"title": "New Update Available",
"description": "A new version of your blocklet is ready to be installed.",
"read": false,
"createdAt": 1678886400
}
],
"paging": {
"total": 5,
"pageSize": 10,
"pageCount": 1,
"page": 1
},
"unreadCount": 5
}makeAllNotificationsAsRead
指定された基準に一致するすべての通知を既読としてマークします。
パラメータ
- input
RequestMakeAllNotificationsAsReadInput(required) — 既読としてマークする通知のフィルター基準を含むオブジェクト。- receiver
string(required) — 通知受信者のDID。 - teamDid
string— チーム/blockletのDID。 - severity
string— (任意)特定の重要度レベルでフィルターします。 - componentDid
string— (任意)特定のコンポーネントDIDでフィルターします。 - entityId
string— (任意)特定のエンティティIDでフィルターします。 - source
string— (任意)特定のソースでフィルターします。
- receiver
戻り値
影響を受けた通知の数を示すResponseMakeAllNotificationsAsReadオブジェクトに解決されるPromiseを返します。
リクエスト例
makeAllNotificationsAsRead Example
import BlockletServerClient from '@blocklet/server-js';
const client = new BlockletServerClient();
async function markAllAsRead() {
try {
const response = await client.makeAllNotificationsAsRead({
input: { receiver: 'z8iZ...aYp' },
});
console.log(`Marked ${response.data.numAffected} notifications as read.`);
} catch (error) {
console.error('Error marking notifications as read:', error);
}
}
markAllAsRead();レスポンス例
Response
{
"code": "ok",
"data": {
"numAffected": 5,
"notificationIds": ["...", "..."]
}
}getNotificationSendLog
通知の送信ログを取得し、さまざまなチャネルでの配信ステータスを追跡できます。
パラメータ
- input
RequestNotificationSendLogInput(required) — 送信ログのフィルター基準を含むオブジェクト。- teamDid
string(required) — チーム/blockletのDID。 - dateRange
string[]— 特定の日付範囲内のログをフィルターします(例: ['2023-01-01', '2023-01-31'])。 - paging
PagingInput— ページネーションオプション。 - source
string— 通知ソースでフィルターします。 - componentDids
string[]— コンポーネントDIDの配列でフィルターします。 - severities
string[]— 重要度レベルの配列でフィルターします。
- teamDid
戻り値
通知ログのリストとページネーション詳細を含むResponseNotificationSendLogオブジェクトに解決されるPromiseを返します。
getReceivers
さまざまなフィルター基準(異なるチャネルでの送信ステータスなど)に基づいて通知受信者のリストを取得します。
パラメータ
- input
RequestReceiversInput(required) — 受信者のフィルター基準を含むオブジェクト。- teamDid
string(required) — チーム/blockletのDID。 - notificationId
string— 特定の通知の受信者をフィルターします。 - userName
string— 受信者を名前で検索します。 - userDid
string— 特定のユーザーDIDでフィルターします。 - walletSendStatus
number[]— ウォレット送信ステータスコードでフィルターします。 - pushKitSendStatus
number[]— プッシュ通知送信ステータスコードでフィルターします。 - emailSendStatus
number[]— Eメール送信ステータスコードでフィルターします。 - dateRange
string[]— 特定の日付範囲内の受信者をフィルターします。 - paging
PagingInput— ページネーションオプション。
- teamDid
戻り値
受信者のリストとページネーション詳細を含むResponseReceiversオブジェクトに解決されるPromiseを返します。
getNotificationComponents
通知を送信したコンポーネントDIDのリストを取得します。
パラメータ
- input
RequestNotificationComponentsInput(required) — フィルター基準を含むオブジェクト。- teamDid
string(required) — チーム/blockletのDID。 - receiver
string— 通知受信者のDIDでフィルターします。
- teamDid
戻り値
コンポーネントDIDの配列を含むResponseNotificationComponentsオブジェクトに解決されるPromiseを返します。
resendNotification
指定された受信者とチャネルに特定の通知の再送信をトリガーします。
パラメータ
- input
RequestResendNotificationInput(required) — 再送信操作の詳細を含むオブジェクト。- teamDid
string(required) — チーム/blockletのDID。 - notificationId
string(required) — 再送信する通知のID。 - receivers
string[]— 通知を再送信するユーザーDIDのリスト。 - channels
string[]— 再送信に使用するチャネルのリスト(例: 'wallet'、'email')。 - webhookUrls
string[]— 再送信先の特定のWebhook URLのリスト。 - resendFailedOnly
boolean— trueの場合、以前に通知の受信に失敗した受信者にのみ再送信します。
- teamDid
戻り値
ResponseResendNotificationオブジェクトに解決されるPromiseを返します。
ルーティングとドメイン
ルーティングルールとドメイン設定を管理するためのクエリ。
getRoutingSites
設定されているすべてのルーティングサイトのリストを取得します。
パラメータ
- input
RequestGetRoutingSitesInput— フィルター基準を含むオブジェクト。- snapshotHash
string— (任意)指定された場合、特定の履歴スナップショットからルーティングサイトを取得します。
- snapshotHash
戻り値
RoutingSiteオブジェクトの配列を含むResponseGetRoutingSitesオブジェクトに解決されるPromiseを返します。
リクエスト例
getRoutingSites Example
import BlockletServerClient from '@blocklet/server-js';
const client = new BlockletServerClient();
async function fetchRoutingSites() {
try {
const response = await client.getRoutingSites();
console.log('Routing sites:', response.sites);
} catch (error) {
console.error('Error fetching routing sites:', error);
}
}
fetchRoutingSites();レスポンス例
Response
{
"code": "ok",
"sites": [
{
"id": "...",
"domain": "example.com",
"domainAliases": [{"value": "www.example.com"}],
"rules": [/* ... */]
}
]
}getRoutingSnapshots
ルーティング設定の履歴スナップショットのリストを取得します。
パラメータ
- input
RequestGetRoutingSnapshotsInput— フィルター基準を含むオブジェクト。- limit
number— 返すスナップショットの最大数。
- limit
戻り値
RoutingSnapshotオブジェクトの配列を含むResponseGetRoutingSnapshotsオブジェクトに解決されるPromiseを返します。
getSnapshotSites
特定のスナップショットハッシュからルーティングサイトを取得します。
パラメータ
- input
RequestGetSnapshotSitesInput(required) — スナップショットハッシュを含むオブジェクト。- hash
string(required) — 取得するスナップショットのハッシュ。
- hash
戻り値
そのスナップショットからのRoutingSiteオブジェクトの配列を含むResponseGetSnapshotSitesオブジェクトに解決されるPromiseを返します。
getRoutingProviders
利用可能なルーティングプロバイダー(例: Nginx)のリストとその現在のステータスを取得します。
戻り値
RoutingProviderオブジェクトの配列を含むResponseGetRoutingProvidersオブジェクトに解決されるPromiseを返します。
isDidDomain
指定されたドメインがDIDベースのドメインであるかを確認します。
パラメータ
- input
RequestIsDidDomainInput(required)- domain
string(required) — 確認するドメイン。
- domain
戻り値
結果を示すブール値valueを持つResponseIsDidDomainオブジェクトに解決されるPromiseを返します。
getDomainDNS
指定されたドメインのDNS解決ステータスを確認し、それがBlocklet Serverに正しくポイントされているかを検証します。
パラメータ
- input
RequestDomainDNSInput(required)- teamDid
string(required) — ドメインに関連付けられたチーム/blockletのDID。 - domain
string(required) — 確認するドメイン。
- teamDid
戻り値
DNSステータスの詳細を示すResponseDomainDNSオブジェクトに解決されるPromiseを返します。
証明書
SSL/TLS証明書を管理するためのクエリ。
getCertificates
ノードにインストールされているすべてのSSL証明書を取得します。
戻り値
Certificateオブジェクトの配列を含むResponseGetCertificatesオブジェクトに解決されるPromiseを返します。
リクエスト例
getCertificates Example
import BlockletServerClient from '@blocklet/server-js';
const client = new BlockletServerClient();
async function listCertificates() {
try {
const response = await client.getCertificates();
console.log('Installed certificates:', response.certificates);
} catch (error) {
console.error('Error fetching certificates:', error);
}
}
listCertificates();レスポンス例
Response
{
"code": "ok",
"certificates": [
{
"id": "...",
"name": "example.com-cert",
"domain": "example.com",
"source": "letsencrypt",
"status": "valid"
}
]
}findCertificateByDomain
関連付けられたドメイン名で特定の証明書を検索します。
パラメータ
- input
RequestFindCertificateByDomainInput(required)- domain
string(required) — 証明書に関連付けられたドメイン名。 - did
string— (任意)検索範囲を絞り込むためのblockletのDID。
- domain
戻り値
見つかった場合にCertificateを含むResponseFindCertificateByDomainオブジェクトに解決されるPromiseを返します。
checkDomains
複数のドメインのステータスと有効性を一度に確認します。証明書を発行する前によく使用されます。
パラメータ
- input
RequestCheckDomainsInput(required)- domains
string[](required) — 確認するドメイン名の配列。 - did
string— (任意)blockletのDID。
- domains
戻り値
チェックのステータスを示すResponseCheckDomainsオブジェクトに解決されるPromiseを返します。
Webhook
Webhookとその送信者を管理するためのクエリ。
getWebHooks
設定されているすべてのWebhookのリストを取得します。
戻り値
WebHookオブジェクトの配列を含むResponseWebHooksオブジェクトに解決されるPromiseを返します。
リクエスト例
getWebHooks Example
import BlockletServerClient from '@blocklet/server-js';
const client = new BlockletServerClient();
async function listWebhooks() {
try {
const response = await client.getWebHooks();
console.log('Configured webhooks:', response.webhooks);
} catch (error) {
console.error('Error fetching webhooks:', error);
}
}
listWebhooks();レスポンス例
Response
{
"code": "ok",
"webhooks": [
{
"id": "...",
"type": "slack",
"params": [{"name": "url", "value": "https://hooks.slack.com/..."}]
}
]
}getWebhookSenders
利用可能なWebhook送信者タイプ(例: Slack、API)とその必須パラメータのリストを取得します。
戻り値
WebHookSenderオブジェクトの配列を含むResponseSenderListオブジェクトに解決されるPromiseを返します。
sendTestMessage
指定されたWebhookにテストメッセージを送信して、その設定を検証します。
パラメータ
- input
RequestSendMsgInput(required)- webhookId
string(required) — テストするWebhookのID。 - message
string(required) — テストメッセージの内容。
- webhookId
戻り値
操作の結果を示すResponseSendMsgオブジェクトに解決されるPromiseを返します。
getWebhookEndpoints
設定されたWebhookエンドポイントのページ分割されたリストを取得します。
パラメータ
- input
RequestGetWebhookEndpointsInput(required)- teamDid
string(required) — チーム/blockletのDID。 - paging
PagingInput— ページネーションオプション。
- teamDid
戻り値
ResponseGetWebhookEndpointsオブジェクトに解決されるPromiseを返します。
getWebhookEndpoint
IDで単一のWebhookエンドポイントを取得します。
パラメータ
- input
RequestGetWebhookEndpointInput(required)- teamDid
string(required) — チーム/blockletのDID。 - id
string(required) — WebhookエンドポイントのID。
- teamDid
戻り値
ResponseGetWebhookEndpointオブジェクトに解決されるPromiseを返します。
getWebhookAttempts
特定のWebhookイベントの配信試行履歴を取得します。
パラメータ
- input
RequestGetWebhookAttemptsInput(required)- teamDid
string(required) — チーム/blockletのDID。 - input
RequestAttemptIdInput(required) — eventIdとwebhookIdを含むオブジェクト。- eventId
string(required) — イベントのID。 - webhookId
string(required) — WebhookのID。
- eventId
- paging
PagingInput— ページネーションオプション。
- teamDid
戻り値
ResponseGetWebhookAttemptsオブジェクトに解決されるPromiseを返します。
これで、ネットワーキングとサービスを管理するためのクエリのレビューは完了です。バックアップ、ログ、分析に関連するデータの取得方法については、データと操作セクションに進んでください。