@koda-sl/baker-cli 0.116.0-dev.86609d2a7 → 0.116.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/README.md +2 -32
- package/dist/{chunk-KBWQRZL2.js → chunk-ZWMMCLJ4.js} +29 -8
- package/dist/chunk-ZWMMCLJ4.js.map +1 -0
- package/dist/cli.js +2266 -3159
- package/dist/cli.js.map +1 -1
- package/dist/engine/index.js +1 -2
- package/package.json +1 -1
- package/dist/chunk-5WRI5ZAA.js +0 -31
- package/dist/chunk-5WRI5ZAA.js.map +0 -1
- package/dist/chunk-AVJ3B6LC.js +0 -97
- package/dist/chunk-AVJ3B6LC.js.map +0 -1
- package/dist/chunk-ISFSUDEQ.js +0 -264
- package/dist/chunk-ISFSUDEQ.js.map +0 -1
- package/dist/chunk-K47Q73CK.js +0 -156
- package/dist/chunk-K47Q73CK.js.map +0 -1
- package/dist/chunk-KBWQRZL2.js.map +0 -1
- package/dist/chunk-YTEAWSEM.js +0 -39
- package/dist/chunk-YTEAWSEM.js.map +0 -1
- package/dist/client-PGOTU24X.js +0 -15
- package/dist/client-PGOTU24X.js.map +0 -1
- package/dist/env-TD4VXCQ7.js +0 -10
- package/dist/env-TD4VXCQ7.js.map +0 -1
- package/dist/output-2LGBISBQ.js +0 -18
- package/dist/output-2LGBISBQ.js.map +0 -1
- package/dist/shared-CQC3YRBA.js +0 -23
- package/dist/shared-CQC3YRBA.js.map +0 -1
package/README.md
CHANGED
|
@@ -82,7 +82,7 @@ Use `--output` to change format:
|
|
|
82
82
|
|
|
83
83
|
### Ad Platforms (`baker ads`)
|
|
84
84
|
|
|
85
|
-
Multi-platform ad commands.
|
|
85
|
+
Multi-platform ad data commands. Currently supports Google Ads, with Meta, LinkedIn, and TikTok coming.
|
|
86
86
|
|
|
87
87
|
---
|
|
88
88
|
|
|
@@ -862,36 +862,6 @@ baker ads meta pixels --account-id act_123
|
|
|
862
862
|
baker ads meta pixels --pixel-id 9988 --stats --days 7
|
|
863
863
|
```
|
|
864
864
|
|
|
865
|
-
#### Staged writes (`baker ads meta campaigns|adsets|ads|creatives|audiences|media|draft`)
|
|
866
|
-
|
|
867
|
-
Meta writes mirror the Google/LinkedIn model: they **never hit the Graph API when you run them**. Each op is validated at stage time (field shapes, budget rules, page/Instagram identity ownership, CBO/ABO exclusivity, status-transition legality), shows in the dashboard chat as a pending Meta change, and applies only when the chat is published. Meta has no atomic batch mutate, so ops apply **sequentially** on publish — one failure skips its dependents but the publish completes.
|
|
868
|
-
|
|
869
|
-
If the company's `metaAdsWriteEnabled` flag is off (the default), publish runs the identical lifecycle **simulated** — fake `sim_meta_*` ids, zero Meta calls. The stage response and `baker ads meta draft` show `mode: "simulated"`.
|
|
870
|
-
|
|
871
|
-
Chain a full ad from scratch with `meta_temp_*` refs (each create returns one):
|
|
872
|
-
|
|
873
|
-
```bash
|
|
874
|
-
# 1. (optional) upload creative media from the Baker library → publishes an image hash
|
|
875
|
-
baker ads meta media upload --account-id act_123 --kind image --image-id <bakerImageId> # → meta_temp_img
|
|
876
|
-
|
|
877
|
-
# 2. campaign → ad set → creative → ad
|
|
878
|
-
baker ads meta campaigns create --account-id act_123 --name "Q3 Prospecting" --objective OUTCOME_LEADS --daily-budget 50 # → meta_temp_camp
|
|
879
|
-
baker ads meta adsets create --account-id act_123 --campaign meta_temp_camp --name "US 25-54" \
|
|
880
|
-
--optimization-goal OFFSITE_CONVERSIONS --billing-event IMPRESSIONS --pixel-id 111 --custom-event-type LEAD \
|
|
881
|
-
--targeting-file targeting.json # → meta_temp_as
|
|
882
|
-
baker ads meta creatives create --account-id act_123 --page 555 --instagram-user 777 \
|
|
883
|
-
--message "Save money on pet insurance" --link https://example.com --headline "Best cover" \
|
|
884
|
-
--image-ref meta_temp_img --cta SHOP_NOW --standard-enhancements on # → meta_temp_cr
|
|
885
|
-
baker ads meta ads create --account-id act_123 --name "Ad 1" --adset meta_temp_as --creative meta_temp_cr
|
|
886
|
-
|
|
887
|
-
# review + edit before publish
|
|
888
|
-
baker ads meta draft
|
|
889
|
-
baker ads meta draft remove meta_temp_cr # removing a create cascades to dependents
|
|
890
|
-
baker ads meta draft clear
|
|
891
|
-
```
|
|
892
|
-
|
|
893
|
-
Status changes are `pause|resume|archive` subcommands on `campaigns`/`adsets`/`ads`. `duplicate` reconstructs a paused copy from the live snapshot (`--replace` also pauses the original once the copy publishes). Carousel/dynamic creatives and complex targeting go via `--file` (creativeType `carousel`/`dynamic`; full Meta targeting spec). Advantage+ Creative enhancements: `--standard-enhancements on|off`, or per-feature toggles via a `--file` `enhancements.features` map.
|
|
894
|
-
|
|
895
865
|
#### Smart defaults (so agents don't enumerate the API)
|
|
896
866
|
|
|
897
867
|
**`insights`** — the workhorse:
|
|
@@ -939,7 +909,7 @@ The HTTP backend exposes more endpoints (catalogs, ad-studies, ad-images, labels
|
|
|
939
909
|
|
|
940
910
|
- `spend` is a decimal string in account currency, not an integer.
|
|
941
911
|
- `effective_status` ≠ `status`. The dashboard shows effective_status (e.g. `WITH_ISSUES`, `PENDING_REVIEW`, `DISAPPROVED`, `ADSET_PAUSED`).
|
|
942
|
-
- Meta creatives are effectively immutable once attached. Editing copy/image/CTA =
|
|
912
|
+
- Meta creatives are effectively immutable once attached. Editing copy/image/CTA = create a new creative + reattach (writes are out of scope for now).
|
|
943
913
|
- Currency offsets are non-uniform (JPY/KRW = 1, KWD/BHD = 1000, most = 100). Read `account.currency` before doing budget math.
|
|
944
914
|
|
|
945
915
|
---
|
|
@@ -1,11 +1,32 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __commonJS = (cb, mod) => function __require() {
|
|
8
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
19
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
20
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
21
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
22
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
23
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
24
|
+
mod
|
|
25
|
+
));
|
|
5
26
|
|
|
6
|
-
//
|
|
27
|
+
// ../../node_modules/.pnpm/safe-stable-stringify@2.5.0/node_modules/safe-stable-stringify/index.js
|
|
7
28
|
var require_safe_stable_stringify = __commonJS({
|
|
8
|
-
"
|
|
29
|
+
"../../node_modules/.pnpm/safe-stable-stringify@2.5.0/node_modules/safe-stable-stringify/index.js"(exports, module) {
|
|
9
30
|
"use strict";
|
|
10
31
|
var { hasOwnProperty } = Object.prototype;
|
|
11
32
|
var stringify = configure2();
|
|
@@ -901,7 +922,7 @@ function describeCause(c) {
|
|
|
901
922
|
}
|
|
902
923
|
}
|
|
903
924
|
|
|
904
|
-
//
|
|
925
|
+
// ../../node_modules/.pnpm/safe-stable-stringify@2.5.0/node_modules/safe-stable-stringify/esm/wrapper.js
|
|
905
926
|
var import__ = __toESM(require_safe_stable_stringify(), 1);
|
|
906
927
|
var configure = import__.default.configure;
|
|
907
928
|
var wrapper_default = import__.default;
|
|
@@ -6478,4 +6499,4 @@ export {
|
|
|
6478
6499
|
defaultRegistry,
|
|
6479
6500
|
createEngineFromEnv
|
|
6480
6501
|
};
|
|
6481
|
-
//# sourceMappingURL=chunk-
|
|
6502
|
+
//# sourceMappingURL=chunk-ZWMMCLJ4.js.map
|