in internal/services/azapi_resource_data_source.go [63:179]
func (r *AzapiResourceDataSource) Schema(ctx context.Context, request datasource.SchemaRequest, response *datasource.SchemaResponse) {
response.Schema = schema.Schema{
MarkdownDescription: "This resource can access any existing Azure resource manager resource.",
Attributes: map[string]schema.Attribute{
"id": schema.StringAttribute{
Computed: true,
MarkdownDescription: docstrings.ID(),
},
"type": schema.StringAttribute{
Required: true,
Validators: []validator.String{
myvalidator.StringIsResourceType(),
},
MarkdownDescription: docstrings.Type(),
},
"name": schema.StringAttribute{
Optional: true,
Computed: true,
Validators: []validator.String{
myvalidator.StringIsNotEmpty(),
},
MarkdownDescription: "Specifies the name of the Azure resource. Exactly one of the arguments `name` or `resource_id` must be set. It could be omitted if the `type` is `Microsoft.Resources/subscriptions`.",
},
"parent_id": schema.StringAttribute{
Optional: true,
Computed: true,
Validators: []validator.String{
myvalidator.StringIsResourceID(),
},
MarkdownDescription: docstrings.ParentID(),
},
"resource_id": schema.StringAttribute{
Optional: true,
Computed: true,
Validators: []validator.String{
myvalidator.StringIsResourceID(),
},
MarkdownDescription: "The ID of the Azure resource to retrieve. Exactly one of the arguments `name` or `resource_id` must be set. It could be omitted if the `type` is `Microsoft.Resources/subscriptions`.",
},
"location": schema.StringAttribute{
Computed: true,
MarkdownDescription: docstrings.Location(),
},
"identity": schema.ListNestedAttribute{
Computed: true,
NestedObject: schema.NestedAttributeObject{
Attributes: map[string]schema.Attribute{
"type": schema.StringAttribute{
Computed: true,
MarkdownDescription: docstrings.IdentityType(),
},
"principal_id": schema.StringAttribute{
Computed: true,
MarkdownDescription: docstrings.IdentityPrincipalID(),
},
"tenant_id": schema.StringAttribute{
Computed: true,
MarkdownDescription: docstrings.IdentityTenantID(),
},
"identity_ids": schema.ListAttribute{
Computed: true,
ElementType: types.StringType,
MarkdownDescription: docstrings.IdentityIds(),
},
},
},
},
"response_export_values": schema.DynamicAttribute{
Optional: true,
MarkdownDescription: docstrings.ResponseExportValues(),
},
"output": schema.DynamicAttribute{
Computed: true,
MarkdownDescription: docstrings.Output("data.azapi_resource"),
},
"tags": schema.MapAttribute{
Computed: true,
ElementType: types.StringType,
MarkdownDescription: "A mapping of tags which are assigned to the Azure resource.",
},
"retry": retry.RetrySchema(ctx),
"headers": schema.MapAttribute{
ElementType: types.StringType,
Optional: true,
MarkdownDescription: "A map of headers to include in the request",
},
"query_parameters": schema.MapAttribute{
ElementType: types.ListType{
ElemType: types.StringType,
},
Optional: true,
MarkdownDescription: "A map of query parameters to include in the request",
},
},
Blocks: map[string]schema.Block{
"timeouts": timeouts.Block(ctx, timeouts.Opts{
Read: true,
}),
},
}
}