Dynamics 365
Project Connectors/CRM/Dynamics365DataSource/. Dynamics365DataSource : WebAPIDataSource. Namespace TheTechIdea.Beep.Connectors.Dynamics365 (models in nested Models). DataSourceType.MicrosoftDynamics365, DatasourceCategory.Connector.
Dataverse / Web API
Entity keys map to v9.2-style paths in EntityEndpoints (accounts, contacts, leads, opportunities, incidents, …). The source uses a placeholder base URL pattern for documentation; configure your real org host under Connection below.
Source & IDataSource
Implementation: Connectors/CRM/Dynamics365DataSource/Dynamics365DataSource.cs — Dynamics365DataSource : WebAPIDataSource. Reads use GetEntityAsync(<entityKey>, filters); creates/updates use PostAsync/PatchAsync against the same logical keys.
Command methods (CommandAttribute)
Name | Method | Returns | ObjectType |
|---|---|---|---|
| GetAccounts | GetAccounts(List<AppFilter> filters = null) | Task<IEnumerable<Account>> | Account |
| GetContacts | GetContacts(List<AppFilter> filters = null) | Task<IEnumerable<Contact>> | Contact |
| GetLeads | GetLeads(List<AppFilter> filters = null) | Task<IEnumerable<Lead>> | Lead |
| GetOpportunities | GetOpportunities(List<AppFilter> filters = null) | Task<IEnumerable<Opportunity>> | Opportunity |
| GetSystemUsers | GetSystemUsers(List<AppFilter> filters = null) | Task<IEnumerable<SystemUser>> | SystemUser |
| GetBusinessUnits | GetBusinessUnits(List<AppFilter> filters = null) | Task<IEnumerable<BusinessUnit>> | BusinessUnit |
| GetTeams | GetTeams(List<AppFilter> filters = null) | Task<IEnumerable<Team>> | Team |
| GetIncidents | GetIncidents(List<AppFilter> filters = null) | Task<IEnumerable<Incident>> | Incident |
| GetProducts | GetProducts(List<AppFilter> filters = null) | Task<IEnumerable<Product>> | Product |
| CreateAccount | CreateAccountAsync(Account account) | Task<IEnumerable<Account>> | Account |
| UpdateAccount | UpdateAccountAsync(string accountId, Account account) | Task<IEnumerable<Account>> | Account |
| CreateContact | CreateContactAsync(Contact contact) | Task<IEnumerable<Contact>> | Contact |
| UpdateContact | UpdateContactAsync(string contactId, Contact contact) | Task<IEnumerable<Contact>> | Contact |
| CreateLead | CreateLeadAsync(Lead lead) | Task<IEnumerable<Lead>> | Lead |
| UpdateLead | UpdateLeadAsync(string leadId, Lead lead) | Task<IEnumerable<Lead>> | Lead |
| CreateOpportunity | CreateOpportunityAsync(Opportunity opportunity) | Task<IEnumerable<Opportunity>> | Opportunity |
| UpdateOpportunity | UpdateOpportunityAsync(string opportunityId, Opportunity opportunity) | Task<IEnumerable<Opportunity>> | Opportunity |
Model types
TheTechIdea.Beep.Connectors.Dynamics365.Models — table rows above map to DTOs Account, Contact, Lead, Opportunity, SystemUser, BusinessUnit, Team (Dataverse team), Incident, Product, and related metadata in the Dynamics 365 connector project.
Connection
Set your environment’s Dataverse Web API base URL and OAuth headers/tokens through WebAPIConnectionProperties (per your Azure AD app registration and delegated or application-permission flow).