OVERALL CONTROL / 0.6-customer-control
Grades and scoring
Data access
25% of the overall score before applicability adjustment.
Scored answers and evidence
Read interface 7.5/10
Structured APIs across the declared product scope
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
Sales data resides in Dataverse tables accessible through the authorized Web API.
Dynamics Sales developer guide ↗
Dataverse developer resources · Checked 2026-10-16
Bulk delivery 8.8/10
Batched or iterable API requests
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
Standard-table pages can return up to 5,000 rows with opaque nextLink continuation.
Dataverse Web API paging ↗
Page size and nextLink · Checked 2026-10-16
Query expressiveness 8.8/10
Documented structured API filters
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
OData query options retrieve selected table records; tracked change requests have additional query restrictions.
Dataverse Web API query overview ↗
Query options · Checked 2026-10-16
Access cost barrier -
-
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
The complete fixed access entitlement and API fees relative to the lowest paid plan are not established by the reviewed technical documentation.
Dataverse OAuth authentication ↗
Dataverse OAuth authentication · Checked 2026-10-16
Third-party accessibility
20% of the overall score before applicability adjustment.
Scored answers and evidence
Third-party eligibility 10.0/10
Customer authorization without discretionary provider approval
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
Customer authorization and application-user roles govern the app route, without a provider-selected partner credential.
Dataverse OAuth authentication ↗
Server-to-server authentication · Checked 2026-10-16
Downstream permission -
-
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
Applicable downstream processing, redistribution and AI-use conditions remain unestablished for the declared route.
Dataverse OAuth authentication ↗
Dataverse OAuth authentication · Checked 2026-10-16
External action
15% of the overall score before applicability adjustment.
Scored answers and evidence
Write interface 7.5/10
Create and update across business domains
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
Web API documents record creation and update/delete for tables permitted by the caller’s roles.
Dataverse update and delete ↗
PATCH and DELETE · Checked 2026-10-16
Dataverse Web API create ↗
Create a table row using POST · Checked 2026-10-16
Custom application path 10.0/10
Customer applications using fixed APIs without provider selection
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
Customer-authored applications use OAuth-authorized Web API calls.
Dataverse OAuth authentication ↗
Authenticate custom applications · Checked 2026-10-16
Continuity
15% of the overall score before applicability adjustment.
Scored answers and evidence
Refresh mechanism 7.5/10
Documented updated-since filters or webhooks
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
Explicitly enabled tables provide delta links for recurring change queries.
Dataverse change tracking and external synchronization ↗
Retrieve changes using Web API · Checked 2026-10-16
Limit visibility 10.0/10
Published numeric quotas and recovery instructions
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
Published service-protection request, concurrency and execution-time limits include Retry-After recovery guidance.
Dataverse service protection limits ↗
Service protection limits and retry · Checked 2026-10-16
CDC and deletion capture 7.5/10
Updates and deletion identities documented for the stated resources
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
The tracked response identifies removed records as well as changed rows; table enablement and organization read permissions apply.
Dataverse change tracking and external synchronization ↗
Deleted entities and required privileges · Checked 2026-10-16
Replay and gap recovery 7.5/10
Replay/change queries within a documented retention window
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
Delta tokens expire after the configured window, seven days by default. Starting again retrieves current rows rather than all historical deletions.
Dataverse change tracking and external synchronization ↗
ExpireChangeTrackingInDays and expired version stamps · Checked 2026-10-16
Data exit
20% of the overall score before applicability adjustment.
Scored answers and evidence
Export custody 7.5/10
Customer-held structured files or API records
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
Authorized clients receive structured records that can be stored outside Dataverse.
Dataverse Web API query overview ↗
Query results · Checked 2026-10-16
Post-cancellation access Disclosure
-
Disclosure only; does not reduce planned-exit credit.
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
The reviewed extraction documentation does not establish contractual retrieval rights after cancellation or license termination.
Dataverse OAuth authentication ↗
Dataverse OAuth authentication · Checked 2026-10-16
Planned migration fidelity 7.5/10
Portable structured records on documented routes; whole-product completeness unverified
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
Selected Sales records are portable; full solution assets and independent environment restore are unverified.
Dynamics Sales developer guide ↗
Dataverse scope · Checked 2026-10-16
Business logic and customization
5% of the overall score before applicability adjustment.
Scored answers and evidence
Logic authoring 2.5/10
External integration code; native business logic portability not established
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
External code can operate on authorized records; native workflow portability is not established here.
Dataverse OAuth authentication ↗
Custom application access · Checked 2026-10-16
Rights to custom logic -
-
Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded.
Ownership, reusable export and independent execution rights for native workflow artifacts remain unestablished.
Dataverse OAuth authentication ↗
Dataverse OAuth authentication · Checked 2026-10-16
Scores are out of 10. * Incomplete evidence discounts verified capabilities (unknown answers stay unknown). Planned migration drives data exit. Scoring method ↗
CUSTOMER CHOICE
Third-party accessibility
A customer authorizes an Entra application for Dataverse access. App-only authentication requires an application user and security roles; a token does not grant every Sales table.
Confirm who can connect, who owns the credentials and which uses are permitted. Customer consent and provider approval can be separate requirements; the selected plan and contract still matter.
READ / INTEGRATE
API and export routes
OData filters and opaque next links support standard-table extraction. Change tracking uses its own request contract; filters, orderby, expand and top cannot be combined with tracked change requests.
| Access route | Authentication | Credential owner | Provider approval | Access requirement | Last checked |
|---|---|---|---|---|---|
| Customer-authorized Dataverse application user | OAuth client credentials | Customer | No | customer authorization | 2026-10-16 |
Availability depends on your product, plan and agreement. See the documentation below for the requirements of each route.
ECONOMIC ACCESS
Cost, authentication and limits
Technical documentation does not establish the complete eligible Sales plan or fixed API charge. Dataverse request entitlements and capacity are separate from a generic claim that an API is included.
Check API entitlement, credential ownership and rate limits for the route you intend to use. Include review fees, customer-plan upgrades and ongoing access charges in the total.
ACT FROM OUTSIDE
External action
Web API supports record create, update and delete within role and table permissions. Use ETags and conditional updates where concurrent edits matter.
Validate the supported operation, acting identity and permission scope (read access does not imply write permission). Ambiguous retries and revoked credentials also affect whether an external workflow can run safely.
KEEP ACCESS USEFUL
Continuity
Eligible tables can return delta links and deleted-entity identities. The documented default expiry is seven days; an expired token requires a new baseline and cannot recover all old deletion history.
CDC, deletions and recovery
| Question | Answer / applicable route | Evidence |
|---|---|---|
| Can ongoing extraction identify updates and deleted records on the declared route? | Updates and deletion identities documented for the stated resourcesDynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. The tracked response identifies removed records as well as changed rows; table enablement and organization read permissions apply. | Dataverse change tracking and external synchronization ↗Deleted entities and required privilegesChecked 2026-10-16 |
| How can extraction recover after missed events or an interrupted consumer? | Replay/change queries within a documented retention windowDynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. Delta tokens expire after the configured window, seven days by default. Starting again retrieves current rows rather than all historical deletions. | Dataverse change tracking and external synchronization ↗ExpireChangeTrackingInDays and expired version stampsChecked 2026-10-16 |
Useful ongoing access includes corrections and deletions, not only the first export. A failed request, changed filter or lost resource permission should not be interpreted as a deleted record.
LEAVE WITH YOUR DATA
Data exit and portability
Customer clients can retain structured table records. That does not establish complete email files, solution packages, workflow ownership or an independently restorable Sales environment.
Test the output against the destination’s required fields and history. Check stable identifiers, relationships, attachments and extraction time; a sample file proves only the coverage of that sample.
BUILD / INSPECT / REUSE
Business logic and customization
External applications can use the declared Web API. Native Sales automation portability remains unresolved (record access alone does not transfer solution artifacts).
Custom API access, ownership of workflows and the right to export their definitions are separate questions. A custom-app capability alone does not establish that business rules can move to another system.
AGREEMENTS / API DOCS / PROGRAM REQUIREMENTS
Documented conditions
Answers below come from public provider materials. Every answer retains its source check date, scope (a partner agreement does not describe every customer route). Customer contracts and live behavior still need verification.
| Question | Answer / applicable route | Evidence |
|---|---|---|
| What structured read interface is documented? | Structured APIs across the declared product scopeDynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. Sales data resides in Dataverse tables accessible through the authorized Web API. | Dynamics Sales developer guide ↗Dataverse developer resourcesChecked 2026-10-16 |
| How can customers retrieve data in bulk? | Batched or iterable API requestsDynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. Standard-table pages can return up to 5,000 rows with opaque nextLink continuation. | Dataverse Web API paging ↗Page size and nextLinkChecked 2026-10-16 |
| What queries can a customer issue outside the provider UI? | Documented structured API filtersDynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. OData query options retrieve selected table records; tracked change requests have additional query restrictions. | Dataverse Web API query overview ↗Query optionsChecked 2026-10-16 |
| Who decides whether a chosen third party may connect? | Customer authorization without discretionary provider approvalDynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. Customer authorization and application-user roles govern the app route, without a provider-selected partner credential. | Dataverse OAuth authentication ↗Server-to-server authenticationChecked 2026-10-16 |
| What extra commercial condition applies to the routes supplying the assessed read capability, relative to the lowest paid plan? | -Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. The complete fixed access entitlement and API fees relative to the lowest paid plan are not established by the reviewed technical documentation. | Dataverse OAuth authentication ↗Dataverse OAuth authenticationChecked 2026-10-16 |
| What permission is needed for the documented downstream use? | -Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. Applicable downstream processing, redistribution and AI-use conditions remain unestablished for the declared route. | Dataverse OAuth authentication ↗Dataverse OAuth authenticationChecked 2026-10-16 |
| Which external write operations are documented? | Create and update across business domainsDynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. Web API documents record creation and update/delete for tables permitted by the caller’s roles. | Dataverse update and delete ↗PATCH and DELETEChecked 2026-10-16 Dataverse Web API create ↗Create a table row using POSTChecked 2026-10-16 |
| How can customers connect an application they build or choose? | Customer applications using fixed APIs without provider selectionDynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. Customer-authored applications use OAuth-authorized Web API calls. | Dataverse OAuth authentication ↗Authenticate custom applicationsChecked 2026-10-16 |
| What mechanism supports repeatable extraction of changes? | Documented updated-since filters or webhooksDynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. Explicitly enabled tables provide delta links for recurring change queries. | Dataverse change tracking and external synchronization ↗Retrieve changes using Web APIChecked 2026-10-16 |
| How are integration limits disclosed? | Published numeric quotas and recovery instructionsDynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. Published service-protection request, concurrency and execution-time limits include Retry-After recovery guidance. | Dataverse service protection limits ↗Service protection limits and retryChecked 2026-10-16 |
| Where can a usable data copy be delivered? | Customer-held structured files or API recordsDynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. Authorized clients receive structured records that can be stored outside Dataverse. | Dataverse Web API query overview ↗Query resultsChecked 2026-10-16 |
| What retrieval rights are documented at cancellation? | -Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. The reviewed extraction documentation does not establish contractual retrieval rights after cancellation or license termination. | Dataverse OAuth authentication ↗Dataverse OAuth authenticationChecked 2026-10-16 |
| How can customers define their own business logic? | External integration code; native business logic portability not establishedDynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. External code can operate on authorized records; native workflow portability is not established here. | Dataverse OAuth authentication ↗Custom application accessChecked 2026-10-16 |
| What rights or portability are documented for custom workflow artifacts? | -Dynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. Ownership, reusable export and independent execution rights for native workflow artifacts remain unestablished. | Dataverse OAuth authentication ↗Dataverse OAuth authenticationChecked 2026-10-16 |
| What usable data or native definitions can leave before cancellation? | Portable structured records on documented routes; whole-product completeness unverifiedDynamics 365 Sales standard Dataverse tables, customer-authorized Web API application and explicitly enabled table change tracking; elastic tables, Finance OData and complete Sales solution migration are excluded. Selected Sales records are portable; full solution assets and independent environment restore are unverified. | Dynamics Sales developer guide ↗Dataverse scopeChecked 2026-10-16 |
SOURCES / SCOPE / HISTORY
Sources and open questions
This review is based on the documentation below. Live account behavior and customer-specific agreements haven’t been tested.
Still to confirm
- Access cost barrier: The complete fixed access entitlement and API fees relative to the lowest paid plan are not established by the reviewed technical documentation.
- Downstream permission: Applicable downstream processing, redistribution and AI-use conditions remain unestablished for the declared route.
- Post-cancellation access: The reviewed extraction documentation does not establish contractual retrieval rights after cancellation or license termination.
- Rights to custom logic: Ownership, reusable export and independent execution rights for native workflow artifacts remain unestablished.
Documentation
Assessment checked 2026-10-16. Each answer retains its source and applicable route; the check date does not establish live account behavior.