代理店リードトラッカー
AIエージェントで構築
エージェンシーリードトラッカーのバックエンド

広告代理店リードトラッカーのバックエンドテンプレート
キャンペーンピッチ、予算計画、及びクリエイティブブリーフの追跡

生産-ready 広告代理店リードトラッカーバックエンド on Back4app でアカウント、キャンペーンピッチ、予算計画、クリエイティブブリーフ、ステータス履歴、及びアクティビティノートのレコードを含みます。ER 図、データ辞書、JSON スキーマ、API サンドボックス、及び迅速なブートストラップのためのAI エージェントプロンプトが含まれています。

主なポイント

このテンプレートは、アカウント、キャンペーンピッチ、予算プラン、クリエイティブブリーフ、ステータス履歴、アクティビティノートのレコードを持つ広告エージェンシーリードバックエンドを提供し、オペレーションリードがステータス履歴を監査可能に保つことができます。

  1. ピッチパイプラインの可視性明確な段階値、所有者ポインター、次のレビュー日、クライアント予算でのキャンペーンピッチエントリーをモデル化します。
  2. 予算管理通貨、計画支出、これまでの支出、および承認ステータスを持つアカウントおよびキャンペーンピッチにリンクされた予算プラン行を追跡します。
  3. クリエイティブブリーフの履歴各キャンペーンピッチに添付されたクリエイティブブリーフの納品物、期限、およびノートを保持します。
  4. 監査可能なステータスログStatusHistoryとActivityNoteを使用して、誰がピッチを変更し、どのノートが記録されたかをキャプチャします。
  5. クロスプラットフォームエージェンシーバックエンドGraphQL APIを通じて、アカウント、キャンペーンピッチ、予算計画、およびブリーフレコードのための1つのRESTとウェブおよびモバイルツールを提供します。

広告代理店リードトラッカーバックエンドの理解

広告代理店チームが成長すると、共有の受信トレイはスケールしなくなります。あなたは、全員が信頼する必要な割り当て、権限、およびタイムラインが必要です。小さな遅れは素早く累積します。Back4appは、締切、文書、およびコミュニケーションが1つの権限されたワークスペースに必要な広告代理店の実践のために、アカウント、キャンペーンピッチ、予算計画、クリエイティブブリーフ、およびステータス履歴を固定します。スキーマは、ユーザー(ユーザー名、メール、パスワード、役割)、アカウント(アカウント名、業界、所有者、ステータス)、キャンペーンピッチ(キャンペーン名、アカウント、ステージ、クライアント予算、所有者、次のレビュー日時)、予算計画(アカウント、キャンペーンピッチ、通貨、計画支出、これまでの支出、承認ステータス)、クリエイティブブリーフ(ブリーフタイトル、キャンペーンピッチ、ブリーフ所有者、成果物、期限、ノート)、ステータス履歴(キャンペーンピッチ、変更者、元のステージ、最終ステージ、変更ノート、変更日時)、およびActivityNote(キャンペーンピッチ、著者、ノートタイプ、本文、記録日時)を認証と監査可能な追跡を組み込んで提供します。あなたの好みのフロントエンドを接続し、より早く出荷してください。

最適:

広告代理店リードトラッキングキャンペーン提案管理クライアント予算管理クリエイティブブリーフのログオペレーションダッシュボードチームがエージェンシーのワークフローのためにBaaSを選択

広告代理店:バックエンドスナップショット

広告代理店オブジェクトのための共通の言語—同じものに対して同じ名前—は、基礎となるスキーマと同じくらい重要です。

ハブはAccount、CampaignPitch、およびBudgetPlanの言語を一貫して保持するため、製品、オペレーション、およびエンジニアリングは「レコード」と言うときに同じ意味になります。

エージェントトラッカーのコア機能

このハブのすべてのテクノロジーカードは、アカウント、キャンペーンピッチ、バジェットプラン、クリエイティブブリーフ、ステータス履歴、およびアクティビティノートを使用して、同じエージェンシーのバックエンドスキーマを使用しています。

アカウントの取得と資格確認

アカウントは、accountName、industry、owner、およびstatusを格納します。

キャンペーン提案の追跡

CampaignPitchは、アカウント、campaignName、stage、clientBudget、owner、およびnextReviewAtをリンクします。

クライアント予算管理

BudgetPlanは、各キャンペーン提案のplannedSpend、spentToDate、通貨、およびapprovalStatusを記録します。

クリエイティブブリーフログ

CreativeBriefは、各キャンペーン提案のbriefTitle、成果物、dueDate、メモを保存します。

監査可能なステータス履歴

StatusHistoryおよびActivityNoteは、fromStage、toStage、noteType、body、changedBy、およびloggedAtをキャプチャします。

なぜ Back4app で広告代理店のリードトラッカーのバックエンドを構築するのか?

Back4app は、代理店のリード、予算承認、クリエイティブブリーフの履歴を手作業で配線することなく追跡するために必要な要素をチームに提供します。

  • リードと提案の記録を一箇所に: Account と CampaignPitch クラスは、クライアントの accountName、industry、stage、owner を一緒に保持します。
  • 常に表示される予算フィールド: BudgetPlan 行には plannedSpend、spentToDate、currency、approvalStatus が含まれており、アカウントリードはスコープをクライアントの上限と比較することができます。
  • 監査に準備されたブリーフ履歴: CreativeBrief と StatusHistory は、すべての引き渡しにおける成果物、ノート、changeNote の値、および changedAt のタイムスタンプをキャプチャします。

代理店のワークフローを一度構築し、ウェブ、モバイル、および管理ツール全体で同じバックエンド契約を再利用します。

コアの利点

キャンペーン、予算、及びブリーフを一致させるためのオペレーションチームを支援するリードトラッカーバックエンド。

失われたピッチの更新が少ない

アカウントとキャンペーンピッチの記録は、オーナー、ステージ、および次回レビュー日時をチーム全体に表示します。

作業開始前の予算確認

バジェットプランの行は、予定支出とこれまでの支出を早期に明らかにし、アカウントマネージャーが生産前にギャップを見つけることができます。

信頼できる変更履歴

クリエイティブブリーフの成果物とステータス履歴のタイムスタンプは、クライアントの変更の明確なシーケンスを提供します。

クリーンな引き継ぎ

アカウントのオーナーとクリエイティブブリーフのオーナーが販売、戦略、クリエイティブ間の混乱を減らします。

クエリ可能なエージェンシーパイプライン

ステージ、通貨、またはノートタイプでダッシュボードをフィルタリングできるように、アカウント、キャンペーンピッチ、予算計画、アクティビティノートのレコードを別のクラスに保存します。

迅速なAI支援のセットアップ

構造化されたプロンプト1つでバックエンドのスキャフォールディングと統合ガイドを生成します。

あなたのエージェンシーリードトラッカーを立ち上げる準備はできていますか?

Back4app AIエージェントにエージェンシーリードバックエンドのスキャフォールディングを行わせ、アカウント、キャンペーンピッチ、予算計画、ブリーフトラッキングを1つのプロンプトから生成させます。

無料で始める — 月50件のAIエージェントプロンプト、クレジットカード不要

エージェンシーテクノロジースタック

この広告代理店リードトラッカーバックエンドテンプレートにはすべてが含まれています。

フロントエンド
13以上の技術
バックエンド
Back4app
データベース
MongoDB
認証
組み込みの認証 + セッション
API
REST と GraphQL
リアルタイム
Live Queries

アカウントからステータスへの ER マップ

広告代理店のリードトラッカースキーマのエンティティリレーションシップモデル。

ダイアグラムソースを表示
Mermaid
erDiagram
    User ||--o{ Account : "owner"
    User ||--o{ CampaignPitch : "owner"
    User ||--o{ CreativeBrief : "briefOwner"
    User ||--o{ StatusHistory : "changedBy"
    User ||--o{ ActivityNote : "author"
    Account ||--o{ CampaignPitch : "account"
    Account ||--o{ BudgetPlan : "account"
    CampaignPitch ||--o{ BudgetPlan : "campaignPitch"
    CampaignPitch ||--o{ CreativeBrief : "campaignPitch"
    CampaignPitch ||--o{ StatusHistory : "campaignPitch"
    CampaignPitch ||--o{ ActivityNote : "campaignPitch"

    User {
        String objectId PK
        String username
        String email
        String password
        String role
        Date createdAt
        Date updatedAt
    }

    Account {
        String objectId PK
        String accountName
        String industry
        String ownerId FK
        String status
        Date createdAt
        Date updatedAt
    }

    CampaignPitch {
        String objectId PK
        String campaignName
        String accountId FK
        String stage
        Number clientBudget
        String ownerId FK
        Date nextReviewAt
        Date createdAt
        Date updatedAt
    }

    BudgetPlan {
        String objectId PK
        String accountId FK
        String campaignPitchId FK
        String currency
        Number plannedSpend
        Number spentToDate
        String approvalStatus
        Date createdAt
        Date updatedAt
    }

    CreativeBrief {
        String objectId PK
        String briefTitle
        String campaignPitchId FK
        String briefOwnerId FK
        Array deliverables
        Date dueDate
        String notes
        Date createdAt
        Date updatedAt
    }

    StatusHistory {
        String objectId PK
        String campaignPitchId FK
        String changedById FK
        String fromStage
        String toStage
        String changeNote
        Date changedAt
        Date createdAt
        Date updatedAt
    }

    ActivityNote {
        String objectId PK
        String campaignPitchId FK
        String authorId FK
        String noteType
        String body
        Date loggedAt
        Date createdAt
        Date updatedAt
    }

エージェンシー同期フロー

認証、アカウント検索、キャンペーンピッチの作成、予算計画のレビュー、およびクリエイティブブリーフの更新のための典型的な実行フロー。

ダイアグラムソースを表示
Mermaid
sequenceDiagram
  participant User
  participant App as Advertising Agency Lead Tracker App
  participant Back4app as Back4app Cloud

  User->>App: Sign in with agency credentials
  App->>Back4app: POST /login
  Back4app-->>App: Session token

  User->>App: Open account pipeline
  App->>Back4app: GET /classes/Account?include=owner
  Back4app-->>App: Account list with owners

  User->>App: Create a campaign pitch
  App->>Back4app: POST /classes/CampaignPitch
  Back4app-->>App: CampaignPitch objectId

  User->>App: Add a creative brief and budget plan
  App->>Back4app: POST /classes/CreativeBrief
  App->>Back4app: POST /classes/BudgetPlan
  Back4app-->>App: Brief and budget saved

  User->>App: Record a status change
  App->>Back4app: POST /classes/StatusHistory
  Back4app-->>App: StatusHistory saved

  App->>Back4app: Subscribe to live CampaignPitch updates
  Back4app-->>App: Real-time pitch stage changes

エージェンシー フィールド ガイド

エージェンシー リード スキーマのすべてのクラスに対する完全なフィールドレベルのリファレンス。

フィールドタイプ説明必須
objectIdStringAuto-generated unique identifier自動
usernameStringUser login name
emailStringUser email address
passwordStringHashed password (write-only)
roleStringRole for agency workflow access
createdAtDateAuto-generated creation timestamp自動
updatedAtDateAuto-generated last-update timestamp自動

7 フィールドが User にあります

エージェンシー レコードのアクセスルール

ACL と CLP 戦略がアカウント、プレゼンテーション、予算計画、ブリーフログ、監査履歴をどのように保護するか。

アカウント所有権ルール

アカウントのステータスおよび業界フィールドを更新するのは、割り当てられたチームメンバーまたは管理者のみとすべきです。

ピッチおよび予算制限

CampaignPitchおよびBudgetPlanの書き込みを、エージェンシーアクセスを持つ認証ユーザーに制限し、Cloud Code内でowner、briefOwner、およびspentToDateを検証します。

監査ログの整合性

StatusHistoryおよびActivityNoteのエントリは追加専用とすべきで、ブリーフ、予算、ピッチの変更履歴が信頼できるものとなります。

JSONスキーマ

Back4appにコピーするために準備された生のJSONスキーマ定義、または実装の参照として使用します。

JSON
{
  "classes": [
    {
      "className": "User",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "username": {
          "type": "String",
          "required": true
        },
        "email": {
          "type": "String",
          "required": true
        },
        "password": {
          "type": "String",
          "required": true
        },
        "role": {
          "type": "String",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "Account",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "accountName": {
          "type": "String",
          "required": true
        },
        "industry": {
          "type": "String",
          "required": true
        },
        "owner": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "status": {
          "type": "String",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "CampaignPitch",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "campaignName": {
          "type": "String",
          "required": true
        },
        "account": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Account"
        },
        "stage": {
          "type": "String",
          "required": true
        },
        "clientBudget": {
          "type": "Number",
          "required": true
        },
        "owner": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "nextReviewAt": {
          "type": "Date",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "BudgetPlan",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "account": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Account"
        },
        "campaignPitch": {
          "type": "Pointer",
          "required": true,
          "targetClass": "CampaignPitch"
        },
        "currency": {
          "type": "String",
          "required": true
        },
        "plannedSpend": {
          "type": "Number",
          "required": true
        },
        "spentToDate": {
          "type": "Number",
          "required": true
        },
        "approvalStatus": {
          "type": "String",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "CreativeBrief",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "briefTitle": {
          "type": "String",
          "required": true
        },
        "campaignPitch": {
          "type": "Pointer",
          "required": true,
          "targetClass": "CampaignPitch"
        },
        "briefOwner": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "deliverables": {
          "type": "Array",
          "required": true
        },
        "dueDate": {
          "type": "Date",
          "required": true
        },
        "notes": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "StatusHistory",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "campaignPitch": {
          "type": "Pointer",
          "required": true,
          "targetClass": "CampaignPitch"
        },
        "changedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "fromStage": {
          "type": "String",
          "required": true
        },
        "toStage": {
          "type": "String",
          "required": true
        },
        "changeNote": {
          "type": "String",
          "required": false
        },
        "changedAt": {
          "type": "Date",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "ActivityNote",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "campaignPitch": {
          "type": "Pointer",
          "required": true,
          "targetClass": "CampaignPitch"
        },
        "author": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "noteType": {
          "type": "String",
          "required": true
        },
        "body": {
          "type": "String",
          "required": true
        },
        "loggedAt": {
          "type": "Date",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    }
  ]
}

AIエージェントで構築

このテンプレートから、フロントエンド、バックエンド、認証、アカウント、キャンペーンピッチ、予算計画、ブリーフワークフローを含む実際の広告代理店リードトラッカーアプリを生成するためにBack4app AIエージェントを使用します。

Back4app AIエージェント
構築する準備ができました
この正確なスキーマと動作でBack4app上に広告代理店リードトラッカーアプリのバックエンドを作成します。

スキーマ:
1. ユーザー(Back4appの組み込みを使用):ユーザー名、メール、パスワード、役割;objectId、createdAt、updatedAt(システム)。
2. アカウント:accountName(String、必須)、industry(String、必須)、owner(ユーザーへのポインタ、必須)、status(String、必須);objectId、createdAt、updatedAt(システム)。
3. CampaignPitch:campaignName(String、必須)、account(アカウントへのポインタ、必須)、stage(String、必須)、clientBudget(Number、必須)、owner(ユーザーへのポインタ、必須)、nextReviewAt(Date、オプション);objectId、createdAt、updatedAt(システム)。
4. BudgetPlan:account(アカウントへのポインタ、必須)、campaignPitch(CampaignPitchへのポインタ、必須)、currency(String、必須)、plannedSpend(Number、必須)、spentToDate(Number、必須)、approvalStatus(String、必須);objectId、createdAt、updatedAt(システム)。
5. CreativeBrief:briefTitle(String、必須)、campaignPitch(CampaignPitchへのポインタ、必須)、briefOwner(ユーザーへのポインタ、必須)、deliverables(Array<String>、必須)、dueDate(Date、必須)、notes(String、オプション);objectId、createdAt、updatedAt(システム)。
6. StatusHistory:campaignPitch(CampaignPitchへのポインタ、必須)、changedBy(ユーザーへのポインタ、必須)、fromStage(String、必須)、toStage(String、必須)、changeNote(String、オプション)、changedAt(Date、必須);objectId、createdAt、updatedAt(システム)。
7. ActivityNote:campaignPitch(CampaignPitchへのポインタ、必須)、author(ユーザーへのポインタ、必須)、noteType(String、必須)、body(String、必須)、loggedAt(Date、必須);objectId、createdAt、updatedAt(システム)。

セキュリティ:
- アカウント、キャンペーンピッチ、予算計画、クリエイティブブリーフ、ステータス履歴、およびアクティビティノートの変更を認証された代理店のユーザーに制限します。ステータス履歴は追加専用とし、クラウドコードで所有権を検証します。

認証:
- サインアップ、ログイン、ログアウト。

動作:
- アカウントのリスト、CampaignPitchレコードの作成、BudgetPlan合計の更新、CreativeBriefの改訂の記録、および全ての重要な変更に対する監査ログの記録。

提供:
- スキーマ、ACL、CLP付きのBack4appアプリ;アカウント、キャンペーン、予算、ブリーフログ、監査履歴のフロントエンド。

このテンプレートプロンプトが事前入力されたエージェントを開くには、下のボタンを押してください。

これは技術的接尾辞なしの基本プロンプトです。生成されたフロントエンドスタックは後で適応できます。

数分でデプロイ月に50の無料プロンプトクレジットカードは不要

APIサンドボックス

エージェンシーリードスキーマに対してRESTとGraphQLエンドポイントを試してください。レスポンスにはモックデータが使用され、Back4appアカウントは不要です。

プレイグラウンドを読み込み中…

このテンプレートと同じスキーマを使用しています。

スタックを選択

各カードを展開して、選択したスタックでアカウント、キャンペーン提案、予算プランを統合する方法を確認してください。

Flutter 広告代理店リードトラッカーのバックエンド

React 広告代理店リードトラッカーのバックエンド

React ネイティブ 広告代理店リードトラッカーのバックエンド

Next.js 広告代理店リードトラッカーのバックエンド

JavaScript 広告代理店リードトラッカーのバックエンド

Android 広告代理店リードトラッカーのバックエンド

iOS 広告代理店リードトラッカーのバックエンド

Vue 広告代理店リードトラッカーのバックエンド

Angular 広告代理店リードトラッカーのバックエンド

GraphQL 広告代理店リードトラッカーのバックエンド

REST API 広告代理店リードトラッカーのバックエンド

PHP 広告代理店リードトラッカーのバックエンド

.NET 広告代理店リードトラッカーのバックエンド

すべての技術で得られるもの

すべてのスタックは同じエージェンシーバックエンドスキーマとAPI契約を使用します。

統一されたエージェンシーパイプラインデータ

1つのスキーマでアカウント、CampaignPitch、BudgetPlan、およびCreativeBriefのレコードを管理します。

監査に優しいステータス履歴

追加のみのログでピッチ、予算、およびブリーフレコードの変更を追跡します。

クライアント作業の予算の可視性

計画された支出とこれまでの支出をアカウントおよび運営チームが利用できるようにします。

代理店ユーザーのための役割ベースのアクセス

アカウントリーダー、クリエイティブ、運営スタッフのための権限を定義します。

REST/GraphQL APIを代理店ツールのために

ダッシュボード、モバイルアプリ、および自動化スクリプトを柔軟なAPIで提供します。

エージェンシースタック比較

すべてのサポートされているテクノロジーにわたって、セットアップ速度、SDKスタイル、およびAIサポートを比較します。

フレームワークセットアップ時間エージェンシーのワークフローベネフィットSDKタイプAIサポート
約5分モバイルとウェブのエージェンシーリード追跡のための単一のコードベース。タイプされたSDK完全
5分未満リード、ピッチ、予算レビューのための高速ウェブダッシュボード。入力されたSDK完全
約3〜7分アカウントチーム用のクロスプラットフォームモバイルアプリ。入力されたSDK完全
迅速な(5分)セットアップエージェンシーリードのためのサーバーレンダリングされたオペレーションダッシュボード。入力されたSDK完全
約3〜5分エージェンシー業務のための軽量ウェブ統合。入力されたSDK完全
約5分移動中のアカウントマネージャーのためのネイティブ Android アプリ。タイプされたSDK完全
5分未満エージェンシーのレビューと承認のためのネイティブ iOS アプリ。タイプされたSDK完全
約3〜7分React 的なウェブUIによるパイプラインの可視化。タイプされたSDK完全
迅速な(5分)セットアップエージェンシー運営のためのエンタープライズダッシュボード。タイプされたSDK完全
2分未満アカウントとブリーフデータのための柔軟なGraphQL API。GraphQL API完全
迅速な(2分)セットアップエージェンシーツールのためのREST API統合。REST API完全
約3分運用ワークフローのためのサーバーサイド PHP バックエンド。REST API完全
約3~7分エージェンシーリード自動化のための .NET バックエンド。型付きSDK完全

セットアップ時間は、このテンプレートスキーマを使用してプロジェクトのブートストラップから最初のアカウントまたはピッチクエリまでの予想される期間を反映します。

代理店の質問

このテンプレートを使用して広告代理店リードトラッカーのバックエンドを構築する際の一般的な質問。

広告代理店のチームは、役割間でデータが漏れないように責任をどのように分担すべきですか?
構造化タスク対自由形式のノートで最も利益を得る広告代理店のワークフローはどれですか?
リマインダー、タスク、クライアント通知のための広告代理店の自動化をどのように拡張しますか?
Flutterを使ってアカウントやピッチをクエリするにはどうすればよいですか?
Next.js Server Actionsでアカウントの状態を管理するにはどうすればよいですか?
Reactネイティブはブリーフの修正版をオフラインでキャッシュできますか?
不正な予算の編集を防ぐにはどうすればよいですか?
Androidでエージェンシーパイプラインデータを表示する最良の方法は何ですか?

世界中の開発者に信頼されています

Back4app テンプレートを使って、エージェンシーのワークフロープロダクトをより早く出荷するチームに参加しましょう。

G2 Users Love Us Badge

広告代理店リードトラッカーを作成する準備はできましたか?

数分でエージェンシーリードプロジェクトを始めましょう。クレジットカードは不要です。

テクノロジーを選択