Skip to main content

Creating your first campaign

Build a simple number-based call campaign by creating the required publisher, buyer, target, routing plan, campaign, and tracking number.

Written by Moja Bot



Use this guide to create a simple static call campaign in Moja AI. You will create the required publisher, buyer, target, routing plan, and campaign, then connect them so calls can route correctly and payouts can be tracked.

Before you start

You should know:

  • The publisher/source that will send calls

  • The buyer that will receive calls

  • The destination phone number or SIP endpoint for the buyer

  • Buyer payout amount and conversion rule

  • Publisher payout amount and payout rule

  • Whether the campaign needs call recording, TCPA scrubbing, caps, duplicate rules, webhooks, or QAI

Tip: For a basic static campaign, create records in this order: Publisher → Buyer → Target → Routing Plan → Campaign → Tracking Number + Publisher payout.


1. Create the publisher record

  1. In Moja AI, go to Publishers.

  2. Click Create New.

  3. Enter the publisher name.

    • Use the source of calls for the campaign.

    • If the publisher is internal, use a clear name such as Internal Publisher.

      1. Review optional settings, including:

        • Call recording permissions

        • Access for later review

          1. Save the publisher record.


2. Create the buyer record

  1. Go to Buyers in the left navigation.

  2. Click Create New.

  3. Enter the buyer name, such as Test Buyer.

  4. Complete any relevant optional fields:

    • Phone number

    • Email

    • Revenue limits

    • Active/inactive status

    • Call recording permissions

      1. Click Create to save the buyer.


3. Create the target

  1. Go to Targets / RTBs.

  2. Select Targets.

  3. Click Create New.

  4. Enter a target name, such as First Target.

  5. Choose the buyer you created earlier.

  6. Select the target type:

    • Number Target for a phone number destination

    • SIP Target for SIP routing

      1. If using a number target, enter the destination phone number.


4. Configure target payout and routing rules

  1. Set the buyer payout amount based on your agreement.

  2. Choose the payout condition, such as:

    • Call level

    • Length connected

      1. Enter the conversion threshold, such as 90 seconds.

      2. Review concurrency limits if needed.

      3. Confirm the timezone.

      4. Confirm the target status is active.

      5. Decide whether call recording is allowed for this target.

      6. Save the target.


5. Set target availability and duplicate rules

  1. Decide whether the target should be:

    • Always Open, or

    • Available only during specific hours

      1. If using scheduled availability:

        • Enable the desired days

        • Add a start and end time

        • Copy the schedule to other days if needed

          1. Configure duplicate call handling if the buyer does not pay for repeat conversions.

          2. If needed, enable duplicate settings and define the rule by:

            • Caller

            • Target

              1. Use advanced filtering only if you need to filter by state, publisher, or ZIP code.


6. Review optional target integrations and caps

  1. If required, configure Agent Availability Check by entering the API endpoint.

  2. Choose the correct request type:

    • GET

    • POST

      1. Define the expected response condition, such as availability greater than zero.

      2. Use Advanced CAP settings if you need to limit:

        • Connected calls

        • Converted calls

        • Raw calls

        • Revenue

          1. Save the target after confirming all optional settings.


7. Create the routing plan

  1. Go to Routing Plan in the left navigation.

  2. Click Create New.

  3. Name the routing plan, such as Test Routing Plan.

  4. In the route section, select the target you created earlier.

  5. Confirm the target appears as open/available.

  6. Save the routing plan.

This routing plan will be used as the campaign’s destination logic.


8. Create the campaign and assign the routing plan

  1. Go to Campaigns.

  2. Click Create New.

  3. Enter the campaign name.

  4. Confirm or set the timezone.

  5. Set Execution Mode to Routing Plan.

  6. Select the routing plan you created in the previous step.

  7. Confirm the routing configuration points to the correct target path.


9. Add a tracking number to the campaign

  1. In the Number Group section, click Add Number.

  2. If no number is available, click Create New under Number.

  3. Search for a number by:

    • ZIP code

    • City

    • State

    • 800 number search

      1. Select an available number.

      2. Click Purchase Selected.

      3. Confirm the purchase when prompted.

      4. Refresh the page if needed.

      5. Select the newly purchased number from the dropdown.

Note: If a purchased number does not appear after refresh, pause and verify provisioning before continuing.


10. Assign the publisher and set publisher payout

  1. Select the publisher associated with the tracking number.

  2. Enter the publisher payout amount, such as $15.

  3. Confirm the payout logic aligns with your margin expectations.

  4. Choose the payout condition, such as Call Converted.

This ensures the publisher is paid only when the buyer-side conversion condition is met.


11. Configure campaign-level options

  1. Confirm the campaign status is set to Active.

  2. Decide whether call recording should be enabled.

  3. If compliance scrubbing is required, configure the TCPA scrubbing provider.

  4. Choose the default Moja scrubbing option or enter a third-party API key if applicable.

  5. Use Test Connection to validate any external scrubbing integration.


12. Review duplicate routing, caps, webhooks, and QAI

Before saving the campaign, review optional advanced settings:

  • Duplicate call routing — use only if your buyer agreement requires rerouting or special handling for repeat callers.

  • Duplicate pair routing — use if you need to prevent repeat payouts within a defined period.

  • Publisher caps — use if you need to limit volume or revenue by publisher.

  • Incoming or outgoing webhooks — configure only if your workflow requires external event delivery.

  • QAI — if using QAI, add a disposition and define qualifying questions for call analysis.

Save the campaign after all required and optional settings are complete.


13. Create and verify the campaign

  1. Click Create to save the campaign.

  2. Open the campaign after it is created.

  3. Confirm the following are correct:

    • Campaign name

    • Timezone

    • Execution mode

    • Routing plan

    • Target

    • Tracking number

    • Publisher assignment

    • Publisher payout

    • Active status

    • Recording setting

    • Duplicate settings

      1. Use the open-in-new-window icons to inspect the routing plan and target details if needed.


14. Test the campaign and review reporting

  1. Place a test call to the campaign tracking number.

  2. Go to the reporting page.

  3. Locate the test call record.

  4. Review the call log for:

    • Campaign name

    • Publisher attribution

    • Routing plan used

    • Buyer result

    • Call length

    • Caller ID

    • Tracking number

    • Payout status

      1. Expand the call live details to inspect the call flow and confirm routing behavior.

      2. Verify whether a payout was created based on the conversion rules.


Cautionary notes

  • Confirm publisher and buyer payout terms before creating targets or campaigns.

  • Duplicate call settings can prevent payouts even when calls still route successfully.

  • Call recording settings may be overridden by higher-level buyer or publisher settings.

  • Compliance scrubbing may incur additional cost; verify pricing before enabling it.

  • QAI disposition tracking requires a QAI subscription.

  • If using external APIs for availability checks or scrubbing, validate the connection before going live.

Tips for efficiency

  • Create the publisher and buyer records first so they are ready when building the target.

  • Use consistent naming conventions, such as Test Publisher 1, Test Buyer, and Test Routing Plan, for easier troubleshooting.

  • Keep the first campaign simple by using one target and one routing plan before adding advanced logic.

  • Use the copy schedule feature to quickly apply the same availability window across multiple days.

  • Test the campaign immediately after creation to confirm routing, attribution, and payout behavior before scaling.

Final verification checklist

After setup is complete, verify:

  • Publisher record exists and is active.

  • Buyer record exists and is active.

  • Target is assigned to the correct buyer.

  • Target payout and conversion threshold are correct.

  • Target availability is open during expected call hours.

  • Routing plan points to the correct target.

  • Campaign execution mode is set to Routing Plan.

  • Campaign is assigned to the correct routing plan.

  • Tracking number is attached to the campaign.

  • Publisher is assigned to the number group.

  • Publisher payout and payout condition are correct.

  • Campaign status is Active.

  • Call recording, TCPA scrubbing, duplicate routing, caps, webhooks, and QAI settings are configured only if needed.

  • The test call appears in reporting with the expected routing, attribution, and payout status.

Source Loom

Did this answer your question?