What type of API does Microsoft Dynamics 365 Finance provide?
REST API
Microsoft Dynamics 365 Finance primarily uses REST APIs:
- The Data management framework's package API is a REST API that can be used for both cloud and on-premises deployments.
- Microsoft provides documentation on Dynamics 365 REST APIs.
SOAP API
While REST is the primary API type, SOAP is also supported in some cases:
- The recurring integrations API supports both SOAP and REST protocols.
Key Points to Consider
- The Data management framework's package API uses OAuth 2.0 for authorization.
- For on-premises deployments, Active Directory Federation Services (AD FS) is used for authorization.
- When choosing between the Data management framework's package API and the recurring integrations API, factors to consider include scheduling, format support, transformation capabilities, and service type.
Best Practices
- Use the Data management framework's package API for scenarios that require scheduling outside of finance and operations apps, support only data packages, and need external transformations.
- Use the recurring integrations API for scenarios that require scheduling within finance and operations apps, support both files and data packages, and need XSLT transformations for XML files.
In summary, while Microsoft Dynamics 365 Finance primarily uses REST APIs, it also supports SOAP in certain scenarios. The choice between different API types and specific APIs depends on the particular integration requirements and use case.
Does the Microsoft Dynamics 365 Finance API have webhooks?
Availability of Webhooks
The search results do not specifically mention webhooks for Microsoft Dynamics 365 Finance API. However, they do provide information about webhooks in other Dynamics 365 products:
- Dynamics 365 for Customer Engagement apps (version 9.0 and later) supports webhooks.
- Dynamics 365 Business Central supports webhooks.
Types of Events
While the search results don't specify events for Dynamics 365 Finance, they do mention some event types for other Dynamics 365 products:
- For Dynamics 365 Customer Engagement, webhooks can be triggered by various entity events, such as creating or updating records.
- In Dynamics 365 Business Central, you can subscribe to changes in supported entities.
Key Considerations
-
Authentication: Webhooks in Dynamics 365 support different authentication options, including HTTP headers, webhook keys, and query string parameters.
-
Registration: Webhook subscriptions typically need to be registered using specific tools or APIs.
-
Supported Entities: Each Dynamics 365 product has its own set of supported entities for webhooks.
-
Configuration: Some Dynamics 365 products allow configuration of webhook behavior, such as expiration times and maximum number of subscriptions.
Summary
While the search results don't provide specific information about webhooks in Microsoft Dynamics 365 Finance API, they do indicate that webhooks are supported in other Dynamics 365 products. To get accurate information about webhooks in Dynamics 365 Finance, you may need to consult the official Microsoft documentation for that specific product or reach out to Microsoft support.
Rate Limits and other limitations
Here are the key points about the API Rate Limits for Microsoft Dynamics 365 Finance API:
Resource-based service protection API limits
- Resource-based API limits are enabled in Dynamics 365 Finance and Operations environments as of version 10.0.19.
- These limits are based on environment resource utilization thresholds like memory and CPU usage on web servers.
- Requests are throttled with a "Too Many Requests" response if resource utilization exceeds defined thresholds.
User-based service protection API limits
- User-based limits were planned but will no longer be implemented as of March 31, 2023.
- They are currently optional and can be enabled/disabled via Feature Management.
- In version 10.0.36, the option to enable these limits will be removed entirely.
Key limits (when enabled)
- Number of requests: 6,000 within a 5-minute sliding window
- Execution time: 20 minutes total within a 5-minute sliding window
- Concurrent requests: 52
Other important points
- Limits are enforced per user, per application ID, per web server.
- Certain services like Document Routing Agent, Warehouse Management mobile app, etc. are exempt from these limits.
- Resource-based limits work together with user-based limits to protect system performance.
- Limits may vary between environments and are subject to change.
Best practices
- Consider reducing the number of records that can be selected in list views.
- Use batch operations to combine multiple operations and avoid hitting request limits.
- Monitor API usage to stay within limits using available web resources.
In summary, while user-based limits are being phased out, resource-based API limits remain in place to protect Dynamics 365 Finance and Operations environments from excessive API usage that could impact performance and availability. Developers should be aware of these limits and design their integrations accordingly.
Latest API Version
Based on the search results, here is the most up-to-date information about the Microsoft Dynamics 365 Finance API:
The most recent version of Microsoft Dynamics 365 Finance is version 10.0.41, which has a build number of 10.0.2015.16 and is scheduled for auto-update availability in September 2024 [3].
Key points to consider:
-
The current latest generally available version is 10.0.39, which became auto-updated in April 2024 [1].
-
Version 10.0.40 is scheduled for general availability (auto-update) in June 2024 [2].
-
Microsoft regularly releases updates for Dynamics 365 Finance, with new versions typically coming out every few months [3].
-
The API documentation for Dynamics 365 Finance and Operations can be found on the official Microsoft documentation site [4].
API Documentation
For developers looking to work with the Dynamics 365 Finance API, the following resources are available:
-
The main documentation page for Dynamics 365 Finance and Operations services can be found at: https://docs.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/data-entities/services-home-page
-
Specific API documentation for data management can be found at: https://docs.microsoft.com/en-us/dynamics365/unified-operations/dev-itpro/data-entities/data-management-api
-
The general documentation for Dynamics 365 Finance and Operations is available at: https://docs.microsoft.com/en-us/dynamics365/fin-and-ops
Best practices
-
Always refer to the most recent documentation when working with the API, as features and endpoints may change with new releases.
-
Keep track of the release schedule and update notes to stay informed about new features and changes that might affect your integrations.
-
If you find any discrepancies or have suggestions for the documentation, you can contribute to improving it through the GitHub repository: https://github.com/MicrosoftDocs/dynamics-365-unified-operations-public
-
When developing integrations, consider using the Data Integration feature, which allows for synchronization of data across different Dynamics 365 applications.
By staying up-to-date with the latest versions and documentation, developers can ensure they are leveraging the most current features and best practices when working with the Microsoft Dynamics 365 Finance API.
How to get a Microsoft Dynamics 365 Finance developer account and API Keys?
Here are the key steps to get a developer account for Microsoft Dynamics 365 Finance to create an API integration:
- Sign up for a Dynamics 365 Finance trial:
- Go to the Dynamics 365 website and sign up for a free trial of Dynamics 365 Finance.
- This will provide you with a tenant and environment to develop and test your integration.
- Set up authentication:
- For production use, you should use Microsoft Entra ID (formerly Azure AD) OAuth 2.0 authentication.
- Register your application in the Azure portal to get the necessary client ID and secret.
- Explore the available APIs:
- Dynamics 365 Finance uses OData APIs for integration.
- Review the OData service endpoints and entities available for the integration you want to build.
- Set up a developer environment:
- Use the trial environment or set up a dedicated developer instance.
- Ensure you have the necessary permissions and security roles assigned to your account.
- Start developing your integration:
- Use the OData APIs to create, read, update and delete data in Dynamics 365 Finance.
- Implement proper authentication and follow best practices for API usage.
What can you do with the Microsoft Dynamics 365 Finance API?
Based on the provided search results, here is a summary of the data models you can interact with using the Microsoft Dynamics 365 Finance API, along with what is possible for each data model:
Accounts Receivable
- Customer definitions entity
- Create, read, update, and delete customer information
- Customer details V2 entity
- Access and modify detailed customer information
- Customers V3 entity
- Manage customer data with the latest version
- Sales order headers V2
- Create and manage sales order header information
- Sales order lines V2
- Handle sales order line items
Accounts Payable
- Vendor invoice header entity
- Create and manage vendor invoice headers
- Vendor invoice line entity
- Handle vendor invoice line items
- Vendor invoice charges entity
- Manage additional charges on vendor invoices
- Vendor invoice line charges entity
- Handle charges specific to invoice lines
- Vendor invoice document attachment V2 entity
- Attach and manage documents related to vendor invoices
Product Information Management
- Products V2 entity
- Create, read, update, and delete product information
- Released products V2 entity
- Manage products that have been released for sale
Data Entities
- Support various scenarios such as data migration, integration, and configuration
- Can be exposed as OData services for synchronous integration and Microsoft Office integrations
- Allow import/export operations and programmability
- Used for exporting and importing data packages for Application Lifecycle Management (ALM) and demo data scenarios
Integration Capabilities
- OData: Perform CRUD operations on data entities through RESTful web services
- Custom Services: Create and expose custom web services using X++ (SOAP, REST, and JSON formats)
- Data Management Framework REST Package API: Handle large-volume integrations using data packages
- Recurring Data Management Integration REST API: Schedule recurring integrations of files and packages
- Electronic Reporting: Configure formats for electronic documents according to legal requirements
- Business Events: Receive notifications from finance and operations apps in external systems
Virtual Tables
- Connect Dataverse to finance and operations app entities
- Provide full CRUD capabilities on entities
- Access data securely and consistently as if it were native to Dataverse
Power Platform Integration
- Embedded Power Apps: Augment functionality and user interface with data from other sources
- Embedded Power BI: Enhance user interface with graphics and visuals from any source
By leveraging these data models and integration capabilities, you can interact with a wide range of business data and processes within Microsoft Dynamics 365 Finance, enabling comprehensive management of financial operations, customer and vendor relationships, product information, and more.