キャンペーン、寄付、アウトリーチ用の政治寄付者データベース
キャンペーン台帳とコンプライアンス記録
プロダクション-ready 政治寄付者データベースバックエンド on Back4app、キャンペーン、寄付者、寄付、コンプライアンスコード、およびアウトリーチログクラスを備えています。委員会名、寄付者プロフィール、寄付額、コンプライアンスノート、およびアウトリーチ履歴を1つのスキーマから追跡します。
キャンペーンデータベースの要点
このテンプレートは、キャンペーン、寄付者、寄付、コンプライアンスコード、およびアウトリーチログのレコードを持つ政治寄付者データベースのバックエンドを提供し、キャンペーンスタッフが1つの構造化されたソースから作業できるようにします。
- キャンペーン台帳 — 各キャンペーンをcommitteeName、cycleYear、federalCommitteeId、status、およびownerでモデル化し、すべての寄付が実際の委員会に付随するようにします。
- 寄付限度チェック — Contribution.amount、contributionDate、limitStatus、およびreceiptNumberを一緒に保管し、寄付が前に進む前に確認できるようにします。
- コンプライアンスコードのレビュー — ファイリングに再確認が必要な場合、ContributionにComplianceCode.fecCode、reviewState、reviewedBy、およびnotesを添付します。
- アウトリーチフォローアップ — OutreachLog.contactChannel、outreachDate、result、followUpDue、createdByを保存して、電話、メール、テキスト、イベントの履歴を保持します。
- アクセス対応オペレーター — ユーザー.username、email、role、fullNameをACLおよびCLPとともに使用して、キャンペーンスタッフ、アナリスト、ファンドレイザーが必要なデータだけを表示できるようにします。
概要: 政治的寄付者データベース
政治的寄付者データベースの締切はほとんどがオプショナルではなく、構造化された記録層は日付を驚きではなくアラートに変えます。小さな遅延が急速に重なります。Back4app上のキャンペーン、寄付者、寄付、コンプライアンスコード、OutreachLogを使用すると、政治的寄付者データベースチームは、同じケースレコードで協力しながら職務の分離を強制できます。スキーマは、ユーザー (username、email、role、fullName)、キャンペーン (committeeName、cycleYear、federalCommitteeId、status、owner)、寄付者 (fullName、employer、occupation、city、state、source)、寄付 (campaign、donor、amount、contributionDate、limitStatus、receiptNumber)、コンプライアンスコード (contribution、fecCode、reviewState、reviewedBy、notes)、およびOutreachLog (campaign、donor、contactChannel、outreachDate、result、followUpDue、createdBy) をカバーし、認証とワークフローの検証が組み込まれています。好みのフロントエンドを接続して、より早く出荷してください。
最適:
この政治的寄付者データベースのバックエンドの構成
政治的寄付者データベースは速度だけでなく、「それが真実であることをどう知っていたのか見せて」と誰かに尋ねられたときに防御可能性についても関係している。
特定のクライアントフレームワークに工数をコミットする前に、Campaign、Donor、および Contribution がどのように組み合わさるかを確認するためにこの概要を使用してください。
キャンペーンワークフローフィーチャー
このハブ内のすべてのテクノロジーカードは、User、Campaign、Donor、Contribution、ComplianceCode、OutreachLogを使用して同じ政治寄付者データベーススキーマを使用しています。
寄付者プロフィール
寄付者はフルネーム、雇用主、職業、都市、州、および情報源を保存します。
寄付金トラッキング
寄付はキャンペーン、寄付者、金額、寄付日、制限状況、および領収書番号にリンクします。
コンプライアンスコード記録
ComplianceCodeはfecCode、reviewState、reviewedBy、およびnotesを保存します。
アウトリーチログ履歴
OutreachLogはCampaign、Donor、contactChannel、outreachDate、result、followUpDueを記録します。
なぜBack4appで政治的寄付者台帳を構築するのか?
Back4appは、ユーザー、キャンペーン、寄付、およびコンプライアンスコードのプリミティブを提供し、あなたのチームがバックエンドの作業ではなく、レビュー作業やアウトリーチに集中できるようにします。
- •キャンペーンとオーナーレコード: キャンペーンとユーザーのクラスは、committeeName、federalCommitteeId、status、およびownerをクエリ可能な形で保持します。
- •寄付と制限の経緯: Contribution.amount、contributionDate、limitStatus、recieptNumberは、贈り物のレビューが必要な時期を明確に示します。
- •コンプライアンスコードワークフロー: ComplianceCode.fecCode、reviewState、reviewedBy、およびnotesは、どの寄付が承認されたか、フラグが付けられたか、またはフォローアップのために残されたかを示します。
すべてのプラットフォームで1つのバックエンド契約を使ってキャンペーンレコードを迅速に構築し、反復します。
キャンペーンドータベースの利点
寄付、コンプライアンス、アウトリーチ作業を1か所にまとめる政治寄付者のバックエンド。
より迅速な制限チェック
寄付ロジックをゼロから再構築するのではなく、Contribution.amount、Contribution.contributionDate、Campaign.cycleYearから開始します。
コンプライアンスの透明性を確保
ComplianceCode.fecCodeおよびComplianceCode.reviewStateを使用して、レビュー結果とエスカレーションメモを追跡します。
より良い寄付者フォローアップ
OutreachLog.contactChannelおよびOutreachLog.resultを追跡し、次の電話、メール、またはイベントが以前の連絡を反映するようにします。
敏感なフィールドへのスコープ付きアクセス
ACL/CLPをUser、Donor、およびComplianceCodeクラスと組み合わせて、承認されたユーザーのみが連絡先詳細やレビューメモを表示できるようにします。
キャンペーンレベルのレポーティング
Contribution、Campaign、およびComplianceCodeを一緒にクエリして、サイクル、committeeName、およびfederalCommitteeIdごとに寄付を要約します。
AIアシストのブートストラップ
1つの構造化されたプロンプトから寄付者スキーマ、バリデーションフロー、およびスターターAPIハンドラを生成します。
あなたの政治寄付者データベースを立ち上げる準備はできましたか?
Back4app AIエージェントにあなたの政治寄付者バックエンドをスキャフォールドさせ、1つのプロンプトからキャンペーン、寄付、コンプライアンスコード、およびアウトリーチログのワークフローを生成させましょう。
開始は無料 — 月あたり50のAIエージェントプロンプト、クレジットカード不要
キャンペーンテクノロジースタック
この政治寄付者データベースバックエンドテンプレートに含まれるすべて。
キャンペーンエンティティ図
政治寄付者データベーススキーマのためのエンティティ関係モデル。
ユーザー、キャンペーン、寄付者、寄付、コンプライアンスコード、およびアウトリーチログを網羅するスキーマ。
図表ソースを表示
erDiagram
User ||--o{ Campaign : "owner"
User ||--o{ ComplianceCode : "reviewedBy"
User ||--o{ OutreachLog : "createdBy"
Campaign ||--o{ Contribution : "campaign"
Campaign ||--o{ OutreachLog : "campaign"
Donor ||--o{ Contribution : "donor"
Donor ||--o{ OutreachLog : "donor"
Contribution ||--o{ ComplianceCode : "contribution"
User {
String objectId PK
String username
String email
String password
String role
String fullName
Date createdAt
Date updatedAt
}
Campaign {
String objectId PK
String committeeName
Number cycleYear
String federalCommitteeId
String status
String ownerId FK
Date createdAt
Date updatedAt
}
Donor {
String objectId PK
String fullName
String email
String employer
String occupation
String city
String state
String source
Date createdAt
Date updatedAt
}
Contribution {
String objectId PK
String campaignId FK
String donorId FK
Number amount
Date contributionDate
String limitStatus
String receiptNumber
Date createdAt
Date updatedAt
}
ComplianceCode {
String objectId PK
String contributionId FK
String fecCode
String reviewState
String reviewedById FK
String notes
Date createdAt
Date updatedAt
}
OutreachLog {
String objectId PK
String campaignId FK
String donorId FK
String contactChannel
Date outreachDate
String result
Date followUpDue
String createdById FK
Date createdAt
Date updatedAt
}
キャンペーンデータフロー
ユーザーサインイン、キャンペーン検索、寄付入力、コンプライアンスコードレビュー、アウトリーチログのログ記録のための典型的なランタイムフロー。
図表ソースを表示
sequenceDiagram
participant User
participant App as Political Donor Database App
participant Back4app as Back4app Cloud
User->>App: Sign in to the donor workspace
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Open campaign ledger
App->>Back4app: GET /classes/Campaign?include=owner&order=-updatedAt
Back4app-->>App: Campaign records
User->>App: Record a contribution
App->>Back4app: POST /classes/Contribution
Back4app-->>App: Contribution objectId
User->>App: Assign or verify an FEC compliance code
App->>Back4app: POST /classes/ComplianceCode
Back4app-->>App: ComplianceCode objectId
User->>App: Add outreach contact log
App->>Back4app: POST /classes/OutreachLog
Back4app-->>App: OutreachLog objectIdフィールドガイド
政治的寄付者スキーマの各クラスに関する完全なフィールドレベルの参照。
| フィールド | タイプ | 説明 | 必須 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | 自動 |
| username | String | Operator login name | |
| String | Operator email address | ||
| password | String | Hashed password (write-only) | |
| role | String | Access role for the operator (e.g., admin, analyst, fundraiser) | |
| fullName | String | Display name for the operator | |
| createdAt | Date | Auto-generated creation timestamp | 自動 |
| updatedAt | Date | Auto-generated last-update timestamp | 自動 |
8 フィールドが User にあります
キャンペーンデータへの権限
ACLおよびCLP戦略がどのようにユーザー、キャンペーン、寄付、コンプライアンスレビュー、およびアウトリーチログを保護するか。
寄付者の連絡先管理
寄付者のメール、雇用主、職業、都市、および州のフィールドへの読み取りおよび編集アクセスを制限し、認可された分析者および資金調達者のみがそれらを表示できるようにします。
寄付の整合性
金額、寄付日、ソース、または制限ステータスの検証が必要な場合、承認されたユーザーとCloud Codeのみが寄付記録を作成または修正できます。
コンプライアンスレビューのトレイル
ComplianceCode のメモとレビューワーリンクは、ファイリングまたは監査のコンテキストが必要な役割にのみ表示されます。
JSON スキーマ
生の JSON スキーマ定義を Back4app にコピーする準備ができました。または、実装リファレンスとして使用できます。
{
"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
},
"fullName": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Campaign",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"committeeName": {
"type": "String",
"required": true
},
"cycleYear": {
"type": "Number",
"required": true
},
"federalCommitteeId": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"owner": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Donor",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"fullName": {
"type": "String",
"required": true
},
"email": {
"type": "String",
"required": false
},
"employer": {
"type": "String",
"required": false
},
"occupation": {
"type": "String",
"required": false
},
"city": {
"type": "String",
"required": false
},
"state": {
"type": "String",
"required": false
},
"source": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Contribution",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"campaign": {
"type": "Pointer",
"required": true,
"targetClass": "Campaign"
},
"donor": {
"type": "Pointer",
"required": true,
"targetClass": "Donor"
},
"amount": {
"type": "Number",
"required": true
},
"contributionDate": {
"type": "Date",
"required": true
},
"limitStatus": {
"type": "String",
"required": true
},
"receiptNumber": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "ComplianceCode",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"contribution": {
"type": "Pointer",
"required": true,
"targetClass": "Contribution"
},
"fecCode": {
"type": "String",
"required": true
},
"reviewState": {
"type": "String",
"required": true
},
"reviewedBy": {
"type": "Pointer",
"required": false,
"targetClass": "User"
},
"notes": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "OutreachLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"campaign": {
"type": "Pointer",
"required": true,
"targetClass": "Campaign"
},
"donor": {
"type": "Pointer",
"required": true,
"targetClass": "Donor"
},
"contactChannel": {
"type": "String",
"required": true
},
"outreachDate": {
"type": "Date",
"required": true
},
"result": {
"type": "String",
"required": true
},
"followUpDue": {
"type": "Date",
"required": false
},
"createdBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}AI エージェントで構築
Back4app AI エージェントを使用して、このテンプレートからフロントエンド、バックエンド、認証、キャンペーン、コンプライアンス、アウトリーチフローを含む本物の政治的寄付者データベースアプリを生成します。
この正確なスキーマと動作で、Back4app上に安全な政治寄付者データベースバックエンドを作成します。 スキーマ: 1. ユーザー (Back4appの組み込みを使用): ユーザー名、メール、パスワード、役割、フルネーム; objectId、createdAt、updatedAt (システム)。 2. キャンペーン: 委員会名、サイクル年、連邦委員会ID、状態、所有者 (ユーザーへのポインター); objectId、createdAt、updatedAt (システム)。 3. 寄付者: フルネーム、メール、雇用主、職業、都市、州、ソース; objectId、createdAt、updatedAt (システム)。 4. 寄付: キャンペーン (キャンペーンへのポインター)、寄付者 (寄付者へのポインター)、金額、寄付日、リミットステータス、領収書番号; objectId、createdAt、updatedAt (システム)。 5. コンプライアンスコード: 寄付 (寄付へのポインター)、fecコード、レビュー状態、レビュー担当者 (ユーザーへのポインター)、ノート; objectId、createdAt、updatedAt (システム)。 6. アウトリーチログ: キャンペーン (キャンペーンへのポインター)、寄付者 (寄付者へのポインター)、連絡チャネル、アウトリーチ日、結果、フォローアップ期限、作成者 (ユーザーへのポインター); objectId、createdAt、updatedAt (システム)。 セキュリティ: - キャンペーンに割り当てられた認証されたオペレーターのみが編集を制限します。 - 寄付およびコンプライアンスコードの書き込みは、レビュー済みのワークフローエントリとして扱います。 - 寄付者の連絡先情報とアウトリーチ履歴は、認可されたキャンペーンスタッフのみが表示可能です。 認証: - サインアップ、ログイン、ログアウト。 動作: - キャンペーンをリスト、寄付者を追加、寄付を作成、寄付限度を評価、FECコンプライアンスコードを割り当て、アウトリーチフォローアップを記録します。 配信: - 寄付者の検索、寄付のレビュー、コンプライアンスタグ付け、およびアウトリーチ追跡をサポートするスキーマ、CLP、ACL、UIを持つBack4appアプリ。
下のボタンを押して、このテンプレートプロンプトが事前に入力されたエージェントを開きます。
これは技術サフィックスなしの基本プロンプトです。生成されたフロントエンドスタックを後で適応させることができます。
APIラボ
政治寄付者スキーマに対してRESTおよびGraphQLエンドポイントを試します。レスポンスはモックデータを使用し、Back4appアカウントは必要ありません。
このテンプレートと同じスキーマを使用します。
スタックを選択
各カードを展開して、選択したスタックとキャンペーン、寄付者、寄付を統合する方法を確認してください。
Flutter 政治寄付者データベースバックエンド
React 政治寄付者データベースバックエンド
React ネイティブ 政治寄付者データベースバックエンド
Next.js 政治寄付者データベースバックエンド
JavaScript 政治寄付者データベースバックエンド
Android 政治寄付者データベースバックエンド
iOS 政治寄付者データベースバックエンド
Vue 政治寄付者データベースバックエンド
Angular 政治寄付者データベースバックエンド
GraphQL 政治寄付者データベースバックエンド
REST API 政治寄付者データベースバックエンド
PHP 政治寄付者データベースバックエンド
.NET 政治寄付者データベースバックエンド
各テクノロジーで得られるもの
すべてのスタックは同じ政治的寄付者データベーススキーマとAPI契約を使用します。
統一されたキャンペーンワークフローデータ
ユーザー、キャンペーン、寄付者、寄付、およびアウトリーチ参照を1つの一貫したスキーマで管理します。
寄付限度額の追跡
金額、日付、および限度額のステータスを保存し、コンプライアンスチェックが常に見えるようにします。
コンプライアンスコードとレビューサポート
コンプライアンスコードで寄付をタグ付けし、レビューノートを添付します。
ファンドレイザーのアウトリーチログ履歴
各寄付者とキャンペーンに関連付けられた電話、電子メール、テキスト、イベントのフォローアップノートを保持します。
政治的寄付者スタックの比較
すべてのサポートされている技術にわたって、セットアップ速度、SDKスタイル、およびAIサポートを比較します。
| フレームワーク | セットアップ時間 | 政治献金者の利点 | SDKタイプ | AIサポート |
|---|---|---|---|---|
| 約5分 | モバイルとウェブのキャンペーンレビュー用の単一コードベース。 | タイプされたSDK | 完全 | |
| 5分未満 | 寄付者分析のための高速ウェブダッシュボード。 | タイプされたSDK | 完全 | |
| 約3~7分 | アウトリーチログ用のクロスプラットフォームモバイルアプリ。 | タイプされたSDK | 完全 | |
| 迅速な(5分)セットアップ | コンプライアンスレビュー用のサーバーレンダリングウェブアプリ。 | 型付きSDK | 完全 | |
| 約3〜5分 | 寄付者検索用の軽量ウェブ統合。 | 型付きSDK | 完全 | |
| 約5分 | フィールドアウトリーチ用のネイティブAndroidアプリ。 | 型付きSDK | 完全 | |
| 5分未満 | 寄付者ノート用のネイティブ iOS アプリ。 | Typed SDK | 完全 | |
| 約3~7分 | キャンペーンファイナンス追跡用の React 的なWeb UI。 | Typed SDK | 完全 | |
| 迅速な(5分)セットアップ | コンプライアンスワークフロー用のエンタープライズWebアプリ。 | Typed SDK | 完全 | |
| 2分未満 | 寄付者インテリジェンスのための柔軟な GraphQL API。 | GraphQL API | 完全 | |
| 迅速な(2分)セットアップ | 寄付トラッキングのための REST API 統合。 | REST API | 完全 | |
| 約3分 | アウトリーチ業務のためのサーバーサイド PHP バックエンド。 | REST API | 完全 | |
| 約3~7分 | .NET のキャンペーンファイナンス記録のバックエンド。 | 型付きSDK | 完全 |
セットアップ時間は、このテンプレートスキーマを使用したプロジェクトのブーツストラップから最初のキャンペーンまたは貢献クエリまでの期待される期間を反映しています。
キャンペーンに関する質問
このテンプレートを使用して政治的寄付者データベースバックエンドを構築する際の一般的な質問。