CTRLK

Shared components

Migrating 10DLC numbers to Infobip

|

View as Markdown

Complete guidance for migrating 10DLC numbers, brands, and campaigns from your current provider to Infobip. The right migration path depends on your role and whether you manage your own Net Number ID (NNID).


Choose your migration type

Migration typeWho this is forKey difference
Standard number migrationCustomers who want to port numbers to Infobip and register campaigns through the Infobip platformInfobip assesses feasibility and performs the migration on your behalf
Campaign migration using Infobip NNIDCampaign Service Provider (CSP) / Connectivity Network Provider (CNP) customers who want Infobip to manage the NNIDInfobip handles NNID and Operator Service Record (OSR) updates for you
Campaign migration using your own NNIDCSP/CNP customers with their own NNID and OSR accessYou manage your own NNID and handle all OSR updates yourself

Standard number migration

Before you start [#before-you-start-standard-number-migration]

  • Active 10DLC numbers: You must have 10DLC numbers currently active with another provider
  • Current provider details: Know who your current provider and CSP (Campaign Service Provider) are
  • TCR registration info: Understand your current registration structure (Direct CSP, DCA, etc.)
  • Campaigns and brands: Document all brands and campaigns you want to migrate

Migration feasibility [#migration-feasibility-standard-number-migration]

10DLC number migration can appear complex as there are multiple migration paths depending on your unique circumstances. The specific path you follow depends on:

  • Whether you are a Direct CSP (Campaign Service Provider) with your own NNID
  • Whether you need to retain your existing number or can accept a new number
  • Whether you are using Infobip's ID or your own ID
  • Your current registration structure with The Campaign Registry (TCR)

Contact your account representative or solutions engineer early. They will assess your specific situation and provide you with the appropriate migration process suited to your needs.

Information Infobip needs to assess feasibility:

  1. Current provider details:

    • Who is your current 10DLC number provider?
    • Who is your current connectivity provider?
  2. Registration structure:

    • Did you register brands and campaigns directly with The Campaign Registry (TCR) as a Campaign Service Provider (CSP)?
    • Did you select a Direct Connect Aggregator (DCA) for connectivity?
    • Or does your current provider handle both registration and connectivity?
  3. Migration volume:

    • Number of brands to migrate
    • Number of campaigns to migrate
    • Number of 10DLC numbers
    • Numbers per campaign distribution

Migration process [#migration-process-standard-number-migration]

If migration is confirmed as feasible, Infobip Support will perform the migration on your behalf.

1

Contact Infobip Support
Provide the feasibility information listed above.

2

Infobip reviews
Infobip reviews your current setup and determines the migration approach.

3

Infobip Support performs the migration
You do not need to perform manual steps.

4

Verify
Confirm that brands, campaigns, and numbers are active in your Infobip account.

Requesting number import [#requesting-number-import-standard-number-migration]

To initiate 10DLC number import through the Infobip web interface:

  1. Log in to your Infobip account
  2. Go to Channels and Numbers > Numbers
  3. Select Import number
  4. On the number details form, provide the following information:
    • Available countries: Select United States (+1)
    • Number type: Select Long Code (10DLC is classified as long code)
    • Numbers are in use and require a migration: Check this box if your 10DLC number is currently in use with another provider
      • If checked, you will see an additional field: Preferred date of migration - specify when you would like the migration to occur
  5. Enter your 10DLC number(s) in the format +1-NPA-NXX-XXXX (for example, +1-212-555-0123)
    • You can enter a single number or multiple numbers separated by commas
  6. Provide details about your current setup and provider in the form
  7. Submit your import request
NOTE

Fees apply when importing a number. You will be charged only after the number import is successfully completed.

After submission:

Infobip Support will contact you with:

  • Confirmation of feasibility
  • Migration timeline and approach
  • Additional information needed (if any)
  • Next steps and timeline

Campaign migration using Infobip NNID

These migration steps are for Campaign Service Provider (CSP) and Connectivity Network Provider (CNP) customers who want to migrate their 10DLC campaigns to Infobip using the Infobip Net Number ID (NNID). Infobip manages the NNID and Operator Service Record (OSR) updates during this process.

NOTE

If you host your own numbers and have your own NNID, see Campaign migration using your own NNID instead.

Eligibility [#eligibility-campaign-migration-using-infobip-nnid]

Before you begin, ensure you meet the following eligibility criteria:

CriteriaDescription
CSP/CNP statusOnly CSP/CNP customers can migrate campaigns within The Campaign Registry (TCR) ecosystem.
Letter of AuthorizationYou must provide a signed Letter of Authorization (LOA) not older than 30 days, authorizing Infobip to move the numbers to the Infobip NNID.

Prerequisites [#prerequisites-campaign-migration-using-infobip-nnid]

Complete the following prerequisites before starting the migration process. Only begin the migration after Infobip completes and confirms all items.

  • Number import enablement. Your account must be enabled for self-service number import before you can use the Numbers API. Request this enablement through your account manager.

  • Number pools (if applicable). If your campaign uses number pooling, contact your account manager, as this requires an additional revision for your campaign. Number pools are managed by Infobip.

  • Migration API enablement. Your account must be enabled for API access to the migration service. Request this enablement through your account manager. Once enabled, you can trigger migration requests as described in the migration steps below.

NOTE

Only begin the migration process after Infobip completes and confirms all prerequisites.

Migration steps [#migration-steps-campaign-migration-using-infobip-nnid]

The migration follows a six-step process. Your campaign moves through the following statuses:

PendingIn MigrationRegistered

1. Import your numbers into Infobip

Import all numbers associated with the campaign into the Infobip platform. This ensures the numbers are available for selection during the migration request.

Use the following Numbers API endpoint to import your numbers:

json
POST https://api-ny2.infobip.com/numbers/2/numbers/import

Example request:

json
1curl --location 'https://api-ny2.infobip.com/numbers/2/numbers/import' \
2--header 'Content-Type: application/json' \
3--header 'Authorization: App {apiKey}' \
4--data '{
5 "numbers": [
6 "19546899283"
7 ],
8 "country": "US",
9 "type": "VIRTUAL_LONG_NUMBER",
10 "capabilities": [
11 "SMS",
12 "MMS"
13 ],
14 "skipOsrUpdate": true
15}'

Request parameters:

ParameterTypeRequiredDescription
numbersArrayYesList of phone numbers to import.
countryStringYesThe country code for the numbers (for example, "US").
typeStringYesThe number type. Use VIRTUAL_LONG_NUMBER for 10DLC numbers.
capabilitiesArrayYesThe capabilities of the numbers (for example, SMS, MMS).
skipOsrUpdateBooleanYesSet to true to skip OSR updates during import, since Infobip manages the NNID.
IMPORTANT

If your account is not enabled for self-service number import, contact your account manager for assistance.

2. Elect campaign to Infobip through TCR

Initiate the migration in TCR by calling the following endpoint:

json
POST /campaign/{campaignID}/migrateCnp/{upstreamCnpID}
Note

The Infobip CNP ID is OPMKT. See the TCR CSP API documentation for full details.

3. Call the Infobip migration API

After electing the campaign to Infobip in TCR, trigger the Infobip migration endpoint:

json
POST https://{baseUrl}/number-registration/1/campaigns/migrate

Example request:

json
1curl --location 'https://{baseUrl}/number-registration/1/campaigns/migrate' \
2--header 'Content-Type: application/json' \
3--header 'Authorization: App {apiKey}' \
4--data '{
5 "name": "migrateCampaignCOJD655",
6 "externalCampaignId": "COJD655",
7 "numberPoolID": null,
8 "numbers": ["19168361160"],
9 "isClientManageNnid": false
10}'

Request parameters:

ParameterTypeRequiredDescription
nameStringYesThe name of the campaign.
externalCampaignIdStringYesYour TCR Campaign ID.
numberPoolIDStringNoThe number pool ID to associate with this campaign. Set to null if not applicable. If you need a number pool for your campaign, contact your account manager first.
numbersArrayYesList of phone numbers for this campaign. Maximum of 200 numbers per request.
isClientManageNnidBooleanYesSet to false so that Infobip manages the NNID and OSR updates on your behalf.

Example response:

json
1{
2 "id": "44e8c5fc-1f17-4f4c-9519-6606c907075f",
3 "referenceId": null,
4 "applicationId": "default",
5 "entityId": null,
6 "name": "migrateCampaignCOJD655",
7 "createdDate": "2026-03-04T09:08:43Z",
8 "lastModifiedDate": "2026-03-04T09:08:43Z",
9 "stage": "IN_MIGRATION",
10 "priority": null,
11 "campaignFeedback": null,
12 "externalCampaignId": "COJD655",
13 "numbers": null,
14 "externalDocuments": [],
15 "numberKeys": [],
16 "numberPreviews": [],
17 "type": "EXTERNAL_TEN_DIGIT_LONG_CODE"
18}

Response fields:

FieldDescription
idThe unique Infobip UUID assigned to this campaign. Use this ID for all subsequent references.
applicationIdThe application context for the campaign (defaults to default).
nameThe campaign name as provided in the request.
createdDateTimestamp when the migration request was created (ISO 8601).
stageCurrent status of the campaign. Shows IN_MIGRATION immediately after submission.
externalCampaignIdYour original TCR Campaign ID.
typeThe campaign type. Shows EXTERNAL_TEN_DIGIT_LONG_CODE for 10DLC migrations.

4. Continue sending through current provider

After submitting the migration request, your campaign transitions to the In Migration status (confirmed by "stage": "IN_MIGRATION" in the API response). During this phase, continue sending traffic through your current upstream provider. You do not need to take any action while Infobip processes the migration.

5. Infobip updates the OSR record

Infobip attempts to override the NNID on the OSR records for your numbers automatically. If your numbers belong to a provider that does not allow automatic OSR overrides, the Infobip Registrations team requests formal approval of the OSR update using the LOA you provided.

For more details about this step, discuss with your account manager and use the shared list of the numbers you plan to migrate. You can also reach the Registrations team directly.

If your campaign is stuck in the In Migration status for an extended period, contact the Registrations team to process the OSR update for your numbers.

IMPORTANT

As soon as Infobip updates the OSR record, downtime begins. Your numbers stop sending and receiving messages until the migration completes and you switch traffic to Infobip. Plan this step carefully and coordinate with your team to minimize impact.

6. Switch traffic to Infobip

Infobip automatically accepts your campaign from TCR, provisions it with the carriers, and notifies you through a webhook event. The webhook payload includes:

  • campaignStatus=REGISTERED
  • The associated Infobip UUID

Once all numbers from the campaign are assigned to the Infobip NNID, the campaign moves to REGISTERED status.

IMPORTANT

Once you receive the REGISTERED webhook, switch your traffic to Infobip. The migration is complete and your downtime ends.

Subscribe to webhook events [#subscribe-to-webhook-events-campaign-migration-using-infobip-nnid]

To receive campaign status change notifications, subscribe through one of the following:

Best practices [#best-practices-campaign-migration-using-infobip-nnid]

  • Start small. Begin with a few low-volume campaigns to learn the process and enable Infobip to quickly resolve any issues.

  • Share in advance. Provide Infobip with a list of campaigns and associated numbers you plan to migrate ahead of time.

  • Coordinate OSR updates. Since Infobip manages the NNID and OSR updates, ensure your LOA is current (not older than 30 days) and that you have communicated the full list of numbers to your account manager.


Campaign migration using your own NNID

These migration steps are for Campaign Service Provider (CSP) and Connectivity Network Provider (CNP) customers who want to migrate their 10DLC campaigns to Infobip while continuing to host their own numbers under their own Net Number ID (NNID).

NOTE

This section only applies if you host your own numbers and have your own NNID. If you are not a CSP/CNP, contact your account manager to discuss migration options.

If you want Infobip to manage the NNID on your behalf, see Campaign migration using Infobip NNID instead.

Eligibility [#eligibility-campaign-migration-using-your-own-nnid]

Before you begin, ensure you meet the following eligibility criteria:

CriteriaDescription
CSP/CNP statusOnly CSP/CNP customers can migrate campaigns within The Campaign Registry (TCR) ecosystem.
Own NNID with OSR accessYou must have your own NNID and the ability to make overrides and updates to your numbers through the Operator Service Record (OSR).

Prerequisites [#prerequisites-campaign-migration-using-your-own-nnid]

Complete and confirm the following before starting the migration:

  • NNID setup and carrier configuration
  • Number import enablement
  • Number pools (if applicable)
  • Migration API enablement
NOTE

If you are migrating sole proprietor campaigns, complete the additional setup in Sole proprietors before proceeding to the migration steps.

NNID setup

Provide Infobip with the NNID you want to use, along with the following:

NOTE

Procure a new NNID through Net Number for use with Infobip. A dedicated NNID simplifies the migration flow and gives you full control over mobile-originated (MO) traffic routing.

  • A signed Letter of Authorization (LOA)
  • A completed T-Mobile NNID request form

Infobip forwards the request to the carriers for NNID configuration. Lead time is approximately 1 month.

Get enabled for number import

Since you manage your own NNID, you can import numbers yourself using the Infobip API. Your account manager must first enable self-service number import on your account.

Number pools (if applicable)

If your campaign does not use number pooling, skip this section.

All number pools must be pre-configured and imported into the Infobip platform before migration. Number pools are not migratable, so you must create new pools before migrating.

Submit number pool requests through Infobip. To request a number pool, fill out the Number Pool Request Form (provided by your account manager) and submit it to the Infobip team for processing.

Important

The NNID configured on the number pool must match the NNID that you assign to your numbers in the migration. If the NNIDs do not match, the number pool does not work correctly and the migration fails. Verify that your requested number pool shares the new NNID that will be used in the migration before proceeding.

Migration API enablement

To call the Infobip campaign migration API endpoint, your account must be enabled for API access to the migration service. Request this enablement through your account manager. Once enabled, you can trigger migration requests as described in the migration steps below.

NOTE

Only begin the migration process after Infobip completes and confirms all prerequisites.

Sole proprietors [#sole-proprietors-campaign-migration-using-your-own-nnid]

Sole proprietor campaigns require additional setup before following the standard migration process.

TCR requirements

Before migrating any sole proprietor campaigns, Infobip must verify that the CSP meets the following TCR requirements:

  • One number per sole proprietor campaign
  • Maximum of 1,000 messages per day

Registration

Infobip registers the CSP with T-Mobile and creates a default campaign. This default campaign is the parent for all migrated sole proprietor campaigns from the CSP.

  1. The CSP shares one sole proprietor campaign to Infobip through TCR.
  2. Infobip creates the default campaign and assigns a number pool.
  3. All subsequent sole proprietor campaigns link to this default campaign.

Once the default campaign setup is complete and confirmed, follow the migration steps below.

Migration steps [#migration-steps-campaign-migration-using-your-own-nnid]

The migration follows a six-step process. Your campaign moves through the following statuses:

PendingIn MigrationRegistered

1. Import your numbers into Infobip

Import all numbers associated with the campaign into the Infobip platform. This ensures the numbers are available for selection during the migration request.

Use the following Numbers API endpoint to import your numbers:

json
POST https://api-ny2.infobip.com/numbers/2/numbers/import

Example request:

json
1curl --location 'https://api-ny2.infobip.com/numbers/2/numbers/import' \
2--header 'Content-Type: application/json' \
3--header 'Authorization: App {apiKey}' \
4--data '{
5 "numbers": [
6 "19546899283"
7 ],
8 "country": "US",
9 "type": "VIRTUAL_LONG_NUMBER",
10 "capabilities": [
11 "SMS",
12 "MMS"
13 ],
14 "skipOsrUpdate": true
15}'

Request parameters:

ParameterTypeRequiredDescription
numbersArrayYesList of phone numbers to import.
countryStringYesThe country code for the numbers (for example, "US").
typeStringYesThe number type. Use VIRTUAL_LONG_NUMBER for 10DLC numbers.
capabilitiesArrayYesThe capabilities of the numbers (for example, SMS, MMS).
skipOsrUpdateBooleanYesSet to true to skip OSR updates during import, since you manage your own NNID.
IMPORTANT

This endpoint is only available for clients migrating US numbers using their own NNID. If you are not managing your own NNID, contact your account manager for assistance with number imports.

2. Elect campaign to Infobip through TCR

Initiate the migration in TCR by calling the following endpoint:

json
POST /campaign/{campaignID}/migrateCnp/{upstreamCnpID}
NOTE

The Infobip CNP ID is OPMKT. See the TCR CSP API documentation for full details.

3. Update your OSR record

Verify and update the OSR record for your numbers with the correct:

  • NNID
  • Campaign ID
  • SubID (if applicable)
  • Context
IMPORTANT

When you switch the NNID on your OSR record, downtime begins. Your numbers cannot send or receive messages until the migration is fully completed. Plan this step carefully and coordinate with your team to minimize impact.

4. Call the Infobip migration API

After electing the campaign to Infobip in TCR and updating your OSR record, trigger the Infobip migration endpoint:

json
POST https://{baseUrl}/number-registration/1/campaigns/migrate

Example request:

json
1curl --location 'https://{baseUrl}/number-registration/1/campaigns/migrate' \
2--header 'Content-Type: application/json' \
3--header 'Authorization: App {apiKey}' \
4--data '{
5 "name": "migrateCampaignCOJD655",
6 "externalCampaignId": "COJD655",
7 "numberPoolID": "INFOBIP23",
8 "numbers": ["19168361160"],
9 "isClientManageNnid": true
10}'

Request parameters:

ParameterTypeRequiredDescription
nameStringYesThe name of the campaign.
externalCampaignIdStringYesYour TCR Campaign ID.
numberPoolIDStringNoThe number pool ID to associate with this campaign. Required only if the campaign uses number pooling. Must be pre-configured on the Infobip platform.
numbersArrayYesList of phone numbers for this campaign. Maximum of 200 numbers per request.
isClientManageNnidBooleanYesSet to true. You manage your own NNID and handle all OSR updates.

Example response:

json
1{
2 "id": "44e8c5fc-1f17-4f4c-9519-6606c907075f",
3 "referenceId": null,
4 "applicationId": "default",
5 "entityId": null,
6 "name": "migrateCampaignCOJD655",
7 "createdDate": "2026-03-04T09:08:43Z",
8 "lastModifiedDate": "2026-03-04T09:08:43Z",
9 "stage": "IN_MIGRATION",
10 "priority": null,
11 "campaignFeedback": null,
12 "externalCampaignId": "COJD655",
13 "numbers": null,
14 "externalDocuments": [],
15 "numberKeys": [],
16 "numberPreviews": [],
17 "type": "EXTERNAL_TEN_DIGIT_LONG_CODE"
18}

Response fields:

FieldDescription
idThe unique Infobip UUID assigned to this campaign. Use this ID for all subsequent references.
applicationIdThe application context for the campaign (defaults to default).
nameThe campaign name as provided in the request.
createdDateTimestamp when the migration request was created (ISO 8601).
stageCurrent status of the campaign. Shows IN_MIGRATION immediately after submission.
externalCampaignIdYour original TCR Campaign ID.
typeThe campaign type. Shows EXTERNAL_TEN_DIGIT_LONG_CODE for 10DLC migrations.

5. In migration

After submitting the migration request, your campaign transitions to the In Migration status (confirmed by "stage": "IN_MIGRATION" in the API response). Your numbers are offline during this phase. No action is needed from you while Infobip processes the migration. This typically takes a few minutes.

6. Switch traffic to Infobip

Infobip automatically accepts your campaign from TCR, provisions it with the carriers, and notifies you through a webhook event. The webhook payload includes:

  • campaignStatus=REGISTERED
  • The associated Infobip UUID
IMPORTANT

Once you receive the REGISTERED webhook, switch your traffic to Infobip. The migration is complete and your downtime ends.

Subscribe to webhook events [#subscribe-to-webhook-events-campaign-migration-using-your-own-nnid]

To receive campaign status change notifications, subscribe through one of the following:

Best practices [#best-practices-campaign-migration-using-your-own-nnid]

  • Start small. Begin with a few low-volume campaigns to learn the process and enable Infobip to quickly resolve any issues.

  • Share in advance. Provide Infobip with a list of campaigns and associated numbers you plan to migrate ahead of time.

  • Verify OSR. Review your OSR records before initiating each migration batch.


Learn more

Related pages

Get started with 10DLC
Verify your numbers are active and ready for messaging.

Brand vetting
Improve throughput with optional brand vetting.

10DLC throughput reference
Carrier limits and queuing behavior.