Skip to content
Back to skills

Data Mapping

ASecurity

Translate between an external service's data model and your own, handling mismatches, nulls, and enum drift explicitly. Use when integrating a service whose model differs from yours.

  • 7 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 5, 2026
ai-agentsrustdebugging

Security analysis

A100/100

Scanned September 5, 2026

npx -y skills add Amey-Thakur/AI-SKILLS --skill data-mapping --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Data Mapping?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Data Mapping
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/amey-thakur-data-mapping/badge)](https://www.skillsdirectory.com/skills/amey-thakur-data-mapping)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: data-mapping
description: Translate between an external service's data model and your own, handling mismatches, nulls, and enum drift explicitly. Use when integrating a service whose model differs from yours.
---

# Data mapping

Two systems rarely agree on shape, naming, or what a field means. The
mapping layer is where those disagreements are resolved, and doing it
implicitly is how wrong data enters your system quietly.

## Method

1. **Map explicitly at the boundary.** One translation layer between
   their model and yours, so the rest of your code never sees their
   shape (see third-party-integration).
2. **Never store their identifiers as your primary keys.** Their
   identifier is a foreign reference, and coupling your keys to it makes
   provider migration nearly impossible.
3. **Handle unknown enum values without failing.** Providers add values,
   and a strict parser turns a routine provider change into an outage.
4. **Distinguish absent from null from empty.** These mean different
   things and providers use them inconsistently, so decide the mapping
   deliberately (see null-semantics).
5. **Validate on the way in.** Their data is untrusted input regardless
   of the provider's reputation (see input-validation).
6. **Record the raw payload alongside the mapped result.** When a
   mapping bug is found, the original is what allows reprocessing (see
   change-data-capture).
7. **Version the mapping.** Provider changes mean the mapping evolves,
   and knowing which version produced a record aids debugging.

## Boundaries

Mapping resolves structure, not semantics: two systems can both call
something status and mean unrelated things. Lossy mappings discard data
that a later requirement needs, which is why raw payloads are worth
keeping. Bidirectional sync multiplies the difficulty (see offline-sync).

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.