1. Packages
  2. Packages
  3. Power Platform
  4. API Docs
  5. DataRecord
Viewing docs for Power Platform v0.3.3
published on Monday, May 18, 2026 by rpothin
powerplatform logo
Viewing docs for Power Platform v0.3.3
published on Monday, May 18, 2026 by rpothin

    Manages a generic Dataverse table record via the OData Web API. Supports scalar columns, single-valued lookups (via @odata.bind), and many-to-many relationships (via $ref). Both environmentId and tableLogicalName are immutable — any change triggers resource replacement. Column values may be scalars (string/number/bool), lookup objects (DataRecordLookup), or lists of lookup objects for M2M relationships.

    Create DataRecord Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new DataRecord(name: string, args: DataRecordArgs, opts?: CustomResourceOptions);
    @overload
    def DataRecord(resource_name: str,
                   args: DataRecordArgs,
                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def DataRecord(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   environment_id: Optional[str] = None,
                   table_logical_name: Optional[str] = None,
                   columns: Optional[Mapping[str, Any]] = None,
                   disable_on_destroy: Optional[bool] = None)
    func NewDataRecord(ctx *Context, name string, args DataRecordArgs, opts ...ResourceOption) (*DataRecord, error)
    public DataRecord(string name, DataRecordArgs args, CustomResourceOptions? opts = null)
    public DataRecord(String name, DataRecordArgs args)
    public DataRecord(String name, DataRecordArgs args, CustomResourceOptions options)
    
    type: powerplatform:DataRecord
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "powerplatform_datarecord" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args DataRecordArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args DataRecordArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args DataRecordArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args DataRecordArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args DataRecordArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var dataRecordResource = new Powerplatform.DataRecord("dataRecordResource", new()
    {
        EnvironmentId = "string",
        TableLogicalName = "string",
        Columns = 
        {
            { "string", "any" },
        },
        DisableOnDestroy = false,
    });
    
    example, err := powerplatform.NewDataRecord(ctx, "dataRecordResource", &powerplatform.DataRecordArgs{
    	EnvironmentId:    pulumi.String("string"),
    	TableLogicalName: pulumi.String("string"),
    	Columns: pulumi.Map{
    		"string": pulumi.Any("any"),
    	},
    	DisableOnDestroy: pulumi.Bool(false),
    })
    
    resource "powerplatform_datarecord" "dataRecordResource" {
      environment_id     = "string"
      table_logical_name = "string"
      columns = {
        "string" = "any"
      }
      disable_on_destroy = false
    }
    
    var dataRecordResource = new DataRecord("dataRecordResource", DataRecordArgs.builder()
        .environmentId("string")
        .tableLogicalName("string")
        .columns(Map.of("string", "any"))
        .disableOnDestroy(false)
        .build());
    
    data_record_resource = powerplatform.DataRecord("dataRecordResource",
        environment_id="string",
        table_logical_name="string",
        columns={
            "string": "any",
        },
        disable_on_destroy=False)
    
    const dataRecordResource = new powerplatform.DataRecord("dataRecordResource", {
        environmentId: "string",
        tableLogicalName: "string",
        columns: {
            string: "any",
        },
        disableOnDestroy: false,
    });
    
    type: powerplatform:DataRecord
    properties:
        columns:
            string: any
        disableOnDestroy: false
        environmentId: string
        tableLogicalName: string
    

    DataRecord Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The DataRecord resource accepts the following input properties:

    EnvironmentId string
    The GUID of the Power Platform environment containing the Dataverse instance. Immutable after creation.
    TableLogicalName string
    The logical name of the Dataverse table (e.g. deploymentpipeline, account). Immutable after creation.
    Columns Dictionary<string, object>
    Map of column logical name to value. Scalars (string/number/bool), null, DataRecordLookup objects, or lists of DataRecordLookup objects for M2M relationships.
    DisableOnDestroy bool
    When true, deactivate the record (statecode=1) before deleting it. Required for Dataverse tables that cannot be directly deleted while active (e.g. workflow definitions). Defaults to false.
    EnvironmentId string
    The GUID of the Power Platform environment containing the Dataverse instance. Immutable after creation.
    TableLogicalName string
    The logical name of the Dataverse table (e.g. deploymentpipeline, account). Immutable after creation.
    Columns map[string]interface{}
    Map of column logical name to value. Scalars (string/number/bool), null, DataRecordLookup objects, or lists of DataRecordLookup objects for M2M relationships.
    DisableOnDestroy bool
    When true, deactivate the record (statecode=1) before deleting it. Required for Dataverse tables that cannot be directly deleted while active (e.g. workflow definitions). Defaults to false.
    environment_id string
    The GUID of the Power Platform environment containing the Dataverse instance. Immutable after creation.
    table_logical_name string
    The logical name of the Dataverse table (e.g. deploymentpipeline, account). Immutable after creation.
    columns map(any)
    Map of column logical name to value. Scalars (string/number/bool), null, DataRecordLookup objects, or lists of DataRecordLookup objects for M2M relationships.
    disable_on_destroy bool
    When true, deactivate the record (statecode=1) before deleting it. Required for Dataverse tables that cannot be directly deleted while active (e.g. workflow definitions). Defaults to false.
    environmentId String
    The GUID of the Power Platform environment containing the Dataverse instance. Immutable after creation.
    tableLogicalName String
    The logical name of the Dataverse table (e.g. deploymentpipeline, account). Immutable after creation.
    columns Map<String,Object>
    Map of column logical name to value. Scalars (string/number/bool), null, DataRecordLookup objects, or lists of DataRecordLookup objects for M2M relationships.
    disableOnDestroy Boolean
    When true, deactivate the record (statecode=1) before deleting it. Required for Dataverse tables that cannot be directly deleted while active (e.g. workflow definitions). Defaults to false.
    environmentId string
    The GUID of the Power Platform environment containing the Dataverse instance. Immutable after creation.
    tableLogicalName string
    The logical name of the Dataverse table (e.g. deploymentpipeline, account). Immutable after creation.
    columns {[key: string]: any}
    Map of column logical name to value. Scalars (string/number/bool), null, DataRecordLookup objects, or lists of DataRecordLookup objects for M2M relationships.
    disableOnDestroy boolean
    When true, deactivate the record (statecode=1) before deleting it. Required for Dataverse tables that cannot be directly deleted while active (e.g. workflow definitions). Defaults to false.
    environment_id str
    The GUID of the Power Platform environment containing the Dataverse instance. Immutable after creation.
    table_logical_name str
    The logical name of the Dataverse table (e.g. deploymentpipeline, account). Immutable after creation.
    columns Mapping[str, Any]
    Map of column logical name to value. Scalars (string/number/bool), null, DataRecordLookup objects, or lists of DataRecordLookup objects for M2M relationships.
    disable_on_destroy bool
    When true, deactivate the record (statecode=1) before deleting it. Required for Dataverse tables that cannot be directly deleted while active (e.g. workflow definitions). Defaults to false.
    environmentId String
    The GUID of the Power Platform environment containing the Dataverse instance. Immutable after creation.
    tableLogicalName String
    The logical name of the Dataverse table (e.g. deploymentpipeline, account). Immutable after creation.
    columns Map<Any>
    Map of column logical name to value. Scalars (string/number/bool), null, DataRecordLookup objects, or lists of DataRecordLookup objects for M2M relationships.
    disableOnDestroy Boolean
    When true, deactivate the record (statecode=1) before deleting it. Required for Dataverse tables that cannot be directly deleted while active (e.g. workflow definitions). Defaults to false.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the DataRecord resource produces the following output properties:

    DataRecordId string
    The GUID of the Dataverse record. Use this to reference the record in lookup or M2M column values of other DataRecord resources.
    Id string
    The provider-assigned unique ID for this managed resource.
    DataRecordId string
    The GUID of the Dataverse record. Use this to reference the record in lookup or M2M column values of other DataRecord resources.
    Id string
    The provider-assigned unique ID for this managed resource.
    data_record_id string
    The GUID of the Dataverse record. Use this to reference the record in lookup or M2M column values of other DataRecord resources.
    id string
    The provider-assigned unique ID for this managed resource.
    dataRecordId String
    The GUID of the Dataverse record. Use this to reference the record in lookup or M2M column values of other DataRecord resources.
    id String
    The provider-assigned unique ID for this managed resource.
    dataRecordId string
    The GUID of the Dataverse record. Use this to reference the record in lookup or M2M column values of other DataRecord resources.
    id string
    The provider-assigned unique ID for this managed resource.
    data_record_id str
    The GUID of the Dataverse record. Use this to reference the record in lookup or M2M column values of other DataRecord resources.
    id str
    The provider-assigned unique ID for this managed resource.
    dataRecordId String
    The GUID of the Dataverse record. Use this to reference the record in lookup or M2M column values of other DataRecord resources.
    id String
    The provider-assigned unique ID for this managed resource.

    Package Details

    Repository
    powerplatform rpothin/pulumi-powerplatform
    License
    MIT
    powerplatform logo
    Viewing docs for Power Platform v0.3.3
    published on Monday, May 18, 2026 by rpothin

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial