@erdoai/cli 0.120.0 → 0.121.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +7 -6
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ function advertiserVerificationAction(container) {
|
|
|
5
5
|
const verification = container.advertiser_verification;
|
|
6
6
|
if (!verification || verification.action_url) return void 0;
|
|
7
7
|
if (verification.status === "check_in_google_ads") {
|
|
8
|
-
return `Google cannot expose advertiser verification for card-billed account ${container.customer_id} through the API. Open
|
|
8
|
+
return `Google cannot expose advertiser verification for card-billed account ${container.customer_id} through the API. Open Admin \u2192 Policy \u2192 Account in Google Ads to check its status, and complete verification there only if Google shows it is pending.`;
|
|
9
9
|
}
|
|
10
10
|
if (verification.status === "PENDING_USER_ACTION" || verification.status === "FAILURE") {
|
|
11
11
|
return `Google shows no business name or logo on ${container.customer_id}'s ads until the advertiser is verified. Get a link with: erdo org managed ads-container ${container.org_slug} --provision --start-verification`;
|
|
@@ -3012,14 +3012,15 @@ ${res.from} to ${res.to} (${res.timezone} days)
|
|
|
3012
3012
|
}
|
|
3013
3013
|
);
|
|
3014
3014
|
var tokenCmd = program.command("token").description("Manage your API tokens (account-level credentials)");
|
|
3015
|
-
tokenCmd.command("create").description("Mint a new API token; the secret is printed ONCE").requiredOption("--name <name>", "a label for the token").option("--expires-days <n>", "days until expiry (default: 30)", (v) => parseInt(v, 10)).addOption(
|
|
3015
|
+
tokenCmd.command("create").description("Mint a new API token; the secret is printed ONCE").requiredOption("--name <name>", "a label for the token").option("--expires-days <n>", "days until expiry (default: 30)", (v) => parseInt(v, 10)).option("--read-only", "mint a read-only token: it can read through the API in any org you belong to, and never write").addOption(
|
|
3016
3016
|
orgOption("the token's default org (defaults to your active org; must be one you belong to)")
|
|
3017
3017
|
).action(async (opts) => {
|
|
3018
3018
|
try {
|
|
3019
3019
|
const res = await new ErdoClient().createToken({
|
|
3020
3020
|
name: opts.name,
|
|
3021
3021
|
expires_in_days: opts.expiresDays ?? 30,
|
|
3022
|
-
organization_id: opts.org
|
|
3022
|
+
organization_id: opts.org,
|
|
3023
|
+
...opts.readOnly ? { access: "read" } : {}
|
|
3023
3024
|
});
|
|
3024
3025
|
process.stderr.write(
|
|
3025
3026
|
"Store this token now \u2014 it is shown only once and cannot be retrieved again.\n"
|
|
@@ -3031,8 +3032,8 @@ id: ${res.id}
|
|
|
3031
3032
|
hint: ${res.hint}
|
|
3032
3033
|
expires: ${res.expires_at}
|
|
3033
3034
|
default org: ${res.default_org ? `${res.default_org.name} (${res.default_org.id})` : "(none)"}
|
|
3034
|
-
|
|
3035
|
-
`
|
|
3035
|
+
access: ${res.access ?? "full"}
|
|
3036
|
+
` + (res.access === "read" ? "This token can read as you in any org you belong to and cannot change anything; pass --org on a command to target another.\n" : "This token acts as you in any org you belong to; pass --org on a command to target another.\n")
|
|
3036
3037
|
);
|
|
3037
3038
|
} catch (e) {
|
|
3038
3039
|
fail(e);
|
|
@@ -3048,7 +3049,7 @@ tokenCmd.command("list").description("List your API tokens (never shows the secr
|
|
|
3048
3049
|
for (const t of tokens) {
|
|
3049
3050
|
const org2 = t.default_org ? t.default_org.name || t.default_org.id : "-";
|
|
3050
3051
|
const used = t.last_used_at ?? "never";
|
|
3051
|
-
console.log(`${t.id} ${t.name || "-"} ${t.hint} default-org:${org2} expires:${t.expires_at} used:${used}`);
|
|
3052
|
+
console.log(`${t.id} ${t.name || "-"} ${t.hint} access:${t.access ?? "full"} default-org:${org2} expires:${t.expires_at} used:${used}`);
|
|
3052
3053
|
}
|
|
3053
3054
|
} catch (e) {
|
|
3054
3055
|
fail(e);
|