> For the complete documentation index, see [llms.txt](https://docs.podigee.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.podigee.com/documentation/grow-and-monetize/monetization/import-records-and-resolve-mappings.md).

# Import records and resolve mappings

Import a frozen migration package, verify exact target records, and resolve mapping decisions safely.

Podigee Audio Video Ad Server imports a prepared migration package only after it has a frozen source snapshot and a mapping plan. After the first mention, this article uses Podigee Ad Server for the product name. Each imported record keeps its source identifier and fingerprint, and each target is bound to an exact Podigee version.

Import does not publish a Campaign, switch delivery, or create a paid result. Imported work remains inactive until it passes the later review and publication steps.

## Before you start

* You have a migration project in **Draft**, **Source connected**, **Mapping review**, or **Blocked** state.
* The source export is the final JSON package for the project.
* The package covers only the areas approved in the migration plan.
* Every mapped target has a current Podigee record, version, revision, and payload fingerprint.
* You have a reviewer for rejected, duplicate, or uncertain mappings.

Do not edit the source file after the project snapshot or mapping manifest was created. Create a new snapshot when the source changes.

## Prepare the migration package

Use a JSON package with schema version **1**. It must contain:

* `schemaVersion` set to `1`.
* `records` with at least one record.
* A source entity type and source identifier for each record.
* A source payload fingerprint for each record.
* An exact target subject with type, identifier, version, revision, and digest.
* A mapping rule key that explains the decision.
* An optional accepted divergence code.

Podigee accepts packages up to 25 MB and 100,000 records. Use a smaller package when you need to correct mappings or review a limited scope.

## Open the import task

1. Open **Monetization > Revenue jobs**.
2. Select **Migration and portability**.
3. Select **Import mapped ad operations data**.
4. In **Migration project**, select the project with the frozen source snapshot.
5. Confirm the displayed source snapshot and mapping manifest.
6. Select **Start** to begin the import operation.

![The current One Podigee Revenue jobs page shows guided work such as commercial context, policies, inventory, and editorial ad breaks.](https://2032417310-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbqUKO6lljHGzkEAzliPI%2Fuploads%2Fgit-blob-0cf33f037b414e6d8ee7a4b1eeb843c73115bd0a%2Fdoc-monetization-068-revenue-jobs.png?alt=media)

*Choose the job family that describes the result you need.*

## Review mapping results

After the import operation finishes, review every result by state:

* **Imported:** the source record has an exact target and can continue to later checks.
* **Rejected:** the record failed a format, target, or authority check. Correct the source or mapping and import a new batch.
* **Duplicate:** the record points to an existing identity or mapping. Confirm the canonical record before you import it again.
* **Uncertain:** the target or business meaning needs a human decision. Do not activate it until a reviewer records the decision.
* **Unsupported:** the record or area is outside the current connector boundary. Keep it in the source system or document the separate handling path.

Keep the source identifier, source fingerprint, target version, mapping rule, and decision reason for each exception. Do not resolve an exception by changing a name only.

## Correct and re-import a mapping

1. Identify the exact rejected, duplicate, or uncertain record.
2. Confirm the source record and its source fingerprint.
3. Confirm the target record type, version, revision, and digest.
4. Update the mapping rule or accepted divergence decision.
5. Create a new migration package or mapping manifest.
6. Review the new source and mapping digests.
7. Start a new import batch for the corrected records.

Podigee checks the target again. If the target changed after the mapping package was prepared, the import stops instead of attaching the source to a newer version.

## Confirm the imported project

The migration project should show:

* Imported and exception counts.
* The import batch reference and operation result.
* The frozen source snapshot digest.
* The mapping manifest digest.
* The current project state, such as **Imported inactive** when the batch is complete.
* The remaining rejected, duplicate, uncertain, or unsupported records.

Imported records must remain inactive until parity, delivery, finance, and approval checks pass.

## If Podigee blocks the import

* **The project is not ready:** return to the migration plan and complete the source snapshot and scope checks.
* **The package is not valid JSON:** create a new package with schema version 1 and required fields.
* **The package is too large:** split it by approved scope or source area.
* **The source snapshot changed:** create a new frozen snapshot and mapping manifest.
* **A mapped target changed:** select the current target version and recompute its digest.
* **The target is not available:** create or link the target record before you map the source.
* **A record is incomplete:** correct the source type, identifier, fingerprint, or mapping rule.
* **A duplicate is found:** stop and resolve the canonical identity before another import.

## Expected result

The migration project has a recorded import batch with exact source and target references. Valid records are imported as inactive work, and every rejected or uncertain record has a clear correction or review path. No listener delivery, Campaign publication, or paid evidence changes during import.

## Next useful tasks

Run deterministic synthetic delivery checks after the imported records and mappings are complete. Use [Plan a safe migration](/documentation/grow-and-monetize/monetization/plan-a-safe-migration.md) when the project needs a new scope or source snapshot.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.podigee.com/documentation/grow-and-monetize/monetization/import-records-and-resolve-mappings.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
