◉ANTIGRAVITY LABEN
記事一覧/連携・プラグイン
⬡ 連携・プラグイン/2026-05-23上級

Apple Search Ads Campaign Management API × Antigravity Agent でキーワード入札を自律調整する実装メモ

ASA Campaign Management API と Antigravity のサブエージェントを組み合わせ、個人開発の壁紙アプリでキーワード入札を自律調整した実装記録。JWT認証、ROAS/CPIに基づくポリシー、Crashlytics連動の安全弁まで。

Antigravity387Apple Search AdsiOS27AdMob13ROAS個人開発109

✦ プレミアム記事

個人開発でいくつも iOS アプリを運用していると、Apple Search Ads(ASA)の運用が静かに重くなってくる時期が来ます。手動でキーワード入札を眺めて止める/伸ばすを判断する作業は、平日朝の30分を確実に奪っていきます。これを Antigravity のサブエージェントに任せられないかと、3週間ほど実装と運用を試した記録を残しておきます。

結論を先に書くと、ASA Campaign Management API は意外と素直で、Antigravity の Agent View からスクリプト型のサブエージェントを呼ぶだけで、入札の8割は自律判断に置き換えられました。ただし「自律」と「暴走」の境目は薄いので、Crashlytics 側のクラッシュ率を見て自動停止する安全弁を組み込むまで、本番には入れない方が良いというのが私の所感です。

ASA Campaign Management API に手を出すまでに通った道

最初に Apple Search Ads を有効化したのは2019年で、当時は管理画面のみでキーワードを足したり止めたりしていました。アプリ数が増え、AdMob 側の eCPM と ASA 側の CPI を週次で照らし合わせて手で計算する状況になると、毎週の判断遅れがそのまま無駄な入札に変わります。

API 自体は数年前から提供されていましたが、トークンの取り回しが面倒で、asa-tools のような既存ツールに頼っていました。Antigravity の Browser Agent と Background Agent を別記事で書いた頃から、「もしや、エージェントが定期的にレポートを読みに行って判断するだけで足りるのでは」と考え直し、自前のサブエージェントを書き始めました。

このときに自分に課したルールは2つです。1つは「人間が朝に必ず確認する」こと、もう1つは「異常時は人間より先にエージェントが止める」こと。個人開発でエージェントを動かすときは、止める判断のほうを優先するというのが、広告運用を一人で長く回してきて辿り着いた感覚です。

ASA を Antigravity に任せる前に整える3つの前提

エージェントを動かす前に整えておくと、後の事故が大きく減ります。

  1. キーワードを「テーマ別キャンペーン」に整理する — 1キャンペーンに無関係なキーワードを混ぜると、エージェントが判断材料を取りづらくなります。私は「壁紙系」「癒し系」「引き寄せ系」という主要3テーマで分けています。
  2. コンバージョン定義を明確にする — ASA は「インストール」を計測しますが、本当の評価軸は Day1 / Day7 リテンションと AdMob 収益、課金率です。Firebase 側で asa_install イベントを別に張り、AdMob 収益と紐づける必要があります。
  3. API 鍵を Antigravity が触らないところに置く — Antigravity のサブエージェントは、api_token を生成する短命プロセスとは別に走らせ、鍵そのものはローカルの Keychain か 1Password CLI に寄せます。鍵を Agent のコンテキストに渡さないことが、後述の安全弁よりも大事です。

この3つが整っていない状態でエージェントを走らせると、無関係なキーワードに過剰入札したり、低 LTV のキーワードを伸ばしてしまうケースが起きやすいです。

✦

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
✦ASA Campaign Management API の JWT 認証とトークン自動更新を Antigravity サブエージェントで安定化する具体実装
✦ROAS と CPI を見ながらキーワード入札を自動調整するポリシー設計(停止 / 減額 / 増額の判断軸)
✦Crashlytics 連動で品質低下時に入札を自動停止する安全弁の設計と、個人開発で続けられる運用フォーマット
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Antigravity Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • ✦コピー&ペーストで使える実装コード付き
  • ✦毎日新しい上級ガイドを追加
  • ✦¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

⬡ 連携・プラグイン2026-05-28
Antigravity Background Agent に App Store スクリーンショットの多言語更新を4本のアプリで5週間任せた所感
壁紙アプリ4本のスクリーンショット更新を Antigravity Background Agent に5週間任せ、英・中・韓・スペイン語を含む8ロケールぶんを継続生成した運用記録です。手直しを18件から2件に減らした文字幅バリデーションの実装まで含めて共有します。
⬡ 連携・プラグイン2026-08-03
サーバーごとに秒数を書く前に測ったこと — MCP の接続と呼び出しは 486 倍違っていました
2.4.3 で MCP サーバーごとにタイムアウトの秒数を指定できるようになりました。何秒が妥当かを決めるために stdio サーバーを自作して境界別に実測し、単一の値では覆えない理由と、いま設定に書いている値の決め方をまとめます。
▣ アプリ開発2026-05-21
Firebase Remote Config と Antigravity Agent で AdMob 配置を実運用しながら微調整する設計
壁紙アプリの AdMob 収益が頭打ちになった経験から、Firebase Remote Config と Antigravity Agent を組み合わせて広告配置を実運用中に少しずつ最適化する仕組みをまとめます。