Skip to main content

CustomApiAttribute

  • Namespace: PPDS.Plugins
  • Assembly: PPDS.Plugins
  • Kind: Class
  • Base: Attribute

Summary​

Defines Custom API registration configuration. Apply to plugin classes to specify how the Custom API should be registered in Dataverse. Only one Custom API can be defined per class.

Members​

Constructors​

CustomApiAttribute()​

CustomApiAttribute()

Initializes a new instance of the CustomApiAttribute class.

Properties​

AllowedProcessingStepType​

ApiProcessingStepType AllowedProcessingStepType { get; set; }

Gets or sets the type of processing steps allowed for this Custom API. Controls whether synchronous and/or asynchronous plug-in steps can be registered. Default: None.

BindingType​

ApiBindingType BindingType { get; set; }

Gets or sets the binding type that determines whether the API is global, entity-bound, or entity-collection-bound. Default: Global.

BoundEntity​

string BoundEntity { get; set; }

Gets or sets the logical name of the entity this API is bound to. Only applicable when BindingType is Entity or EntityCollection.

Description​

string Description { get; set; }

Gets or sets a description of what this Custom API does. Stored as metadata in Dataverse and displayed in the UI.

DisplayName​

string DisplayName { get; set; }

Gets or sets the display name of the Custom API shown in the Dataverse UI. Required.

ExecutePrivilegeName​

string ExecutePrivilegeName { get; set; }

Gets or sets the name of the privilege required to execute this Custom API. If specified, only users with this privilege can invoke the API.

IsFunction​

bool IsFunction { get; set; }

Gets or sets whether this Custom API is a function (returns a value without side effects) or an action (may have side effects). Default: false (action).

IsPrivate​

bool IsPrivate { get; set; }

Gets or sets whether this Custom API is private. Private APIs are not visible in the Web API $metadata document. Default: false.

Name​

string Name { get; set; }

Gets or sets the logical name of the Custom API. If not specified, the UniqueName is used.

UniqueName​

string UniqueName { get; set; }

Gets or sets the unique name of the Custom API. Must include a publisher prefix (e.g., "ppds_MyCustomApi"). Required.