hosting
POST /v1/bulk-jobs/installed-plugins
What is already installed across a bulk selection.
認証
ベアラー トークンとして API キーを送信します。キーには sites.view 権限が付与されている必要があります。権限のないキーは 404 ではなく 403 で拒否されます。
このエンドポイントは組織IDを受け付けません。お使いのキーによって所属する組織がすでに特定されており、レスポンスはその組織にスコープされます。
試してみる
アングルブラケット内のすべてをご自身の値に置き換え、キーのプレースホルダーをご利用中のダッシュボードのキーに置き換えてください。
curl -X POST https://api.zinndigital.com/v1/bulk-jobs/installed-plugins \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "operation": <string<plugin_activate, plugin_deactivate, plugin_remove, plugin_update>>, "selector": <BulkSelector> }'ログインしていますか?ダッシュボード内のAPIコンソールでは、実際の組織IDやお客様ご自身のキーが自動入力され、ライブAPIに対してリクエストが実行されるため、実際のレスポンスを確認することができます。 API コンソールでこのエンドポイントを開く
詳細
The candidate list for `plugin_activate`, `plugin_deactivate`, `plugin_remove` and `plugin_update` — read from the **sites themselves**, not from the wordpress.org directory. Installing picks from what could go on; activating picks from what is already there, and those are different questions. **POST, and it writes nothing.** Same reason as `previewBulkJob` beside it: an explicit selection of 400 site ids does not survive a query string that proxies, browsers and access logs will truncate or record. No row is written and no job is started. ⛔ **This is one network call per site, so it reads a bounded SAMPLE and says so.** `matched` counts the whole selection, `eligible` counts the ones that could take the operation, and `read` counts the ones actually listed — three separate numbers, because a blind version of this endpoint would return `read: 0`, which must never be readable as *"nothing is installed"*. Sites that could not be reached are named in `unreadable` rather than dropped into a shorter list that looks complete. `uniform` is `false` when the read sites do not all carry the same plugins, so the screen can say that plainly instead of silently acting on a subset. Requires `sites.view` plus the operation's own key — never a cheaper door than the single-site listing.
リクエスト本文
| 名前 | タイプ | 必須 | これがその内容です |
|---|---|---|---|
operation | string<plugin_activate, plugin_deactivate, plugin_remove, plugin_update> | はい | ⛔ Only the operations that act on something already installed. Anything else is a `422` — there is nothing to list, and the directory search is the right tool. |
selector | BulkSelector | はい | Which sites a job targets. ⛔ There is no `all`. A job belongs to exactly one organization and `all` would span every tenant on the platform; the fleet-wide act is a staff operat… |
selector_value | string | いいえ | The product line, for `selector: product_line`. |
site_ids | string[] | いいえ | — |
sample | integer | いいえ | How many sites to read. A **latency** bound on an interactive read, not a capacity plan: the response reports what it did not reach, and the bulk job that follows covers the who… |
返信
| 名前 | タイプ | 必須 | これがその内容です |
|---|---|---|---|
operation | string | はい | — |
matched | integer | はい | Sites the selection resolves to, counted over the whole selection. |
eligible | integer | はい | Of those, how many could take the operation at all. |
read | integer | はい | How many were actually listed. ⛔ The number that makes an empty `data` interpretable: `0` means *we looked at nothing*, never *nothing is installed*. |
sampled | boolean | はい | True when the selection is larger than what was read. |
uniform | boolean | はい | False when the read sites do not all carry the same plugins. Computed here rather than by the client, because it decides what the customer is told. |
data | BulkInstalledPlugin[] | はい | — |
unreadable | object[] | はい | Sites in the selection whose plugins could not be listed. ⛔ Reported, never dropped — a shorter list that looks complete is worse than a short list that says so. |
このエンドポイントが返すエラー
401 · 403 · 422 · 429