Skip to content

Commit 59e1c27

Browse files
committed
acrolinx
1 parent a23eda3 commit 59e1c27

File tree

1 file changed

+11
-11
lines changed

1 file changed

+11
-11
lines changed

powerapps-docs/developer/data-platform/custom-api.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: "Create and use custom APIs (Microsoft Dataverse) | Microsoft Docs" # Intent and product brand in a unique string of 43-59 chars including spaces
3-
description: "custom API is a code-first way to define custom messages for Microsoft Dataverse" # 115-145 characters including spaces. This abstract displays in the search result.
3+
description: "Custom API is a code-first way to define custom messages for Microsoft Dataverse" # 115-145 characters including spaces. This abstract displays in the search result.
44
author: divkamath
55
ms.author: dikamath
66
ms.date: 02/14/2024
@@ -25,7 +25,7 @@ Custom APIs are an alternative to custom process actions. Custom process actions
2525

2626
A custom API can include logic implemented with a plug-in. Using [Microsoft Dataverse business events](business-events.md), you can create a custom API without a plug-in to pass data about an event that other subscribers respond to.
2727

28-
However, in other cases you'll combine a custom API with a plug-in to define some operation that is delegated to Dataverse to compute and return the result.
28+
However, in other cases you combine a custom API with a plug-in to define some operation that is delegated to Dataverse to compute and return the result.
2929

3030
There are several different ways to create a custom API:
3131

@@ -65,20 +65,20 @@ More information [Managed properties](/power-platform/alm/managed-properties-alm
6565

6666
### Add more request parameters and response properties
6767

68-
Even when you have set the **Is Customizable** managed property to these components to `false`, new request parameters and response properties can be added to your custom API. However, these request parameters can't be made required. If you choose to allow custom processing steps on your custom API, other plug-ins registered for the message created by your custom API can use them. Because custom request parameters can only be optional, the plug-in you provide for the main operation of the custom API can ignore them and isn't responsible for using any custom request parameters or setting any custom response properties.
68+
Even when you set the **Is Customizable** managed property to these components to `false`, new request parameters and response properties can be added to your custom API. However, these request parameters can't be made required. If you choose to allow custom processing steps on your custom API, other plug-ins registered for the message created by your custom API can use them. Because custom request parameters can only be optional, the plug-in you provide for the main operation of the custom API can ignore them and isn't responsible for using any custom request parameters or setting any custom response properties.
6969

7070
## Custom API tables/entities
7171

72-
See [CustomAPI tables](custom-api-tables.md) for information about the tables and column values to use when creating Custom APIs.
72+
See [CustomAPI tables](custom-api-tables.md) for information about the tables and column values to use when creating custom APIs.
7373

7474

75-
## Select a Custom Processing Step Type
75+
## Select a custom processing step type
7676

7777
The following table describes which custom API **Custom Processing Step Type** (`AllowedCustomProcessingStepType`) you should use.
7878

7979
|Option |When to use |
8080
|---------|---------|
81-
|**None**|When the plug-in set for this custom API using [CustomAPI.PluginTypeId](reference/entities/customapi.md#BKMK_PluginTypeId) is the only logic that occurs when this operation executes.<br/>You won't allow another developer to register any more steps that can trigger other logic, modify the behavior of this operation, or cancel the operation.<br/>Use this option when the custom API provides some capability that shouldn't be customizable.|
81+
|**None**|When the plug-in set for this custom API using [CustomAPI.PluginTypeId](reference/entities/customapi.md#BKMK_PluginTypeId) is the only logic that occurs when this operation executes.<br/>You don't allow other developers to register any more steps that can trigger other logic, modify the behavior of this operation, or cancel the operation.<br/>Use this option when the custom API provides some capability that shouldn't be customizable.|
8282
|**Async Only**|When you want to allow other developers to detect when this operation occurs, but you don't want them to be able to cancel the operation or customize the behavior of the operation.<br/> Other developers can register asynchronous steps to detect that this operation occurred and respond to it after it has completed.<br/>This option is recommended if you're using the business events pattern. A business event creates a trigger in Power Automate to you can use when this event occurs. More information: [Microsoft Dataverse business events](business-events.md)|
8383
|**Sync and Async**|When you want to allow other developers to have the ability to change the behavior of the operation, and even cancel it if their business logic dictates.<br/>If the operation succeeds, other developers can also detect this event and add logic to run asynchronously.<br/>Most Dataverse messages enable extension in this manner. Use this option when your message represents a business process that should be customizable.|
8484

@@ -469,7 +469,7 @@ More information:
469469

470470
## Known issues with custom APIs
471471

472-
Custom API is now generally available, but there are still some related capabilities that we expect to change.
472+
Custom APIs are now generally available, but there are still some related capabilities that we expect to change.
473473

474474
### Not able to use profiler for debugging
475475

@@ -481,13 +481,13 @@ To debug using the Plug-in Registration tool and the Plug-in profiler solution,
481481

482482
If you define your custom API to be private, you can't use that message in a plug-in. More information: [Private Messages](org-service/use-messages.md#private-messages)
483483

484-
### Secure and Unsecure Configuration cannot be set for the Custom API Main Operation plug-in
484+
### Secure and unsecure configuration can't be set for the custom API main operation plug-in
485485

486-
You cannot pass [Secure and Unsecure Configuration](write-plug-in.md#pass-configuration-data-to-your-plug-in) in to the Main operation Plugin for the CustomAPI.
486+
You can't pass [secure or unsecure configuration](write-plug-in.md#pass-configuration-data-to-your-plug-in) in to the main operation Plugin for the custom API.
487487

488-
**Workaround**: Rather than associate the plug-in with the Custom API, register the plug-in on the `PostOperation` stage using the Plug-in Registration tool (PRT). This way, you can [specify configuration data in the `PostOperation` plug-in step as you usually do](register-plug-in.md#set-configuration-data).
488+
**Workaround**: Rather than associate the plug-in with the custom API, register the plug-in on the `PostOperation` stage using the Plug-in Registration tool (PRT). This way, you can [specify configuration data in the `PostOperation` plug-in step as you usually do](register-plug-in.md#set-configuration-data).
489489

490-
For this to work, you must configure your Custom API to enable **Sync and Async** [custom processing step types](#select-a-custom-processing-step-type) when you create the custom api. You can't change this after you create it.
490+
To use this workaround, you must configure your custom API to enable **Sync and Async** [custom processing step types](#select-a-custom-processing-step-type) when you create the custom api. You can't change this after you create it.
491491

492492
### Next Steps
493493

0 commit comments

Comments
 (0)