Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Note
A criação de uma API com código é um assunto avançado que pressupõe que você leu e entendeu estes artigos:
- Criar e usar APIs personalizadas
- Criar uma API personalizada usando a ferramenta de registro de plug-in
Você também deve entender como criar registros Microsoft Dataverse, usando a API Web ou o SDK para .NET. Para obter mais informações, consulte:
Como os dados de API personalizados são salvos em tabelas, você pode criar programaticamente novas APIs usando a API Web ou o SDK para .NET.
As tabelas em Custom API tables descrevem todas as propriedades que você pode definir usando código.
Esse código usa o CrmServiceClient com um estilo de programação de vinculação antecipada. Também é possível usar ServiceClient. Mais informações:
- Usar os construtores CrmServiceClient para se conectar ao Dataverse
- Programação com vinculação tardia e vinculação antecipada usando o SDK para .NET
- Criar entidades usando o SDK para .NET
Este exemplo mostra a criação de uma ação de API personalizada com um parâmetro de solicitação e uma propriedade de resposta em uma única operação. Mais informações: Criar entidades relacionadas em uma operação
Essa API personalizada é criada como parte de uma solução com o nome CustomAPIExample exclusivo e está associada a um tipo de plug-in com ID = 00000000-0000-0000-0000-000000000001.
string conn = $@"
Url = {url};
AuthType = OAuth;
UserName = {userName};
Password = {password};
AppId = 51f81489-12ee-4a9e-aaae-a2591f45987d;
RedirectUri = app://58145B91-0C36-4500-8554-080854F2AC97;
LoginPrompt=Auto;
RequireNewInstance = True";
//var service = new ServiceClient(conn);
var service = new CrmServiceClient(conn);
// var service = new ServiceClient(conn);
//The plug-in type
var pluginType = new EntityReference("plugintype", new Guid("00000000-0000-0000-0000-000000000001"));
var solutionUniqueName = "CustomAPIExample";
//The custom API
var customAPI = new CustomAPI
{
AllowedCustomProcessingStepType = new OptionSetValue(0),//None
BindingType = new OptionSetValue(0), //Global
Description = "A simple example of a custom API",
DisplayName = "Custom API Example",
ExecutePrivilegeName = null,
IsFunction = false,
IsPrivate = false,
Name = "sample_CustomAPIExample",
PluginTypeId = pluginType,
UniqueName = "sample_CustomAPIExample",
IsCustomizable = new BooleanManagedProperty(false),
customapi_customapirequestparameter = new List<CustomAPIRequestParameter>()
{
new CustomAPIRequestParameter {
Description = "The StringParameter request parameter for custom API Example",
DisplayName = "Custom API Example String Parameter",
LogicalEntityName = null,
IsOptional = false,
Name = "sample_CustomAPIExample.StringParameter",
Type = new OptionSetValue(10), //String
UniqueName = "StringParameter",
IsCustomizable = new BooleanManagedProperty(false)
}
},
customapi_customapiresponseproperty = new List<CustomAPIResponseProperty>()
{
new CustomAPIResponseProperty {
Description = "The StringProperty response property for custom API Example",
DisplayName = "Custom API Example String Property",
Name = "sample_CustomAPIExample.StringProperty",
Type = new OptionSetValue(10), //String
UniqueName = "StringProperty",
IsCustomizable = new BooleanManagedProperty(false)
}
}
};
var createReq = new CreateRequest
{
Target = customAPI
};
createReq["SolutionUniqueName"] = solutionUniqueName;
Guid customAPIId = ((CreateResponse)service.Execute(createReq)).id;
Consulte também
Criar e usar APIs personalizadas
Tabelas de API personalizadas
Criar uma API personalizada usando a ferramenta de registro de plug-in
Criar uma API personalizada no Power Apps
Criar uma API personalizada com arquivos de solução