Riptide how-to Inventory setup

Bulk import publishers with a dry run and row corrections

Import publisher names and public IDs from CSV. Preview each row without saving, correct a conflicting ID, then import and verify the saved records.

Beginner1:49 watchRiptide team

Recorded in a demo workspace with fictional data. Interface labels may differ with your branding or version.

Get ready

Before you start

  • Sign in to the intended workspace with publisher creation access (supply.write), such as the tenant_admin or tenant_editor role.
  • Prepare a CSV with a header row and the required public_id and name columns. The console publisher importer maps these two fields. Use your own publisher identities when following along.
  • Check the existing publishers before importing. This recording starts with Harbor News, public ID harbor-news, and deliberately includes that ID in a new row to demonstrate a conflict.
  • Sandbox must be off to apply the import. Keep it on if you only intend to preview rows without saving them.
Instructions

Step-by-step guide

  1. Open Supply, then Publishers

    Confirm the workspace and inspect the current list. The recording starts with only Harbor News. Select Import to open Import publishers.

  2. Paste the CSV and match the columns

    In Source, paste your header and data rows into Or paste CSV rows, or choose a CSV file. The recording uses public_id,name as the header, followed by pine-valley-news,Pine Valley News; meadow-daily,Meadow Daily; and harbor-news,Cedar Sports, each on a separate line. Check the parsed row count, then select Map columns. Confirm that Public id reads from public_id and Name reads from name. Both fields are required.

    Public id public_id
    Map this required field to the public_id column. Each new publisher needs an unused ID in this workspace, and IDs must also be unique within the batch.
    Name name
    Map this required field to the name column. Supply a readable publisher name for every data row.
  3. Run the dry run and read every outcome

    Select Continue to preview. The server checks the rows without saving them. In the recording, two rows show Would create and the row using harbor-news shows Error because that public ID already exists. Read the Detail column before importing. A preview error does not automatically disable Import; correct the input first.

  4. Correct the source and preview again

    Select Back to return to Map columns, then Back again to return to Source. For Cedar Sports, change the conflicting public ID from harbor-news to the unused cedar-sports. Keep its name and the other rows unchanged. Select Map columns, recheck both mappings, and select Continue to preview again. All three rows should now show Would create. The dry run still has not saved any publishers.

  5. Import the corrected rows

    When every row is ready, select Import 3 rows. Review the result table and the summary: 3 rows applied, no errors. Each row should show Created. Rows apply independently, so a different batch can contain both successful and failed rows. If that happens, keep the successes and correct only the failed rows for a later import.

  6. Close, reload, and check the saved publishers

    Select Done to return to Publishers. Reload the page and check each new name, public ID, and Active status. The recording ends with four publishers: Harbor News (harbor-news), Pine Valley News (pine-valley-news), Meadow Daily (meadow-daily), and Cedar Sports (cedar-sports). The original publisher remains present; the corrected row creates a separate publisher.

Check your work

Check the saved settings

  • The corrected preview reports Would create for all three rows and has not saved any publishers.
  • The apply result reports three Created rows and no errors.
  • After reloading, the original Harbor News and all three new publisher names and public IDs appear with Active status.

A dry run does not save records. Import creates publishers independently per row; check the result and reload the list before retrying. Active alone does not mean ads are serving.

If you get stuck

Troubleshooting

Why does the preview say a public ID already exists?

That ID is already used in this workspace. If the row represents a new publisher, choose an unused ID. If it represents the existing publisher, remove it from this create import; importing does not update the existing record. Also check for duplicate IDs within your CSV.

Some rows succeeded and others failed. Should I import the whole file again?

Rows apply independently. Reload Publishers and check which public IDs were created. Correct and import only the failed rows; do not replay successful rows. If a request failed before showing results, inspect the list first to establish what saved.

Why is Import disabled while the preview works?

Sandbox permits dry runs but blocks applying the import. Turn Sandbox off in the account menu only when you intend to save the records. If you cannot open Import or the request is forbidden, ask an administrator to check your workspace and supply.write permission.

The importer says a required field is missing.

Include a header row, map Public id and Name to the correct columns, and give each data row both values. Read the row number in the error, select Back to correct the source, and run the preview again.

Does a clean dry run guarantee the import will succeed?

The preview checks the current data without reserving public IDs. Another change can happen before you apply. Always inspect the final per-row results and reload Publishers to verify what was actually saved.

Read the recording

Video transcript

The narration in full. Download English captions.

0:00 In this Riptide How-to, we'll import three publishers from a CSV.

0:06 We'll preview the rows, fix a duplicate public

0:08 ID, then import and verify the saved records.

0:14 Start in your workspace with permission to manage supply.

0:18 This recording uses fictional data in a local demo.

0:21 Open Supply, then Publishers, and choose Import.

0:25 Keep Sandbox off when you are ready to save.

0:29 Paste your CSV, including the public ID and name headers.

0:35 Choose Map columns.

0:37 Check that each field reads from the matching column.

0:40 Continue to preview.

0:41 The first two rows would be created.

0:44 The third row has an error: Harbor News already uses that public ID.

0:50 This dry run has saved nothing.

0:53 Choose Back twice to return to the source.

0:56 Change the last public ID to cedar, a hyphen, then sports.

1:02 Map the columns and preview again.

1:05 All three rows now show would create.

1:08 Review them, then choose Import three rows.

1:11 The result confirms three rows applied with no errors.

1:14 Choose Done.

1:17 Back in Publishers, reload the page.

1:20 Confirm Pine Valley News, Meadow Daily, and Cedar

1:23 Sports, with their public IDs and Active status.

1:28 Harbor News is still present.

1:30 The saved list now contains all four publishers.

1:35 Your publishers are imported and verified.

1:38 Next, add placements under each publisher.

1:41 A successful import creates records; it does not prove ads are serving.

1:46 Follow the written guide below.

Continue setup

Give a new publisher a placement

Choose the publisher that owns the inventory, then create a web video placement and verify its saved identity and format.

Create your first placement Prefer the API? Read the Admin API guide.