# mtdt.io — Salesforce metadata deployment & backup documentation > Guides for deploying, backing up, and version-controlling Salesforce metadata with mtdt.io — no change sets, no scripts. This file contains links to documentation sections following the llmstxt.org standard. ## Table of Contents - [Available Plans and Pricing](https://docs.mtdt.io/docs/10licensing-and-purchasing/available-plans-and-limits.md): **mtdt.io** has three plans: a **Forever Free** plan that covers real day-to-day work within set limits, a **Pro** plan ($49/mo) that unlocks unlim... - [How to Purchase a License](https://docs.mtdt.io/docs/10licensing-and-purchasing/purchase-license.md): Upgrading from **Free** to **Pro** — or to **Team** when more people need access — takes just a few steps, and you can do it whenever your team is ... - [About the Company](https://docs.mtdt.io/legal-information/about-company.md): The company behind MTDT — the contracting entity, where the platform is developed and operated, and how to reach us. - [MTDT Data Processing Agreement](https://docs.mtdt.io/legal-information/dpa.md): The terms under which MTDT processes personal data on behalf of its customers, including the technical and organizational measures, subprocessors a... - [Fair Use Policy](https://docs.mtdt.io/legal-information/fair-use-policy.md): When service restrictions may apply to Free plan accounts or promotional offers, and what MTDT does to keep usage fair for all customers. - [MTDT Master Subscription Agreement](https://docs.mtdt.io/legal-information/msa.md): The standard agreement MTDT signs with customers who buy a subscription under an Order Form, covering the Services, fees, term, data protection, su... - [MTDT Privacy Policy](https://docs.mtdt.io/legal-information/privacy-policy.md): What MTDT does with personal information about the people who visit its websites, hold an account and use the platform — what is collected, who it ... - [Subprocessors](https://docs.mtdt.io/legal-information/subprocessors.md): The third parties MTDT engages to process personal data on behalf of its customers, their processing locations, and how MTDT notifies customers of ... - [MTDT Terms of Service](https://docs.mtdt.io/legal-information/terms.md): The terms governing access to and use of the MTDT platform, including who you contract with, how the Services may be used, and how subscriptions work. - [Common Deployment Errors and How to Fix Them](https://docs.mtdt.io/docs/12support/common-deployment-errors.md): Salesforce deploy errors are terse and rarely say why they happened. This is an index of the common ones — what each means and how to fix it — from... - [Contacting mtdt.io Support](https://docs.mtdt.io/docs/12support/contact-support.md): Contacting mtdt.io Support - ["Duplicate value found" on Deploy — Causes and Fixes](https://docs.mtdt.io/docs/12support/salesforce-deploy-duplicate-value-error.md): The cryptic "duplicate value found" deploy error is a uniqueness clash, and it has several causes. On modern orgs it usually shows as "The label:X ... - ["No such column" After Deploying a Field — What It Means and How to Fix It](https://docs.mtdt.io/docs/12support/salesforce-no-such-column-after-deploy.md): You deployed a field with a change set, it shows in Object Manager with the right API name — but a SOQL query fails with "No such column 'New_Field... - ["You cannot deploy to a required field" — What It Means and How to Fix It](https://docs.mtdt.io/docs/12support/salesforce-deploy-required-field-error.md): "You cannot deploy to a required field: Object__c.Field__c" means a profile or permission set you're deploying carries field-level security for a f... - [Deploying a Master-Detail ↔ Lookup Conversion (and Why Validate Fails)](https://docs.mtdt.io/docs/12support/salesforce-master-detail-lookup-deploy.md): Changing a relationship field between Master-Detail and Lookup IS deployable through the Metadata API — a real deployment works in both directions.... - [FAQs](https://docs.mtdt.io/docs/12support/faqs.md): FAQs - [Connect your AI agent (MCP)](https://docs.mtdt.io/docs/13ai-agents/mcp.md): Connect Claude Code, Cursor, OpenAI Codex, OpenCode, or any MCP-capable AI agent to mtdt and deploy Salesforce metadata with pre-deploy checks from... - [Introducing mtdt.io](https://docs.mtdt.io/docs/2about-mtdt/introducing-MTDT.md): **mtdt.io** is a flexible, powerful DevOps platform designed to streamline metadata and data management in Salesforce environments. - [Replacing Change Sets with mtdt.io](https://docs.mtdt.io/docs/2about-mtdt/replacing-change-sets-with-MTDT.md): Salesforce Change Sets are a common tool for moving metadata between environments — but they often come with limitations - [Create mtdt.io Account](https://docs.mtdt.io/docs/3getting-started/create-account.md): Getting started with **mtdt.io** takes only a few minutes — no credit card and no DevOps engineer required. - [Single Sign-On with Microsoft Entra ID](https://docs.mtdt.io/docs/3getting-started/sso/sso-microsoft-entra-id.md): Your team can sign in to **mtdt.io** with their Microsoft work accounts. You register mtdt.io as an application in your own Microsoft Entra ID tena... - [Connecting to a Salesforce Environment](https://docs.mtdt.io/docs/4authentication/connecting-to-sf-environment.md): Before you can deploy, back up, or analyze anything, **mtdt.io** needs access to your Salesforce org. Connections use Salesforce's standard OAuth f... - [Connecting a PostgreSQL Database](https://docs.mtdt.io/docs/4authentication/connect-postgres-storage.md): Some **mtdt.io** features store data in a relational database you own — your own **PostgreSQL**. Record (data) backups and email backups write thei... - [Encrypting Backups with Your Own Key](https://docs.mtdt.io/docs/4authentication/s3-storage-encryption.md): When your backups go to your own Amazon S3 bucket, **mtdt.io** can encrypt every object it writes with an AWS KMS key that you own and control. Dis... - [Connecting S3-Compatible Storage](https://docs.mtdt.io/docs/4authentication/connect-s3-storage.md): **mtdt.io** stores backups in storage **you own**. Object storage — your own S3-compatible bucket — is where metadata backups, archives, file backu... - [Setting Up Version Control Connection](https://docs.mtdt.io/docs/4authentication/version-control-connection.md): Version control is your **source of truth** — the baseline mtdt.io deploys from, compares against, and keeps current. Connecting a repository unloc... - [Using Diffs to Compare Metadata](https://docs.mtdt.io/docs/5metadata-management/compare-metadata.md): Before you deploy — or just to understand how two environments differ — **mtdt.io** can compare metadata side by side and show you exactly what cha... - [Deploying Agentforce Agents (Agent Script)](https://docs.mtdt.io/docs/5metadata-management/deploy-by-type/deploy-agentforce-agents.md): How mtdt.io deploys Agentforce agents built with Agent Script: it deploys the authoring bundle, publishes a new agent version in the target org wit... - [Deploying Apex & the 75% Coverage Gate](https://docs.mtdt.io/docs/5metadata-management/deploy-by-type/deploy-apex-tests.md): A Salesforce deploy runs Apex tests by test level — No Test Run, Run Specified Tests, Run Local Tests, or Run All Tests. Here's what each does, how... - [Deploy Individual Salesforce Assignment Rules](https://docs.mtdt.io/docs/5metadata-management/deploy-by-type/deploy-salesforce-assignment-rules.md): Deploying one Salesforce assignment rule shouldn't mean deploying all of them — or silently switching off the one that's live. Assignment rules are... - [Deploying a Connected App from Sandbox to Production](https://docs.mtdt.io/docs/5metadata-management/deploy-by-type/deploy-connected-app.md): You can deploy a Connected App from sandbox to production with the Metadata API (mtdt.io does), but as of Spring '26 Salesforce blocks creating a b... - [Deploying Record Types](https://docs.mtdt.io/docs/5metadata-management/deploy-by-type/deploy-record-types.md): A record type is rarely self-contained. For every picklist on its object it stores **which values are available** under that record type — so it on... - [Deploying Scheduled Apex](https://docs.mtdt.io/docs/5metadata-management/deploy-by-type/deploy-scheduled-apex.md): Deploying a Schedulable class that's **already running** in the target org tends to stop with: - [Deploy Risks: What a Deploy Changes for Existing Records and Users](https://docs.mtdt.io/docs/5metadata-management/deploy-risks.md): A deploy can succeed and still change how the target org behaves the next morning. A field becomes required, and records that have it blank fail on... - [Deployment Approvals](https://docs.mtdt.io/docs/5metadata-management/deployment-approvals.md): Deployment approvals let your team require a reviewer's sign-off before a deployment runs — role-based separation of duties, with extra protection ... - [Metadata Backup: How It Works](https://docs.mtdt.io/docs/5metadata-management/metadata-backup.md): A metadata backup is a point-in-time snapshot of an org's configuration — Apex, flows, objects, fields, layouts, permission sets, and the rest of y... - [Deploying Metadata with mtdt.io](https://docs.mtdt.io/docs/5metadata-management/metadata-deployment.md): Deployments are the core of **mtdt.io**: move metadata between environments — org to org, or from a Git branch to an org — with a clear review step... - [How Long mtdt.io Keeps Metadata](https://docs.mtdt.io/docs/5metadata-management/metadata-retention.md): How long mtdt.io keeps metadata backups and the metadata loaded into a deployment, what the plan caps are, and what keeps older data alive. - [Managing Metadata Rollbacks](https://docs.mtdt.io/docs/5metadata-management/metadata-rollback.md): Even a well-reviewed deployment can have unintended effects in production. **mtdt.io** lets you undo one by restoring the target org to exactly how... - [Pre-Deployment Checks](https://docs.mtdt.io/docs/5metadata-management/pre-deployment-checks.md): Before a deployment runs, **mtdt.io** checks it against the **target** org and flags anything risky — missing dependencies, forgotten profiles, no ... - [Running Apex After a Deployment](https://docs.mtdt.io/docs/5metadata-management/run-apex-after-deployment.md): Some changes aren't finished when the metadata lands. A scheduled job needs re-scheduling, a custom setting needs a value, a new field needs backfi... - [Scheduled Deployments and Quick Deploy](https://docs.mtdt.io/docs/5metadata-management/scheduled-and-quick-deploy.md): Validate now, deploy later: how Quick Deploy reuses a passed validation in mtdt.io, how to schedule a deployment or a validation for a quarter-hour... - [Detect Target-Org Changes Before a Deploy Overwrites Them](https://docs.mtdt.io/docs/5metadata-management/target-org-change-detection.md): While you compare two orgs and prepare a deployment, the target org keeps living — another admin or developer can edit the very components you're a... - [Compare Salesforce Metadata Without Reading XML](https://docs.mtdt.io/docs/5metadata-management/xml-free-metadata-compare.md): Comparing a profile, a picklist, or a page layout as raw Salesforce XML is slow and easy to get wrong — the real change is buried in nested tags an... - [Backing Up Metadata to a Repository](https://docs.mtdt.io/docs/6working-with-git/backup-to-repo.md): Beyond deployments, **mtdt.io** can snapshot an org's metadata and push it to a branch as a **standalone backup** — a complete, source-formatted co... - [Deploying and Pushing to a Repository](https://docs.mtdt.io/docs/6working-with-git/deploy-and-push-to-repo.md): When you deploy a change to an org, the same change should land in your repository — otherwise Git quietly falls behind the org. **mtdt.io** gives ... - [Git as Your Source of Truth](https://docs.mtdt.io/docs/6working-with-git/git-as-source-of-truth.md): A connected Git repository turns **mtdt.io** from a deployment tool into a full version-control workflow. Git becomes the **baseline** your team de... - [Pushing Changes as a Pull Request](https://docs.mtdt.io/docs/6working-with-git/push-as-pull-request.md): Sometimes a change shouldn't land straight on a protected branch. Instead of committing directly, **mtdt.io** can push a change set to your reposit... - [Migrating Salesforce CPQ Data](https://docs.mtdt.io/docs/7data-management/cpq-migration.md): Salesforce CPQ (the SBQQ package) stores its configuration as **records**, not metadata — product rules, price rules, discount schedules, configura... - [CSV & S3 Data Backups](https://docs.mtdt.io/docs/7data-management/data-backup-csv.md): The simplest way to back up Salesforce records with **mtdt.io**: export them to **CSV files** and keep them in object storage — mtdt's own storage,... - [PostgreSQL Data Backups](https://docs.mtdt.io/docs/7data-management/data-backup-postgres.md): Back up your Salesforce records into **your own PostgreSQL database** — a real, queryable database you control, with a full history of every backup... - [Backing Up Salesforce Data Records](https://docs.mtdt.io/docs/7data-management/data-backup.md): Metadata backups protect your org's *configuration*. **Data backups protect your *records*** — Accounts, Contacts, custom objects, and the relation... - [Data Migration Between Environments](https://docs.mtdt.io/docs/7data-management/data-migration.md): Moving *records* between orgs is harder than moving metadata. Salesforce record IDs differ in every org, so a naive export/import breaks every look... - [Backing Up Salesforce Emails](https://docs.mtdt.io/docs/7data-management/email-backup.md): Salesforce logs sent and received emails as **EmailMessage** records — some of the most compliance-sensitive data in the org. **mtdt.io** backs the... - [Backing Up Salesforce Files](https://docs.mtdt.io/docs/7data-management/file-backup.md): Metadata and record backups don't cover your **Files** — the attachments, uploaded documents, and images stored as Salesforce Content Versions. **m... - [Running Environment Health Checks](https://docs.mtdt.io/docs/8tools/healthcheck.md): A **Health Check** scans a connected org and reports configuration risks — so you find the expiring certificate or the failing job on your schedule... - [Monitoring a Salesforce Org: Setup Changes, Limits, Errors and Notifications](https://docs.mtdt.io/docs/8tools/salesforce-org-monitoring.md): **Org monitoring** in mtdt.io keeps a running record of what happens in a connected Salesforce org: who changed what in Setup, how close the org is... - [Suppressing Static Analysis Findings](https://docs.mtdt.io/docs/8tools/static-analysis-suppressions.md): Suppressing a finding records that your team has accepted it — the scanner was wrong, the risk is understood, or the code belongs to a third-party ... - [Performing Static Analysis on Metadata](https://docs.mtdt.io/docs/8tools/static-analysis.md): Static analysis reviews your **Apex, Lightning Web Components, and Flows** for quality, security, and best-practice issues — automatically, and con... - [Approval Workflows: Who Requests, Who Signs Off](https://docs.mtdt.io/docs/9team-collabration/approval-workflows.md): As a team grows, letting everyone deploy straight to production stops being convenient and starts being risky. **mtdt.io** approval workflows put a... - [Monthly Deployment Report](https://docs.mtdt.io/docs/9team-collabration/monthly-deployment-report.md): A monthly PDF that summarizes a team's deployments: whether the month was normal, what went around mtdt.io, what failed and why, how it compares to... - [Projects and Environment Chains](https://docs.mtdt.io/docs/9team-collabration/projects-and-environments.md): A project in mtdt.io is an ordered chain of Salesforce environments — DEV → UAT → PROD — that work items move through. Team admins define the chain... - [Managing Team Access and Roles](https://docs.mtdt.io/docs/9team-collabration/team-access-and-roles.md): **mtdt.io** is built for teams. Everything you connect — orgs, repositories, deployments, backups — lives in a shared **team workspace**, and **rol... - [Working in a Shared Team Workspace](https://docs.mtdt.io/docs/9team-collabration/team-shared-projects.md): In **mtdt.io**, deployment work lives in a shared **team workspace** rather than on one person's machine. Connected orgs, repositories, deployments... - [Tracking Work Across Environments with Work Items](https://docs.mtdt.io/docs/9team-collabration/work-items.md): Work Items is a board that tracks one unit of work across the environments of a project: where it has actually landed, what is on its way to the ne... - [mtdt.io Help Center](https://docs.mtdt.io/docs/intro.md): The mtdt.io Help Center provides users with comprehensive documentation and technical guidance for working with the mtdt - [Metadata Backup with mtdt.io](https://docs.mtdt.io/blog/2025/metadata-backup-with-mtdt.md): When working with Salesforce, metadata is the backbone of your customizations: from objects and fields to flows, - [Salesforce Deployment Best Practices (and how mtdt.io makes it easy)](https://docs.mtdt.io/blog/2025/deployment-best-practices.md): If you’ve ever worked with Salesforce deployments, you probably know how tricky it can get—managing change sets, keeping - [mtdt.io vs Change Sets](https://docs.mtdt.io/blog/2025/mtdt-vs-change-sets.md): When it comes to Salesforce deployment, teams often start with native tools like Change Sets. However, as your development - [Start with the Free Plan – Or Upgrade for More Power](https://docs.mtdt.io/blog/2025/start-with-free-plan.md): You don’t need a DevOps engineer to get started with mtdt. With a clean interface and smart automation, even non-technical users can confidently ma... - [What’s Holding Back Your Salesforce Rollout (and How to Fix It)](https://docs.mtdt.io/blog/2025/your-salesforce-rollout.md): Salesforce is a powerful and flexible platform that can transform how organizations manage customer relationships, - [Salesforce Deployments don’t have to be hard. mtdt.io – a new tool Admins will love!](https://docs.mtdt.io/blog/2025/admins-will-love.md): Let’s be honest: hitting that “Deploy” button in Salesforce can feel like holding your breath and hoping for the best, - [Edit Before Deployment. The Salesforce deployment feature you didn’t know you needed](https://docs.mtdt.io/blog/2025/edit-before-deployment.md): If you’ve ever deployed something to production in Salesforce and thought, “Oh no, I should’ve changed that one thing…” – this is for you. - [Introducing Profile Cloner. The fastest way to clone and modify Salesforce Profiles](https://docs.mtdt.io/blog/2025/introducing-profile-cloner.md): Profiles in Salesforce are powerful... and frustrating. They define what users can see and do, but managing them across - [Migrating Salesforce CPQ shouldn’t be this hard. So we fixed It.](https://docs.mtdt.io/blog/2025/migrating-salesforce-cpq.md): If you’ve ever tried moving a Salesforce CPQ configuration from one org to another, - [Archives and Combined Deployments in mtdt.io.](https://docs.mtdt.io/blog/2025/archives-and-combined-deployments.md): **Smarter, safer, and fully controlled Salesforce metadata delivery** - [Introducing the Comparison Feature in mtdt.io](https://docs.mtdt.io/blog/2025/introducing-the-comparison-feature-in-metadata.md): **See exactly what changed between your Salesforce orgs — instantly.** - [Your Data, Your Rules: Connecting mtdt.io to Private Cloud Storage](https://docs.mtdt.io/blog/2026/mtdt-storage-connections.md): We’ve all been there: a critical migration fails or a user can’t save a record because of the dreaded **"Storage Full"** notification. In the Sales... - [Is Your Salesforce Org Healthy? Stop Guessing with mtdt.io Healthcheck](https://docs.mtdt.io/blog/2026/healthcheck-with-mtdt.md): If you’ve ever managed a Salesforce environment for a long time—or inherited one from a previous consultant—you know the feeling. - [Outgrowing Salesforce DevOps Center: When (and How) to Move On](https://docs.mtdt.io/blog/2026/salesforce-devops-center-alternative.md): Salesforce DevOps Center is a great free start — until you outgrow it. The signals you've hit its ceiling, a side-by-side comparison, and how to mi... - [One-Click Rollback: How to Undo a Bad Salesforce Deployment](https://docs.mtdt.io/blog/2026/salesforce-deployment-rollback.md): Salesforce has no native rollback. Here's why reverting is harder than it looks — and how to make undoing a bad deployment a single click. - [Salesforce DevOps in 2026: The Complete Stack](https://docs.mtdt.io/blog/2026/salesforce-devops.md): What a modern Salesforce DevOps setup actually looks like in 2026 — version control, safe deployment, backup, quality, data, and governance — and h... - [A Salesforce Disaster Recovery Playbook: Backup, Rollback, and a Plan That Works](https://docs.mtdt.io/blog/2026/salesforce-disaster-recovery.md): Salesforce keeps the platform up — recovering your data and metadata is on you. A practical disaster recovery playbook: what to back up, RPO/RTO, a... - [Safe Field-Level Deployments: Ship Only What Changed](https://docs.mtdt.io/blog/2026/salesforce-field-level-deployment.md): Partial Salesforce deployments are dangerous — omit one node and access or values disappear. Here's how to deploy at the field level, safely, with ... - [Deploy and Back Up Salesforce Metadata to Git — No Scripts](https://docs.mtdt.io/blog/2026/salesforce-metadata-to-git.md): Stop manually retrieving and committing. Deploy and push Salesforce metadata to Git in one step — automatic version history and a source-of-truth b... - [Why Salesforce Deployments Fail (and How to Stop the Pain)](https://docs.mtdt.io/blog/2026/why-salesforce-deployments-fail.md): Missing dependencies, 75% code coverage, cryptic validation errors — the real reasons Salesforce deployments fail, and how to prevent each one. - [Salesforce Data Backup to Your Own PostgreSQL — Queryable and Versioned](https://docs.mtdt.io/blog/2026/salesforce-data-backup-postgres.md): Most Salesforce backup tools lock your records in their storage. mtdt.io backs up your data into your own PostgreSQL database — queryable, with ful... - [Salesforce Deployment Approvals: Separation of Duties for Your Release Process](https://docs.mtdt.io/blog/2026/salesforce-deployment-approvals.md): Not everyone should push straight to production. mtdt.io's deployment approvals let teams require a reviewer's sign-off before a deploy runs — role... - [Salesforce Email Backup: Archive EmailMessages to Your Own Database & S3](https://docs.mtdt.io/blog/2026/salesforce-email-backup.md): Salesforce emails are compliance-critical and easy to lose. Back up EmailMessage records incrementally to your own PostgreSQL database and S3 with ... - [Salesforce File Backup and Archiving: Move Files to Your Own S3 and Free Salesforce Storage](https://docs.mtdt.io/blog/2026/salesforce-file-backup.md): Back up Salesforce Files (Content Versions) to your own S3-compatible storage on a daily or weekly schedule, or archive them: copy each file to S3,... - [Pre-Deployment Checks: Catch What Breaks a Salesforce Deploy Before It Runs](https://docs.mtdt.io/blog/2026/salesforce-pre-deployment-checks.md): Most Salesforce deployment failures are predictable. mtdt.io runs pre-deployment checks against your target — missing dependencies, no rollback poi... - [Salesforce Static Code Analysis: Catch Apex Problems Before They Ship](https://docs.mtdt.io/blog/2026/salesforce-static-code-analysis.md): 75% coverage doesn't mean good code. Run static analysis (PMD) on your Salesforce Apex to catch performance, security, and best-practice issues bef... - [Run Apex After a Salesforce Deployment: Automate the Last Mile of a Release](https://docs.mtdt.io/blog/2026/salesforce-post-deploy-apex.md): Some changes aren't done when the metadata lands — a job needs re-scheduling, a setting needs a value. mtdt.io runs anonymous Apex on the target or... - [Deploy Salesforce Apex Without Failing the 75% Test Coverage Rule](https://docs.mtdt.io/blog/2026/salesforce-apex-test-coverage.md): Deploying Apex to production runs your tests and enforces 75% coverage — and one failing test stops everything. mtdt.io recommends exactly which te... - [What to Consider When Planning Your Salesforce Backup](https://docs.mtdt.io/blog/2026/salesforce-backup-planning.md): Salesforce's shared-responsibility model means backing up your org is on you. Before you choose an approach, here's a neutral checklist — coverage,... - [Why Salesforce CPQ Breaks When You Move It Between Orgs — and How to Migrate It Cleanly](https://docs.mtdt.io/blog/2026/salesforce-cpq-migration.md): CPQ configuration is data, not metadata — so copying it between orgs breaks every lookup and your rules quietly stop firing. Here's why it happens,... - [Deploy Salesforce Record Types Without 'Picklist Value Not Found'](https://docs.mtdt.io/blog/2026/salesforce-record-types-deployment.md): Record types carry picklist value assignments that break the moment a field or value is missing in the target. Here's why the error happens — and h... - [Deploy Scheduled Apex Without 'Jobs Pending or in Progress'](https://docs.mtdt.io/blog/2026/salesforce-scheduled-apex-deployment.md): A Schedulable class that's already running blocks its own deployment, and the schedule never travels with it. mtdt.io aborts the target job, deploy... - [What Did You Change in That Sandbox? Salesforce Source Tracking, Without the CLI](https://docs.mtdt.io/blog/2026/salesforce-source-tracking.md): Build in a sandbox, then ship exactly what you touched. mtdt.io's Record Session uses Salesforce source tracking to capture every metadata change, ... - [Deploying Salesforce Static Resources Without the Binary Headache](https://docs.mtdt.io/blog/2026/salesforce-static-resources.md): Static resources are files — images, JS/CSS libraries, zip bundles — not text config. That makes them awkward to move between orgs. Here's why, and... - [Fix the FlexiPage 'Component Instance Doesn't Have an Identifier' Deploy Error](https://docs.mtdt.io/blog/2026/salesforce-flexipage-identifier.md): The FlexiPage error 'component instance doesn't have an identifier specified' comes from retrieving the page at an old API version, before identifi... - [Salesforce 'Active Flow Cannot Be Overwritten' — and the Silent Deploy That's Worse](https://docs.mtdt.io/blog/2026/salesforce-active-flow-cannot-be-overwritten.md): The Salesforce deploy error 'this flow is already active and can't be overwritten' is mostly legacy now. The trap that replaced it is quieter: in p... - [Fix 'Global Value Set Cannot Be Resolved' on Salesforce Deploy](https://docs.mtdt.io/blog/2026/salesforce-global-value-set-cannot-be-resolved.md): The Salesforce deploy error 'Global value set cannot be resolved' means a picklist field points at a Global Value Set that isn't in the target. Her... - [Why a Lightning Component Bundle Fails to Deploy — and What It Depends On](https://docs.mtdt.io/blog/2026/salesforce-lightning-component-bundle-deploy.md): A Lightning component that deploys fine in your sandbox can fail in the target when something it imports — an Apex controller, a field, a child com... - [Deploy Edited Search Layouts in Salesforce — Without Redeploying the Whole Object](https://docs.mtdt.io/blog/2026/salesforce-deploy-search-layouts.md): Search layouts live inside the object, so Salesforce won't let you deploy a layout change on its own — the usual workaround is to redeploy the whol... - [Why Your Salesforce Deployment Is Waiting: One Org, One Deploy at a Time](https://docs.mtdt.io/blog/2026/salesforce-deploy-waiting-concurrent.md): Salesforce runs only one metadata deployment per org at a time. When a change set, an SFDX push, or a teammate's deploy is already running, yours q... - [Salesforce Permission Set Flow Access: Why the List Is Empty — and Deploying the Grant Between Orgs](https://docs.mtdt.io/blog/2026/salesforce-permission-set-flow-access.md): In a permission set's Flow Access, the Available Flows list is often empty by design. Here's why, plus the harder problem it leads to: deploying th... - [The Salesforce Post-Sandbox-Refresh Checklist: Everything to Fix Before Your Users Notice](https://docs.mtdt.io/blog/2026/salesforce-post-sandbox-refresh-checklist.md): A sandbox refresh replaces it with a fresh copy of production — which quietly breaks your users, your automation, and your integrations, and wipes ... - [Deploy Profile-Specific Search Layouts in Salesforce — and Fix 'Not Applicable for Object'](https://docs.mtdt.io/blog/2026/salesforce-deploy-profile-search-layouts.md): A profile search layout lets one profile see different columns in search results — but deploy it to a custom object in another org and Salesforce r... - [Deploy a Salesforce Custom Report Type to Production — Without the Missing-Object Error](https://docs.mtdt.io/blog/2026/salesforce-deploy-report-type.md): A custom report type is built on a base object and reports on its fields. Deploy it to an org that doesn't have them and Salesforce hard-fails with... - [Can You Delete a Record Type Through the Metadata API? (And What to Do Instead)](https://docs.mtdt.io/blog/2026/salesforce-delete-record-type-metadata-api.md): Short answer: no. Salesforce hard-rejects a record-type deletion with 'Cannot delete record type through API.' The supported path is to deactivate ... - [Deploy FlexiPage Assignments in Salesforce: What Moves Between Orgs (and What Doesn't)](https://docs.mtdt.io/blog/2026/salesforce-deploy-flexipage-assignments.md): A Lightning page assignment is split across two metadata types — the org default on the object, the per-app, profile, and record-type activations o... - [Deploying Workflows That Reference Person Account Record Types in Salesforce](https://docs.mtdt.io/blog/2026/salesforce-deploy-workflow-person-account-record-type.md): Move a workflow that references a Person Account record type to another org and the result depends on how it references it: a rule criterion deploy... - [Fix 'Record Type ID Isn't Valid for User' When Migrating Records Between Salesforce Orgs](https://docs.mtdt.io/blog/2026/salesforce-record-type-id-not-valid-for-user.md): Copy records between orgs and Salesforce rejects them with 'INVALID_CROSS_REFERENCE_KEY: Record Type ID … isn't valid for the user.' Record type ID... - [Deploy Dependent Picklists Between Salesforce Orgs — Mapping and Controlling Field Intact](https://docs.mtdt.io/blog/2026/salesforce-deploy-dependent-picklists.md): A dependent picklist carries its value-by-value mapping plus a reference to a controlling field, and deploying it between orgs is where it breaks: ... - [Deploy Destructive Changes in Salesforce Without Hand-Writing destructiveChanges.xml](https://docs.mtdt.io/blog/2026/salesforce-deploy-destructive-changes.md): A source-format SFDX deploy deploys the metadata in your source; deleting something means stepping outside it — hand-authoring a destructiveChanges... - [Migrate Org-Wide Defaults and Sharing Rules Between Salesforce Orgs](https://docs.mtdt.io/blog/2026/salesforce-deploy-owd-sharing-rules.md): Can you move Org-Wide Defaults and Sharing Rules between Salesforce orgs? It's one of the platform's oldest questions, and change sets handle it aw... - [Deploy Page Layout Assignments in Salesforce — Without Redeploying the Whole Profile](https://docs.mtdt.io/blog/2026/salesforce-deploy-page-layout-assignments.md): Page layout assignments live on the profile, so rolling one out across orgs raises the same questions every admin hits: do I deploy the whole profi... - [Deploy Picklist Value Changes Between Salesforce Orgs — Inline and Global](https://docs.mtdt.io/blog/2026/salesforce-deploy-picklist-values.md): Can you deploy picklist values between Salesforce orgs? The answer is yes, but it's muddy because a picklist's values live in two different places ... - [The Best Way to Deploy Profiles in Salesforce — Without Wiping Permissions](https://docs.mtdt.io/blog/2026/salesforce-deploy-profiles.md): Deploying profiles in Salesforce is risky: the Metadata API reads a profile as one all-or-nothing document, so anything missing from the XML can be... - [Deploy Custom Fields in Salesforce Without the 'Not in package.xml' Error](https://docs.mtdt.io/blog/2026/salesforce-not-in-package-xml-custom-fields.md): A custom field and the object it lives on are separate metadata components, so deploying them is fiddly: the object's metadata and your deployment ... - [Fix 'Unknown user permission: SendExternalEmailAvailable' on a Salesforce Deploy](https://docs.mtdt.io/blog/2026/salesforce-unknown-user-permission.md): Deploy a profile or permission set and Salesforce rejects it with 'Unknown user permission: SendExternalEmailAvailable.' The permission is gated on... - [Deploy Apex Test Suites Between Salesforce Orgs — Where Change Sets Can't](https://docs.mtdt.io/blog/2026/salesforce-deploy-apex-test-suite.md): Set up Apex Test Suites and then find no way to add them to a change set? That's by design — change sets don't support the ApexTestSuite component.... - [Deploy Salesforce Objects Without Their Profile Permissions — Schema Now, Access Later](https://docs.mtdt.io/blog/2026/salesforce-deploy-objects-without-profiles.md): Want to push a batch of Salesforce objects to production but not grant users access yet? You can — deploy the objects with no profile, and nobody g... - [Why Your Salesforce Report Won't Deploy — filterLanguage, Folders, and Report Types](https://docs.mtdt.io/blog/2026/salesforce-deploy-reports.md): Deploying Salesforce reports between orgs throws cryptic errors — 'filterlanguage: Invalid value specified', a missing folder, 'invalid report type... - [Recovering a Salesforce Sandbox After an Accidental Refresh — Back It Up First](https://docs.mtdt.io/blog/2026/salesforce-recover-sandbox-after-refresh.md): Refreshed the wrong Salesforce sandbox and lost weeks of config? A refresh can't be undone, and as of 2025 Salesforce support no longer recovers ov... - [Secrets Don't Deploy in Salesforce: Certificates, Named Credentials & Auth Providers](https://docs.mtdt.io/blog/2026/salesforce-secrets-dont-deploy.md): Deploy a Salesforce Certificate, Named Credential, or Auth Provider to another org and the integration breaks — the Metadata API never carries the ... - [How to Deploy Between Salesforce Environments: Sandbox, Production, Dev & Git — Every Combination](https://docs.mtdt.io/blog/2026/how-to-deploy-between-salesforce-environments.md): A practical guide to deploying between Salesforce environments — sandbox to production, sandbox to sandbox, production to sandbox, dev/scratch orgs... - [Permission Sets vs Profiles in Salesforce: What's the Difference (and Which to Use)](https://docs.mtdt.io/blog/2026/salesforce-permission-sets-vs-profiles.md): A profile is assigned one-per-user and owns baseline settings (default app, record types, page layouts, login hours); a permission set grants extra... - [Deploy 'Rename Tabs and Labels' Between Salesforce Orgs — It's CustomObjectTranslation](https://docs.mtdt.io/blog/2026/salesforce-deploy-rename-tabs-and-labels.md): The 'Rename Tabs and Labels' settings under Setup are stored in the CustomObjectTranslation metadata type — one component per object per language (... - [Handling False Positives in Salesforce Static Analysis — Without Turning the Scanner Off](https://docs.mtdt.io/blog/2026/salesforce-static-analysis-false-positives.md): PMD flags ApexDoc on every undocumented method and fires on every fflib class you didn't write, so teams disable rules or stop scanning. Here's how...